[MLton-commit] r4439

Matthew Fluet MLton@mlton.org
Tue, 2 May 2006 20:04:16 -0700


Use the .tgz files from smlnj.org as the base for SML/NJ libaries.


----------------------------------------------------------------------

U   mlton/trunk/lib/ckit-lib/ckit.patch
U   mlton/trunk/lib/ckit-lib/ckit.tgz
U   mlton/trunk/lib/mlrisc-lib/MLRISC.patch
U   mlton/trunk/lib/mlrisc-lib/MLRISC.tgz
U   mlton/trunk/lib/smlnj-lib/smlnj-lib.patch
U   mlton/trunk/lib/smlnj-lib/smlnj-lib.tgz

----------------------------------------------------------------------

Modified: mlton/trunk/lib/ckit-lib/ckit.patch
===================================================================
--- mlton/trunk/lib/ckit-lib/ckit.patch	2006-05-03 02:58:44 UTC (rev 4438)
+++ mlton/trunk/lib/ckit-lib/ckit.patch	2006-05-03 03:03:50 UTC (rev 4439)
@@ -1,11 +1,11 @@
 diff -Naur ckit/ckit-lib.mlb ckit-mlton/ckit-lib.mlb
 --- ckit/ckit-lib.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ ckit-mlton/ckit-lib.mlb	2005-08-18 09:31:14.000000000 -0400
++++ ckit-mlton/ckit-lib.mlb	2006-05-02 22:38:21.000000000 -0400
 @@ -0,0 +1 @@
 +src/ckit-lib.mlb
 diff -Naur ckit/README.mlton ckit-mlton/README.mlton
 --- ckit/README.mlton	1969-12-31 19:00:00.000000000 -0500
-+++ ckit-mlton/README.mlton	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/README.mlton	2006-05-02 22:38:21.000000000 -0400
 @@ -0,0 +1,13 @@
 +The following changes were made to the ckit Library, in addition to
 +deriving the {{{.mlb}}} file from the {{{.cm}}} files:
@@ -22,7 +22,7 @@
 + * {{{ast/build-ast.sml}}} (modified): Rewrote use of ''or-patterns''.
 diff -Naur ckit/src/ast/ast-sig.sml ckit-mlton/src/ast/ast-sig.sml
 --- ckit/src/ast/ast-sig.sml	2001-10-31 15:22:41.000000000 -0500
-+++ ckit-mlton/src/ast/ast-sig.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/ast-sig.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -67,7 +67,12 @@
    datatype declaration
      = TypeDecl of {shadow: {strct:bool} option, tid:tid}
@@ -99,7 +99,7 @@
       location : SourceMap.location,
 diff -Naur ckit/src/ast/build-ast.sml ckit-mlton/src/ast/build-ast.sml
 --- ckit/src/ast/build-ast.sml	2003-08-28 17:58:39.000000000 -0400
-+++ ckit-mlton/src/ast/build-ast.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/build-ast.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -290,7 +290,8 @@
  	of SOME{ntype=NONE,...} => true
  	 | _ => false
@@ -225,7 +225,7 @@
  					       else if repeated_declarations_ok
 diff -Naur ckit/src/ast/initializer-normalizer.sml ckit-mlton/src/ast/initializer-normalizer.sml
 --- ckit/src/ast/initializer-normalizer.sml	2003-08-28 17:58:39.000000000 -0400
-+++ ckit-mlton/src/ast/initializer-normalizer.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/initializer-normalizer.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -156,7 +156,13 @@
  		   feed (unionNorm (ctype, fields), inits)
  		| SOME _ => fail "Incomplete type for union ref"
@@ -243,7 +243,7 @@
  	 | Ast.Ellipses => fail "Cannot initialize ellipses"
 diff -Naur ckit/src/ast/pp/pp-ast-adornment-sig.sml ckit-mlton/src/ast/pp/pp-ast-adornment-sig.sml
 --- ckit/src/ast/pp/pp-ast-adornment-sig.sml	2000-04-05 14:34:56.000000000 -0400
-+++ ckit-mlton/src/ast/pp/pp-ast-adornment-sig.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/pp/pp-ast-adornment-sig.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -1,14 +1,14 @@
  (* Copyright (c) 1998 by Lucent Technologies *)
  
@@ -264,7 +264,7 @@
 +(* end *)
 diff -Naur ckit/src/ast/pp/pp-ast-ext-sig.sml ckit-mlton/src/ast/pp/pp-ast-ext-sig.sml
 --- ckit/src/ast/pp/pp-ast-ext-sig.sml	2000-04-05 14:34:56.000000000 -0400
-+++ ckit-mlton/src/ast/pp/pp-ast-ext-sig.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/pp/pp-ast-ext-sig.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -1,13 +1,13 @@
  (* Copyright (c) 1998 by Lucent Technologies *)
  
@@ -289,7 +289,7 @@
 +(* end *)
 diff -Naur ckit/src/ast/pp/pp-lib.sml ckit-mlton/src/ast/pp/pp-lib.sml
 --- ckit/src/ast/pp/pp-lib.sml	2000-04-05 14:34:57.000000000 -0400
-+++ ckit-mlton/src/ast/pp/pp-lib.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/pp/pp-lib.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -115,7 +115,10 @@
  
    fun ppId pps ({name,uid,kind,stClass,global,...}: Ast.id) = 
@@ -304,7 +304,7 @@
  	 | _ => ppSymbol pps (name,uid)
 diff -Naur ckit/src/ast/sizeof.sml ckit-mlton/src/ast/sizeof.sml
 --- ckit/src/ast/sizeof.sml	2000-04-05 14:34:55.000000000 -0400
-+++ ckit-mlton/src/ast/sizeof.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/sizeof.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -321,7 +321,9 @@
    and process (sizesErrWarnBug as {sizes, err, warn, bug}) tidtab ty =
        case ty
@@ -318,7 +318,7 @@
  	     let val {bits,align} = #int sizes
 diff -Naur ckit/src/ast/type-util-sig.sml ckit-mlton/src/ast/type-util-sig.sml
 --- ckit/src/ast/type-util-sig.sml	2001-10-31 15:22:41.000000000 -0500
-+++ ckit-mlton/src/ast/type-util-sig.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/type-util-sig.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -1,10 +1,10 @@
  (* Copyright (c) 1998 by Lucent Technologies *)
  
@@ -340,7 +340,7 @@
 +(* end (* local *) *)
 diff -Naur ckit/src/ast/type-util.sml ckit-mlton/src/ast/type-util.sml
 --- ckit/src/ast/type-util.sml	2001-10-31 15:22:41.000000000 -0500
-+++ ckit-mlton/src/ast/type-util.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/ast/type-util.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -282,7 +282,8 @@
    fun isStructOrUnion tidtab ty =
      case reduceTypedef tidtab ty
@@ -393,7 +393,7 @@
  				  )
 diff -Naur ckit/src/ckit-lib.mlb ckit-mlton/src/ckit-lib.mlb
 --- ckit/src/ckit-lib.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ ckit-mlton/src/ckit-lib.mlb	2005-11-21 11:29:39.000000000 -0500
++++ ckit-mlton/src/ckit-lib.mlb	2006-05-02 23:00:54.000000000 -0400
 @@ -0,0 +1,876 @@
 +
 +ann
@@ -1271,120 +1271,18541 @@
 +end
 +
 +end
+diff -Naur ckit/src/parser/grammar/c.grm.desc ckit-mlton/src/parser/grammar/c.grm.desc
+--- ckit/src/parser/grammar/c.grm.desc	1969-12-31 19:00:00.000000000 -0500
++++ ckit-mlton/src/parser/grammar/c.grm.desc	2006-05-02 23:00:53.000000000 -0400
+@@ -0,0 +1,10001 @@
++1 shift/reduce conflict
++
++error:  state 404: shift/reduce conflict (shift ELSE, reduce by rule 18)
++
++state 0:
++
++	translationUnit : . tu 
++
++
++	translationUnit	goto 420
++	tu	goto 1
++
++	.	reduce by rule 1
++
++
++state 1:
++
++	translationUnit : tu .  (reduce by rule 0)
++	tu : tu . externalDeclaration 
++
++	SEMICOLON	shift 42
++	LPAREN	shift 41
++	TIMES	shift 40
++	ID	shift 39
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	pointer	goto 18
++	notypeDeclarator	goto 17
++	notypeDirectDeclarator	goto 16
++	declarationSpecifiers	goto 15
++	declarationModifiers	goto 14
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	fDefDeclaration	goto 7
++	functionDefinition	goto 6
++	declaration	goto 5
++	declaration1	goto 4
++	externalDeclaration	goto 3
++	structOrUnion	goto 2
++
++	.	reduce by rule 0
++
++
++state 2:
++
++	structOrUnionSpecifier : structOrUnion . LCURLY structDeclarationList RCURLY 
++	structOrUnionSpecifier : structOrUnion . ID LCURLY structDeclarationList RCURLY 
++	structOrUnionSpecifier : structOrUnion . TYPE_NAME LCURLY structDeclarationList RCURLY 
++	structOrUnionSpecifier : structOrUnion . ID 
++	structOrUnionSpecifier : structOrUnion . TYPE_NAME 
++
++	LCURLY	shift 45
++	ID	shift 44
++	TYPE_NAME	shift 43
++
++
++	.	error
++
++
++state 3:
++
++	tu : tu externalDeclaration .  (reduce by rule 2)
++
++
++
++	.	reduce by rule 2
++
++
++state 4:
++
++	declaration : declaration1 . SEMICOLON 
++
++	SEMICOLON	shift 46
++
++
++	.	error
++
++
++state 5:
++
++	externalDeclaration : declaration .  (reduce by rule 3)
++
++
++
++	.	reduce by rule 3
++
++
++state 6:
++
++	externalDeclaration : functionDefinition .  (reduce by rule 5)
++
++
++
++	.	reduce by rule 5
++
++
++state 7:
++
++	functionDefinition : fDefDeclaration . compoundStatement 
++	functionDefinition : fDefDeclaration . declarationList compoundStatement 
++
++	LCURLY	shift 52
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	compoundStatement	goto 51
++	declarationSpecifiers	goto 50
++	declarationModifiers	goto 49
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	declarationList	goto 48
++	declaration	goto 47
++	declaration1	goto 4
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 8:
++
++	typeSpecifier : structOrUnionSpecifier .  (reduce by rule 119)
++
++
++
++	.	reduce by rule 119
++
++
++state 9:
++
++	typeSpecifier : enumSpecifier .  (reduce by rule 120)
++
++
++
++	.	reduce by rule 120
++
++
++state 10:
++
++	declarationModifiers : typeQualifier .  (reduce by rule 110)
++
++
++
++	.	reduce by rule 110
++
++
++state 11:
++
++	typeSpecifier : typeSpecifierReserved .  (reduce by rule 118)
++
++
++
++	.	reduce by rule 118
++
++
++state 12:
++
++	declarationSpecifiers : typeSpecifier . reservedDeclarationSpecifier 
++
++
++	reservedDeclarationSpecifier	goto 53
++
++	.	reduce by rule 101
++
++
++state 13:
++
++	declarationModifiers : storageClassSpecifier .  (reduce by rule 108)
++
++
++
++	.	reduce by rule 108
++
++
++state 14:
++
++	declarationSpecifiers : declarationModifiers . typeSpecifier reservedDeclarationSpecifier 
++	declarationModifiers : declarationModifiers . storageClassSpecifier 
++	declarationModifiers : declarationModifiers . typeQualifier 
++	fDefDeclaration : declarationModifiers . notypeDeclarator 
++	declaration1 : declarationModifiers . notypeInitDeclaratorList 
++
++	LPAREN	shift 41
++	TIMES	shift 40
++	ID	shift 39
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	notypeInitDeclarator	goto 59
++	notypeInitDeclaratorList	goto 58
++	pointer	goto 18
++	notypeDeclarator	goto 57
++	notypeDirectDeclarator	goto 16
++	storageClassSpecifier	goto 56
++	typeSpecifier	goto 55
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 54
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 15:
++
++	fDefDeclaration : declarationSpecifiers . declarator 
++	declaration1 : declarationSpecifiers .  (reduce by rule 23)
++	declaration1 : declarationSpecifiers . initDeclaratorList 
++
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	initDeclarator	goto 66
++	initDeclaratorList	goto 65
++	pointer	goto 64
++	declarator	goto 63
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++
++	.	reduce by rule 23
++
++
++state 16:
++
++	notypeDeclarator : notypeDirectDeclarator .  (reduce by rule 182)
++	notypeDirectDeclarator : notypeDirectDeclarator . LBRACE RBRACE 
++	notypeDirectDeclarator : notypeDirectDeclarator . LBRACE expr RBRACE 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 70
++	LBRACE	shift 69
++
++
++	.	reduce by rule 182
++
++
++state 17:
++
++	fDefDeclaration : notypeDeclarator .  (reduce by rule 218)
++
++
++
++	.	reduce by rule 218
++
++
++state 18:
++
++	notypeDeclarator : pointer . notypeDirectDeclarator 
++
++	LPAREN	shift 41
++	ID	shift 39
++
++	notypeDirectDeclarator	goto 71
++
++	.	error
++
++
++state 19:
++
++	typeSpecifier : TYPE_NAME .  (reduce by rule 121)
++
++
++
++	.	reduce by rule 121
++
++
++state 20:
++
++	storageClassSpecifier : TYPEDEF .  (reduce by rule 167)
++
++
++
++	.	reduce by rule 167
++
++
++state 21:
++
++	typeSpecifierReserved : VOID .  (reduce by rule 122)
++
++
++
++	.	reduce by rule 122
++
++
++state 22:
++
++	typeSpecifierReserved : SIGNED .  (reduce by rule 129)
++
++
++
++	.	reduce by rule 129
++
++
++state 23:
++
++	typeSpecifierReserved : UNSIGNED .  (reduce by rule 130)
++
++
++
++	.	reduce by rule 130
++
++
++state 24:
++
++	structOrUnion : UNION .  (reduce by rule 137)
++
++
++
++	.	reduce by rule 137
++
++
++state 25:
++
++	structOrUnion : STRUCT .  (reduce by rule 136)
++
++
++
++	.	reduce by rule 136
++
++
++state 26:
++
++	typeSpecifierReserved : SHORT .  (reduce by rule 124)
++
++
++
++	.	reduce by rule 124
++
++
++state 27:
++
++	typeSpecifierReserved : LONG .  (reduce by rule 126)
++
++
++
++	.	reduce by rule 126
++
++
++state 28:
++
++	typeSpecifierReserved : INT .  (reduce by rule 125)
++
++
++
++	.	reduce by rule 125
++
++
++state 29:
++
++	typeSpecifierReserved : FLOAT .  (reduce by rule 127)
++
++
++
++	.	reduce by rule 127
++
++
++state 30:
++
++	enumSpecifier : ENUM . LCURLY enumeratorList trailingComma RCURLY 
++	enumSpecifier : ENUM . ID LCURLY enumeratorList trailingComma RCURLY 
++	enumSpecifier : ENUM . TYPE_NAME LCURLY enumeratorList trailingComma RCURLY 
++	enumSpecifier : ENUM . ID 
++	enumSpecifier : ENUM . TYPE_NAME 
++
++	LCURLY	shift 74
++	ID	shift 73
++	TYPE_NAME	shift 72
++
++
++	.	error
++
++
++state 31:
++
++	typeSpecifierReserved : DOUBLE .  (reduce by rule 128)
++
++
++
++	.	reduce by rule 128
++
++
++state 32:
++
++	typeSpecifierReserved : CHAR .  (reduce by rule 123)
++
++
++
++	.	reduce by rule 123
++
++
++state 33:
++
++	typeQualifier : VOLATILE .  (reduce by rule 153)
++
++
++
++	.	reduce by rule 153
++
++
++state 34:
++
++	typeQualifier : CONST .  (reduce by rule 152)
++
++
++
++	.	reduce by rule 152
++
++
++state 35:
++
++	storageClassSpecifier : REGISTER .  (reduce by rule 166)
++
++
++
++	.	reduce by rule 166
++
++
++state 36:
++
++	storageClassSpecifier : STATIC .  (reduce by rule 164)
++
++
++
++	.	reduce by rule 164
++
++
++state 37:
++
++	storageClassSpecifier : AUTO .  (reduce by rule 165)
++
++
++
++	.	reduce by rule 165
++
++
++state 38:
++
++	storageClassSpecifier : EXTERN .  (reduce by rule 163)
++
++
++
++	.	reduce by rule 163
++
++
++state 39:
++
++	notypeDirectDeclarator : ID .  (reduce by rule 197)
++
++
++
++	.	reduce by rule 197
++
++
++state 40:
++
++	pointer : TIMES .  (reduce by rule 186)
++	pointer : TIMES . typeQualifierList 
++	pointer : TIMES . pointer 
++	pointer : TIMES . typeQualifierList pointer 
++
++	TIMES	shift 40
++	CONST	shift 34
++	VOLATILE	shift 33
++
++	pointer	goto 77
++	typeQualifier	goto 76
++	typeQualifierList	goto 75
++
++	.	reduce by rule 186
++
++
++state 41:
++
++	notypeDirectDeclarator : LPAREN . notypeDeclarator RPAREN 
++
++	LPAREN	shift 41
++	TIMES	shift 40
++	ID	shift 39
++
++	pointer	goto 18
++	notypeDeclarator	goto 78
++	notypeDirectDeclarator	goto 16
++
++	.	error
++
++
++state 42:
++
++	externalDeclaration : SEMICOLON .  (reduce by rule 4)
++
++
++
++	.	reduce by rule 4
++
++
++state 43:
++
++	structOrUnionSpecifier : structOrUnion TYPE_NAME . LCURLY structDeclarationList RCURLY 
++	structOrUnionSpecifier : structOrUnion TYPE_NAME .  (reduce by rule 135)
++
++	LCURLY	shift 79
++
++
++	.	reduce by rule 135
++
++
++state 44:
++
++	structOrUnionSpecifier : structOrUnion ID . LCURLY structDeclarationList RCURLY 
++	structOrUnionSpecifier : structOrUnion ID .  (reduce by rule 134)
++
++	LCURLY	shift 80
++
++
++	.	reduce by rule 134
++
++
++state 45:
++
++	structOrUnionSpecifier : structOrUnion LCURLY . structDeclarationList RCURLY 
++
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclarationList	goto 82
++	structDeclaration	goto 81
++
++	.	error
++
++
++state 46:
++
++	declaration : declaration1 SEMICOLON .  (reduce by rule 22)
++
++
++
++	.	reduce by rule 22
++
++
++state 47:
++
++	declarationList : declaration .  (reduce by rule 214)
++
++
++
++	.	reduce by rule 214
++
++
++state 48:
++
++	declarationList : declarationList . declaration 
++	functionDefinition : fDefDeclaration declarationList . compoundStatement 
++
++	LCURLY	shift 52
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	compoundStatement	goto 87
++	declarationSpecifiers	goto 50
++	declarationModifiers	goto 49
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	declaration	goto 86
++	declaration1	goto 4
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 49:
++
++	declarationSpecifiers : declarationModifiers . typeSpecifier reservedDeclarationSpecifier 
++	declarationModifiers : declarationModifiers . storageClassSpecifier 
++	declarationModifiers : declarationModifiers . typeQualifier 
++	declaration1 : declarationModifiers . notypeInitDeclaratorList 
++
++	LPAREN	shift 41
++	TIMES	shift 40
++	ID	shift 39
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	notypeInitDeclarator	goto 59
++	notypeInitDeclaratorList	goto 58
++	pointer	goto 18
++	notypeDeclarator	goto 88
++	notypeDirectDeclarator	goto 16
++	storageClassSpecifier	goto 56
++	typeSpecifier	goto 55
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 54
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 50:
++
++	declaration1 : declarationSpecifiers .  (reduce by rule 23)
++	declaration1 : declarationSpecifiers . initDeclaratorList 
++
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	initDeclarator	goto 66
++	initDeclaratorList	goto 65
++	pointer	goto 64
++	declarator	goto 89
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++
++	.	reduce by rule 23
++
++
++state 51:
++
++	functionDefinition : fDefDeclaration compoundStatement .  (reduce by rule 221)
++
++
++
++	.	reduce by rule 221
++
++
++state 52:
++
++	compoundStatement : LCURLY . pushScope declarationList ostatementlist popScope RCURLY 
++	compoundStatement : LCURLY . ostatementlist RCURLY 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	RCURLY	reduce by rule 27
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	EXTERN	reduce by rule 245
++	AUTO	reduce by rule 245
++	STATIC	reduce by rule 245
++	REGISTER	reduce by rule 245
++	CONST	reduce by rule 245
++	VOLATILE	reduce by rule 245
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	CHAR	reduce by rule 245
++	DOUBLE	reduce by rule 245
++	ENUM	reduce by rule 245
++	FLOAT	reduce by rule 245
++	INT	reduce by rule 245
++	LONG	reduce by rule 245
++	SHORT	reduce by rule 245
++	STRUCT	reduce by rule 245
++	UNION	reduce by rule 245
++	UNSIGNED	reduce by rule 245
++	SIGNED	reduce by rule 245
++	VOID	reduce by rule 245
++	SIZEOF	shift 99
++	TYPEDEF	reduce by rule 245
++	TYPE_NAME	reduce by rule 245
++
++	statement	goto 98
++	ostatementlist	goto 97
++	statementlist	goto 96
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	pushScope	goto 91
++	strings	goto 90
++
++	.	error
++
++
++state 53:
++
++	declarationSpecifiers : typeSpecifier reservedDeclarationSpecifier .  (reduce by rule 99)
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier . specifierQualifierReserved 
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier . storageClassSpecifier 
++
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++
++	specifierQualifierReserved	goto 131
++	storageClassSpecifier	goto 130
++	typeSpecifierReserved	goto 129
++	typeQualifier	goto 128
++	enumSpecifier	goto 127
++	structOrUnionSpecifier	goto 126
++	structOrUnion	goto 2
++
++	.	reduce by rule 99
++
++
++state 54:
++
++	declarationModifiers : declarationModifiers typeQualifier .  (reduce by rule 111)
++
++
++
++	.	reduce by rule 111
++
++
++state 55:
++
++	declarationSpecifiers : declarationModifiers typeSpecifier . reservedDeclarationSpecifier 
++
++
++	reservedDeclarationSpecifier	goto 132
++
++	.	reduce by rule 101
++
++
++state 56:
++
++	declarationModifiers : declarationModifiers storageClassSpecifier .  (reduce by rule 109)
++
++
++
++	.	reduce by rule 109
++
++
++state 57:
++
++	notypeInitDeclarator : notypeDeclarator .  (reduce by rule 176)
++	notypeInitDeclarator : notypeDeclarator . EQUALS initializer 
++	fDefDeclaration : declarationModifiers notypeDeclarator .  (reduce by rule 220)
++
++	SEMICOLON	reduce by rule 176
++	LCURLY	reduce by rule 220
++	COMMA	reduce by rule 176
++	EQUALS	shift 133
++	EXTERN	reduce by rule 220
++	AUTO	reduce by rule 220
++	STATIC	reduce by rule 220
++	REGISTER	reduce by rule 220
++	CONST	reduce by rule 220
++	VOLATILE	reduce by rule 220
++	CHAR	reduce by rule 220
++	DOUBLE	reduce by rule 220
++	ENUM	reduce by rule 220
++	FLOAT	reduce by rule 220
++	INT	reduce by rule 220
++	LONG	reduce by rule 220
++	SHORT	reduce by rule 220
++	STRUCT	reduce by rule 220
++	UNION	reduce by rule 220
++	UNSIGNED	reduce by rule 220
++	SIGNED	reduce by rule 220
++	VOID	reduce by rule 220
++	TYPEDEF	reduce by rule 220
++	TYPE_NAME	reduce by rule 220
++
++
++	.	error
++
++
++state 58:
++
++	notypeInitDeclaratorList : notypeInitDeclaratorList . COMMA initDeclarator 
++	declaration1 : declarationModifiers notypeInitDeclaratorList .  (reduce by rule 25)
++
++	COMMA	shift 134
++
++
++	.	reduce by rule 25
++
++
++state 59:
++
++	notypeInitDeclaratorList : notypeInitDeclarator .  (reduce by rule 174)
++
++
++
++	.	reduce by rule 174
++
++
++state 60:
++
++	aftertypeDeclarator : aftertypeDirectDeclarator .  (reduce by rule 180)
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LBRACE RBRACE 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LBRACE expr RBRACE 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 136
++	LBRACE	shift 135
++
++
++	.	reduce by rule 180
++
++
++state 61:
++
++	declarator : notypeDeclarator .  (reduce by rule 179)
++
++
++
++	.	reduce by rule 179
++
++
++state 62:
++
++	declarator : aftertypeDeclarator .  (reduce by rule 178)
++
++
++
++	.	reduce by rule 178
++
++
++state 63:
++
++	initDeclarator : declarator .  (reduce by rule 172)
++	initDeclarator : declarator . EQUALS initializer 
++	fDefDeclaration : declarationSpecifiers declarator .  (reduce by rule 219)
++
++	SEMICOLON	reduce by rule 172
++	LCURLY	reduce by rule 219
++	COMMA	reduce by rule 172
++	EQUALS	shift 137
++	EXTERN	reduce by rule 219
++	AUTO	reduce by rule 219
++	STATIC	reduce by rule 219
++	REGISTER	reduce by rule 219
++	CONST	reduce by rule 219
++	VOLATILE	reduce by rule 219
++	CHAR	reduce by rule 219
++	DOUBLE	reduce by rule 219
++	ENUM	reduce by rule 219
++	FLOAT	reduce by rule 219
++	INT	reduce by rule 219
++	LONG	reduce by rule 219
++	SHORT	reduce by rule 219
++	STRUCT	reduce by rule 219
++	UNION	reduce by rule 219
++	UNSIGNED	reduce by rule 219
++	SIGNED	reduce by rule 219
++	VOID	reduce by rule 219
++	TYPEDEF	reduce by rule 219
++	TYPE_NAME	reduce by rule 219
++
++
++	.	error
++
++
++state 64:
++
++	aftertypeDeclarator : pointer . aftertypeDirectDeclarator 
++	notypeDeclarator : pointer . notypeDirectDeclarator 
++
++	LPAREN	shift 68
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	aftertypeDirectDeclarator	goto 138
++	notypeDirectDeclarator	goto 71
++
++	.	error
++
++
++state 65:
++
++	initDeclaratorList : initDeclaratorList . COMMA initDeclarator 
++	declaration1 : declarationSpecifiers initDeclaratorList .  (reduce by rule 24)
++
++	COMMA	shift 139
++
++
++	.	reduce by rule 24
++
++
++state 66:
++
++	initDeclaratorList : initDeclarator .  (reduce by rule 170)
++
++
++
++	.	reduce by rule 170
++
++
++state 67:
++
++	aftertypeDirectDeclarator : TYPE_NAME .  (reduce by rule 190)
++
++
++
++	.	reduce by rule 190
++
++
++state 68:
++
++	aftertypeDirectDeclarator : LPAREN . aftertypeDeclarator RPAREN 
++	notypeDirectDeclarator : LPAREN . notypeDeclarator RPAREN 
++
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	pointer	goto 64
++	aftertypeDeclarator	goto 140
++	notypeDeclarator	goto 78
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++
++	.	error
++
++
++state 69:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LBRACE . RBRACE 
++	notypeDirectDeclarator : notypeDirectDeclarator LBRACE . expr RBRACE 
++
++	LPAREN	shift 124
++	RBRACE	shift 143
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 141
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 70:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN . RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN . parameterTypeList RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN . identlist RPAREN 
++
++	RPAREN	shift 151
++	ID	shift 150
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	identlist	goto 147
++	parameterList	goto 146
++	parameterTypeList	goto 145
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 71:
++
++	notypeDeclarator : pointer notypeDirectDeclarator .  (reduce by rule 183)
++	notypeDirectDeclarator : notypeDirectDeclarator . LBRACE RBRACE 
++	notypeDirectDeclarator : notypeDirectDeclarator . LBRACE expr RBRACE 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	notypeDirectDeclarator : notypeDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 70
++	LBRACE	shift 69
++
++
++	.	reduce by rule 183
++
++
++state 72:
++
++	enumSpecifier : ENUM TYPE_NAME . LCURLY enumeratorList trailingComma RCURLY 
++	enumSpecifier : ENUM TYPE_NAME .  (reduce by rule 158)
++
++	LCURLY	shift 152
++
++
++	.	reduce by rule 158
++
++
++state 73:
++
++	enumSpecifier : ENUM ID . LCURLY enumeratorList trailingComma RCURLY 
++	enumSpecifier : ENUM ID .  (reduce by rule 157)
++
++	LCURLY	shift 153
++
++
++	.	reduce by rule 157
++
++
++state 74:
++
++	enumSpecifier : ENUM LCURLY . enumeratorList trailingComma RCURLY 
++
++	ID	shift 156
++
++	enumeratorList	goto 155
++	enumerator	goto 154
++
++	.	error
++
++
++state 75:
++
++	pointer : TIMES typeQualifierList .  (reduce by rule 187)
++	pointer : TIMES typeQualifierList . pointer 
++
++	TIMES	shift 40
++
++	pointer	goto 157
++
++	.	reduce by rule 187
++
++
++state 76:
++
++	typeQualifierList : typeQualifier .  (reduce by rule 116)
++	typeQualifierList : typeQualifier . typeQualifierList 
++
++	CONST	shift 34
++	VOLATILE	shift 33
++
++	typeQualifier	goto 76
++	typeQualifierList	goto 158
++
++	.	reduce by rule 116
++
++
++state 77:
++
++	pointer : TIMES pointer .  (reduce by rule 188)
++
++
++
++	.	reduce by rule 188
++
++
++state 78:
++
++	notypeDirectDeclarator : LPAREN notypeDeclarator . RPAREN 
++
++	RPAREN	shift 159
++
++
++	.	error
++
++
++state 79:
++
++	structOrUnionSpecifier : structOrUnion TYPE_NAME LCURLY . structDeclarationList RCURLY 
++
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclarationList	goto 160
++	structDeclaration	goto 81
++
++	.	error
++
++
++state 80:
++
++	structOrUnionSpecifier : structOrUnion ID LCURLY . structDeclarationList RCURLY 
++
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclarationList	goto 161
++	structDeclaration	goto 81
++
++	.	error
++
++
++state 81:
++
++	structDeclarationList : structDeclaration .  (reduce by rule 138)
++
++
++
++	.	reduce by rule 138
++
++
++state 82:
++
++	structOrUnionSpecifier : structOrUnion LCURLY structDeclarationList . RCURLY 
++	structDeclarationList : structDeclarationList . structDeclaration 
++
++	RCURLY	shift 163
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclaration	goto 162
++
++	.	error
++
++
++state 83:
++
++	structDeclaration : specifierQualifierList . structDeclaratorList SEMICOLON 
++
++	COLON	shift 167
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	pointer	goto 64
++	declarator	goto 166
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++	structDeclarator	goto 165
++	structDeclaratorList	goto 164
++
++	.	error
++
++
++state 84:
++
++	specifierQualifierList : typeQualifierList . typeSpecifier reservedSpecifierQualifiers 
++	structDeclaration : typeQualifierList . notypeStructDeclaratorList SEMICOLON 
++
++	COLON	shift 172
++	LPAREN	shift 41
++	TIMES	shift 40
++	ID	shift 39
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	pointer	goto 18
++	notypeDeclarator	goto 171
++	notypeDirectDeclarator	goto 16
++	typeSpecifier	goto 170
++	typeSpecifierReserved	goto 11
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	notypeStructDeclarator	goto 169
++	notypeStructDeclaratorList	goto 168
++
++	.	error
++
++
++state 85:
++
++	specifierQualifierList : typeSpecifier . reservedSpecifierQualifiers 
++
++
++	reservedSpecifierQualifiers	goto 173
++
++	.	reduce by rule 114
++
++
++state 86:
++
++	declarationList : declarationList declaration .  (reduce by rule 215)
++
++
++
++	.	reduce by rule 215
++
++
++state 87:
++
++	functionDefinition : fDefDeclaration declarationList compoundStatement .  (reduce by rule 222)
++
++
++
++	.	reduce by rule 222
++
++
++state 88:
++
++	notypeInitDeclarator : notypeDeclarator .  (reduce by rule 176)
++	notypeInitDeclarator : notypeDeclarator . EQUALS initializer 
++
++	EQUALS	shift 133
++
++
++	.	reduce by rule 176
++
++
++state 89:
++
++	initDeclarator : declarator .  (reduce by rule 172)
++	initDeclarator : declarator . EQUALS initializer 
++
++	EQUALS	shift 137
++
++
++	.	reduce by rule 172
++
++
++state 90:
++
++	expr : strings .  (reduce by rule 88)
++
++
++
++	.	reduce by rule 88
++
++
++state 91:
++
++	compoundStatement : LCURLY pushScope . declarationList ostatementlist popScope RCURLY 
++
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 50
++	declarationModifiers	goto 49
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	declarationList	goto 174
++	declaration	goto 47
++	declaration1	goto 4
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 92:
++
++	expr : unaryOperator . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 175
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 93:
++
++	statement : exprWComma . SEMICOLON 
++	exprWComma : exprWComma . COMMA expr 
++
++	SEMICOLON	shift 177
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 94:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	exprWComma : expr .  (reduce by rule 91)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 91
++
++
++state 95:
++
++	statement : compoundStatement .  (reduce by rule 14)
++
++
++
++	.	reduce by rule 14
++
++
++state 96:
++
++	ostatementlist : statementlist .  (reduce by rule 26)
++	statementlist : statementlist . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 214
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 26
++
++
++state 97:
++
++	compoundStatement : LCURLY ostatementlist . RCURLY 
++
++	RCURLY	shift 215
++
++
++	.	error
++
++
++state 98:
++
++	statementlist : statement .  (reduce by rule 28)
++
++
++
++	.	reduce by rule 28
++
++
++state 99:
++
++	expr : SIZEOF . expr 
++	expr : SIZEOF . LPAREN typeName RPAREN 
++
++	LPAREN	shift 217
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 216
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 100:
++
++	statement : GOTO . ID SEMICOLON 
++
++	ID	shift 218
++
++
++	.	error
++
++
++state 101:
++
++	statement : CONTINUE . SEMICOLON 
++
++	SEMICOLON	shift 219
++
++
++	.	error
++
++
++state 102:
++
++	statement : BREAK . SEMICOLON 
++
++	SEMICOLON	shift 220
++
++
++	.	error
++
++
++state 103:
++
++	statement : RETURN . opExpr SEMICOLON 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	opExpr	goto 222
++	exprWComma	goto 221
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 93
++
++
++state 104:
++
++	statement : WHILE . LPAREN exprWComma RPAREN statement 
++
++	LPAREN	shift 223
++
++
++	.	error
++
++
++state 105:
++
++	statement : DEFAULT . COLON statement 
++
++	COLON	shift 224
++
++
++	.	error
++
++
++state 106:
++
++	statement : CASE . exprWComma COLON statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 225
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 107:
++
++	statement : SWITCH . LPAREN exprWComma RPAREN statement 
++
++	LPAREN	shift 226
++
++
++	.	error
++
++
++state 108:
++
++	statement : DO . statement WHILE LPAREN exprWComma RPAREN SEMICOLON 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 227
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 109:
++
++	statement : FOR . LPAREN opExpr SEMICOLON opExpr SEMICOLON opExpr RPAREN statement 
++
++	LPAREN	shift 228
++
++
++	.	error
++
++
++state 110:
++
++	statement : IF . LPAREN exprWComma RPAREN statement 
++	statement : IF . LPAREN exprWComma RPAREN statement ELSE statement 
++
++	LPAREN	shift 229
++
++
++	.	error
++
++
++state 111:
++
++	expr : CCONST .  (reduce by rule 86)
++
++
++
++	.	reduce by rule 86
++
++
++state 112:
++
++	strings : STRING .  (reduce by rule 89)
++	strings : STRING . strings 
++
++	STRING	shift 112
++
++	strings	goto 230
++
++	.	reduce by rule 89
++
++
++state 113:
++
++	expr : REALNUM .  (reduce by rule 85)
++
++
++
++	.	reduce by rule 85
++
++
++state 114:
++
++	expr : DECNUM .  (reduce by rule 84)
++
++
++
++	.	reduce by rule 84
++
++
++state 115:
++
++	statement : ID . COLON statement 
++	expr : ID .  (reduce by rule 87)
++
++	COLON	shift 231
++
++
++	.	reduce by rule 87
++
++
++state 116:
++
++	expr : DEC . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 232
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 117:
++
++	expr : INC . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 233
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 118:
++
++	unaryOperator : TIMES .  (reduce by rule 33)
++
++
++
++	.	reduce by rule 33
++
++
++state 119:
++
++	unaryOperator : BANG .  (reduce by rule 37)
++
++
++
++	.	reduce by rule 37
++
++
++state 120:
++
++	unaryOperator : MINUS .  (reduce by rule 35)
++
++
++
++	.	reduce by rule 35
++
++
++state 121:
++
++	unaryOperator : PLUS .  (reduce by rule 34)
++
++
++
++	.	reduce by rule 34
++
++
++state 122:
++
++	unaryOperator : TILDE .  (reduce by rule 36)
++
++
++
++	.	reduce by rule 36
++
++
++state 123:
++
++	unaryOperator : AMP .  (reduce by rule 32)
++
++
++
++	.	reduce by rule 32
++
++
++state 124:
++
++	expr : LPAREN . typeName RPAREN expr 
++	expr : LPAREN . exprWComma RPAREN 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	SIZEOF	shift 99
++	TYPE_NAME	shift 19
++
++	expr	goto 94
++	exprWComma	goto 237
++	unaryOperator	goto 92
++	typeName	goto 236
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 235
++	specifierQualifierList	goto 234
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	strings	goto 90
++
++	.	error
++
++
++state 125:
++
++	statement : SEMICOLON .  (reduce by rule 21)
++
++
++
++	.	reduce by rule 21
++
++
++state 126:
++
++	specifierQualifierReserved : structOrUnionSpecifier .  (reduce by rule 106)
++
++
++
++	.	reduce by rule 106
++
++
++state 127:
++
++	specifierQualifierReserved : enumSpecifier .  (reduce by rule 107)
++
++
++
++	.	reduce by rule 107
++
++
++state 128:
++
++	specifierQualifierReserved : typeQualifier .  (reduce by rule 105)
++
++
++
++	.	reduce by rule 105
++
++
++state 129:
++
++	specifierQualifierReserved : typeSpecifierReserved .  (reduce by rule 104)
++
++
++
++	.	reduce by rule 104
++
++
++state 130:
++
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier storageClassSpecifier .  (reduce by rule 103)
++
++
++
++	.	reduce by rule 103
++
++
++state 131:
++
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier specifierQualifierReserved .  (reduce by rule 102)
++
++
++
++	.	reduce by rule 102
++
++
++state 132:
++
++	declarationSpecifiers : declarationModifiers typeSpecifier reservedDeclarationSpecifier .  (reduce by rule 100)
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier . specifierQualifierReserved 
++	reservedDeclarationSpecifier : reservedDeclarationSpecifier . storageClassSpecifier 
++
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++
++	specifierQualifierReserved	goto 131
++	storageClassSpecifier	goto 130
++	typeSpecifierReserved	goto 129
++	typeQualifier	goto 128
++	enumSpecifier	goto 127
++	structOrUnionSpecifier	goto 126
++	structOrUnion	goto 2
++
++	.	reduce by rule 100
++
++
++state 133:
++
++	notypeInitDeclarator : notypeDeclarator EQUALS . initializer 
++
++	LPAREN	shift 124
++	LCURLY	shift 240
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 239
++	unaryOperator	goto 92
++	initializer	goto 238
++	strings	goto 90
++
++	.	error
++
++
++state 134:
++
++	notypeInitDeclaratorList : notypeInitDeclaratorList COMMA . initDeclarator 
++
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	initDeclarator	goto 241
++	pointer	goto 64
++	declarator	goto 89
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++
++	.	error
++
++
++state 135:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LBRACE . RBRACE 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LBRACE . expr RBRACE 
++
++	LPAREN	shift 124
++	RBRACE	shift 243
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 242
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 136:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN . RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN . parameterTypeList RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN . identlist RPAREN 
++
++	RPAREN	shift 246
++	ID	shift 150
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	identlist	goto 245
++	parameterList	goto 146
++	parameterTypeList	goto 244
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 137:
++
++	initDeclarator : declarator EQUALS . initializer 
++
++	LPAREN	shift 124
++	LCURLY	shift 240
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 239
++	unaryOperator	goto 92
++	initializer	goto 247
++	strings	goto 90
++
++	.	error
++
++
++state 138:
++
++	aftertypeDeclarator : pointer aftertypeDirectDeclarator .  (reduce by rule 181)
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LBRACE RBRACE 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LBRACE expr RBRACE 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 136
++	LBRACE	shift 135
++
++
++	.	reduce by rule 181
++
++
++state 139:
++
++	initDeclaratorList : initDeclaratorList COMMA . initDeclarator 
++
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	initDeclarator	goto 248
++	pointer	goto 64
++	declarator	goto 89
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++
++	.	error
++
++
++state 140:
++
++	aftertypeDirectDeclarator : LPAREN aftertypeDeclarator . RPAREN 
++
++	RPAREN	shift 249
++
++
++	.	error
++
++
++state 141:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	notypeDirectDeclarator : notypeDirectDeclarator LBRACE expr . RBRACE 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	RBRACE	shift 250
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	error
++
++
++state 142:
++
++	expr : ID .  (reduce by rule 87)
++
++
++
++	.	reduce by rule 87
++
++
++state 143:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LBRACE RBRACE .  (reduce by rule 199)
++
++
++
++	.	reduce by rule 199
++
++
++state 144:
++
++	parameterList : parameterDeclaration .  (reduce by rule 237)
++
++
++
++	.	reduce by rule 237
++
++
++state 145:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN parameterTypeList . RPAREN 
++
++	RPAREN	shift 251
++
++
++	.	error
++
++
++state 146:
++
++	parameterList : parameterList . COMMA parameterDeclaration 
++	parameterTypeList : parameterList .  (reduce by rule 235)
++	parameterTypeList : parameterList . COMMA ELIPSIS 
++
++	COMMA	shift 252
++
++
++	.	reduce by rule 235
++
++
++state 147:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN identlist . RPAREN 
++	identlist : identlist . COMMA ID 
++
++	RPAREN	shift 254
++	COMMA	shift 253
++
++
++	.	error
++
++
++state 148:
++
++	declarationSpecifiers : declarationModifiers . typeSpecifier reservedDeclarationSpecifier 
++	declarationModifiers : declarationModifiers . storageClassSpecifier 
++	declarationModifiers : declarationModifiers . typeQualifier 
++	parameterDeclaration : declarationModifiers . notypeDeclarator 
++	parameterDeclaration : declarationModifiers . abstractDeclarator 
++
++	LPAREN	shift 260
++	LBRACE	shift 259
++	TIMES	shift 40
++	ID	shift 39
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	abstractDeclarator	goto 258
++	directAbstractDeclarator	goto 257
++	pointer	goto 256
++	notypeDeclarator	goto 255
++	notypeDirectDeclarator	goto 16
++	storageClassSpecifier	goto 56
++	typeSpecifier	goto 55
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 54
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 149:
++
++	parameterDeclaration : declarationSpecifiers . notypeDeclarator 
++	parameterDeclaration : declarationSpecifiers . parmDeclarator 
++	parameterDeclaration : declarationSpecifiers .  (reduce by rule 241)
++	parameterDeclaration : declarationSpecifiers . abstractDeclarator 
++
++	LPAREN	shift 260
++	LBRACE	shift 259
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 266
++
++	abstractDeclarator	goto 265
++	directAbstractDeclarator	goto 257
++	pointer	goto 264
++	notypeDeclarator	goto 263
++	parmDeclarator	goto 262
++	notypeDirectDeclarator	goto 16
++	parmDirectDeclarator	goto 261
++
++	.	reduce by rule 241
++
++
++state 150:
++
++	identlist : ID .  (reduce by rule 216)
++
++
++
++	.	reduce by rule 216
++
++
++state 151:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN RPAREN .  (reduce by rule 201)
++
++
++
++	.	reduce by rule 201
++
++
++state 152:
++
++	enumSpecifier : ENUM TYPE_NAME LCURLY . enumeratorList trailingComma RCURLY 
++
++	ID	shift 156
++
++	enumeratorList	goto 267
++	enumerator	goto 154
++
++	.	error
++
++
++state 153:
++
++	enumSpecifier : ENUM ID LCURLY . enumeratorList trailingComma RCURLY 
++
++	ID	shift 156
++
++	enumeratorList	goto 268
++	enumerator	goto 154
++
++	.	error
++
++
++state 154:
++
++	enumeratorList : enumerator .  (reduce by rule 160)
++
++
++
++	.	reduce by rule 160
++
++
++state 155:
++
++	enumeratorList : enumeratorList . COMMA enumerator 
++	enumSpecifier : ENUM LCURLY enumeratorList . trailingComma RCURLY 
++
++	COMMA	shift 270
++
++	trailingComma	goto 269
++
++	.	reduce by rule 168
++
++
++state 156:
++
++	enumerator : ID .  (reduce by rule 161)
++	enumerator : ID . EQUALS expr 
++
++	EQUALS	shift 271
++
++
++	.	reduce by rule 161
++
++
++state 157:
++
++	pointer : TIMES typeQualifierList pointer .  (reduce by rule 189)
++
++
++
++	.	reduce by rule 189
++
++
++state 158:
++
++	typeQualifierList : typeQualifier typeQualifierList .  (reduce by rule 117)
++
++
++
++	.	reduce by rule 117
++
++
++state 159:
++
++	notypeDirectDeclarator : LPAREN notypeDeclarator RPAREN .  (reduce by rule 198)
++
++
++
++	.	reduce by rule 198
++
++
++state 160:
++
++	structOrUnionSpecifier : structOrUnion TYPE_NAME LCURLY structDeclarationList . RCURLY 
++	structDeclarationList : structDeclarationList . structDeclaration 
++
++	RCURLY	shift 272
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclaration	goto 162
++
++	.	error
++
++
++state 161:
++
++	structOrUnionSpecifier : structOrUnion ID LCURLY structDeclarationList . RCURLY 
++	structDeclarationList : structDeclarationList . structDeclaration 
++
++	RCURLY	shift 273
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 84
++	specifierQualifierList	goto 83
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	structDeclaration	goto 162
++
++	.	error
++
++
++state 162:
++
++	structDeclarationList : structDeclarationList structDeclaration .  (reduce by rule 139)
++
++
++
++	.	reduce by rule 139
++
++
++state 163:
++
++	structOrUnionSpecifier : structOrUnion LCURLY structDeclarationList RCURLY .  (reduce by rule 131)
++
++
++
++	.	reduce by rule 131
++
++
++state 164:
++
++	structDeclaratorList : structDeclaratorList . COMMA structDeclarator 
++	structDeclaration : specifierQualifierList structDeclaratorList . SEMICOLON 
++
++	SEMICOLON	shift 275
++	COMMA	shift 274
++
++
++	.	error
++
++
++state 165:
++
++	structDeclaratorList : structDeclarator .  (reduce by rule 142)
++
++
++
++	.	reduce by rule 142
++
++
++state 166:
++
++	structDeclarator : declarator .  (reduce by rule 146)
++	structDeclarator : declarator . COLON expr 
++
++	COLON	shift 276
++
++
++	.	reduce by rule 146
++
++
++state 167:
++
++	structDeclarator : COLON . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 277
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 168:
++
++	notypeStructDeclaratorList : notypeStructDeclaratorList . COMMA structDeclarator 
++	structDeclaration : typeQualifierList notypeStructDeclaratorList . SEMICOLON 
++
++	SEMICOLON	shift 279
++	COMMA	shift 278
++
++
++	.	error
++
++
++state 169:
++
++	notypeStructDeclaratorList : notypeStructDeclarator .  (reduce by rule 144)
++
++
++
++	.	reduce by rule 144
++
++
++state 170:
++
++	specifierQualifierList : typeQualifierList typeSpecifier . reservedSpecifierQualifiers 
++
++
++	reservedSpecifierQualifiers	goto 280
++
++	.	reduce by rule 114
++
++
++state 171:
++
++	notypeStructDeclarator : notypeDeclarator .  (reduce by rule 149)
++	notypeStructDeclarator : notypeDeclarator . COLON expr 
++
++	COLON	shift 281
++
++
++	.	reduce by rule 149
++
++
++state 172:
++
++	notypeStructDeclarator : COLON . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 282
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 173:
++
++	reservedSpecifierQualifiers : reservedSpecifierQualifiers . specifierQualifierReserved 
++	specifierQualifierList : typeSpecifier reservedSpecifierQualifiers .  (reduce by rule 112)
++
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++
++	specifierQualifierReserved	goto 283
++	typeSpecifierReserved	goto 129
++	typeQualifier	goto 128
++	enumSpecifier	goto 127
++	structOrUnionSpecifier	goto 126
++	structOrUnion	goto 2
++
++	.	reduce by rule 112
++
++
++state 174:
++
++	compoundStatement : LCURLY pushScope declarationList . ostatementlist popScope RCURLY 
++	declarationList : declarationList . declaration 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	SIZEOF	shift 99
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	statement	goto 98
++	ostatementlist	goto 284
++	statementlist	goto 96
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	declarationSpecifiers	goto 50
++	declarationModifiers	goto 49
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	declaration	goto 86
++	declaration1	goto 4
++	structOrUnion	goto 2
++	strings	goto 90
++
++	.	reduce by rule 27
++
++
++state 175:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : unaryOperator expr .  (reduce by rule 72)
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 72
++
++
++state 176:
++
++	exprWComma : exprWComma COMMA . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 285
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 177:
++
++	statement : exprWComma SEMICOLON .  (reduce by rule 20)
++
++
++
++	.	reduce by rule 20
++
++
++state 178:
++
++	expr : expr RSHIFT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 286
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 179:
++
++	expr : expr LSHIFT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 287
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 180:
++
++	expr : expr AND . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 288
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 181:
++
++	expr : expr OR . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 289
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 182:
++
++	expr : expr NEQ . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 290
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 183:
++
++	expr : expr EQ . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 291
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 184:
++
++	expr : expr GT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 292
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 185:
++
++	expr : expr LT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 293
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 186:
++
++	expr : expr GTE . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 294
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 187:
++
++	expr : expr LTE . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 295
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 188:
++
++	expr : expr RSHIFTEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 296
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 189:
++
++	expr : expr LSHIFTEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 297
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 190:
++
++	expr : expr ANDEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 298
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 191:
++
++	expr : expr OREQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 299
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 192:
++
++	expr : expr DIVEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 300
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 193:
++
++	expr : expr TIMESEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 301
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 194:
++
++	expr : expr MODEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 302
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 195:
++
++	expr : expr XOREQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 303
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 196:
++
++	expr : expr MINUSEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 304
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 197:
++
++	expr : expr PLUSEQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 305
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 198:
++
++	expr : expr EQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 306
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 199:
++
++	expr : expr ARROW . ID 
++	expr : expr ARROW . TYPE_NAME 
++
++	ID	shift 308
++	TYPE_NAME	shift 307
++
++
++	.	error
++
++
++state 200:
++
++	expr : expr DEC .  (reduce by rule 69)
++
++
++
++	.	reduce by rule 69
++
++
++state 201:
++
++	expr : expr INC .  (reduce by rule 68)
++
++
++
++	.	reduce by rule 68
++
++
++state 202:
++
++	expr : expr TIMES . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 309
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 203:
++
++	expr : expr HAT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 310
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 204:
++
++	expr : expr MINUS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 311
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 205:
++
++	expr : expr PLUS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 312
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 206:
++
++	expr : expr DIVIDE . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 313
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 207:
++
++	expr : expr BAR . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 314
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 208:
++
++	expr : expr AMP . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 315
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 209:
++
++	expr : expr PERCENT . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 316
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 210:
++
++	expr : expr QUESTION . exprWComma COLON expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 317
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 211:
++
++	expr : expr DOT . ID 
++	expr : expr DOT . TYPE_NAME 
++
++	ID	shift 319
++	TYPE_NAME	shift 318
++
++
++	.	error
++
++
++state 212:
++
++	expr : expr LBRACE . exprWComma RBRACE 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 320
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 213:
++
++	expr : expr LPAREN . RPAREN 
++	expr : expr LPAREN . argumentExprList RPAREN 
++
++	LPAREN	shift 124
++	RPAREN	shift 323
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 322
++	unaryOperator	goto 92
++	argumentExprList	goto 321
++	strings	goto 90
++
++	.	error
++
++
++state 214:
++
++	statementlist : statementlist statement .  (reduce by rule 29)
++
++
++
++	.	reduce by rule 29
++
++
++state 215:
++
++	compoundStatement : LCURLY ostatementlist RCURLY .  (reduce by rule 31)
++
++
++
++	.	reduce by rule 31
++
++
++state 216:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : SIZEOF expr .  (reduce by rule 73)
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 73
++
++
++state 217:
++
++	expr : LPAREN . typeName RPAREN expr 
++	expr : SIZEOF LPAREN . typeName RPAREN 
++	expr : LPAREN . exprWComma RPAREN 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	SIZEOF	shift 99
++	TYPE_NAME	shift 19
++
++	expr	goto 94
++	exprWComma	goto 237
++	unaryOperator	goto 92
++	typeName	goto 324
++	typeSpecifier	goto 85
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 76
++	typeQualifierList	goto 235
++	specifierQualifierList	goto 234
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++	strings	goto 90
++
++	.	error
++
++
++state 218:
++
++	statement : GOTO ID . SEMICOLON 
++
++	SEMICOLON	shift 325
++
++
++	.	error
++
++
++state 219:
++
++	statement : CONTINUE SEMICOLON .  (reduce by rule 11)
++
++
++
++	.	reduce by rule 11
++
++
++state 220:
++
++	statement : BREAK SEMICOLON .  (reduce by rule 10)
++
++
++
++	.	reduce by rule 10
++
++
++state 221:
++
++	opExpr : exprWComma .  (reduce by rule 94)
++	exprWComma : exprWComma . COMMA expr 
++
++	COMMA	shift 176
++
++
++	.	reduce by rule 94
++
++
++state 222:
++
++	statement : RETURN opExpr . SEMICOLON 
++
++	SEMICOLON	shift 326
++
++
++	.	error
++
++
++state 223:
++
++	statement : WHILE LPAREN . exprWComma RPAREN statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 327
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 224:
++
++	statement : DEFAULT COLON . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 328
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 225:
++
++	statement : CASE exprWComma . COLON statement 
++	exprWComma : exprWComma . COMMA expr 
++
++	COLON	shift 329
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 226:
++
++	statement : SWITCH LPAREN . exprWComma RPAREN statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 330
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 227:
++
++	statement : DO statement . WHILE LPAREN exprWComma RPAREN SEMICOLON 
++
++	WHILE	shift 331
++
++
++	.	error
++
++
++state 228:
++
++	statement : FOR LPAREN . opExpr SEMICOLON opExpr SEMICOLON opExpr RPAREN statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	opExpr	goto 332
++	exprWComma	goto 221
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 93
++
++
++state 229:
++
++	statement : IF LPAREN . exprWComma RPAREN statement 
++	statement : IF LPAREN . exprWComma RPAREN statement ELSE statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 333
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 230:
++
++	strings : STRING strings .  (reduce by rule 90)
++
++
++
++	.	reduce by rule 90
++
++
++state 231:
++
++	statement : ID COLON . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 334
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 232:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : DEC expr .  (reduce by rule 71)
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 71
++
++
++state 233:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : INC expr .  (reduce by rule 70)
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 70
++
++
++state 234:
++
++	typeName : specifierQualifierList .  (reduce by rule 97)
++	typeName : specifierQualifierList . abstractDeclarator 
++
++	LPAREN	shift 337
++	LBRACE	shift 259
++	TIMES	shift 40
++
++	abstractDeclarator	goto 336
++	directAbstractDeclarator	goto 257
++	pointer	goto 335
++
++	.	reduce by rule 97
++
++
++state 235:
++
++	specifierQualifierList : typeQualifierList . typeSpecifier reservedSpecifierQualifiers 
++
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPE_NAME	shift 19
++
++	typeSpecifier	goto 170
++	typeSpecifierReserved	goto 11
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 236:
++
++	expr : LPAREN typeName . RPAREN expr 
++
++	RPAREN	shift 338
++
++
++	.	error
++
++
++state 237:
++
++	expr : LPAREN exprWComma . RPAREN 
++	exprWComma : exprWComma . COMMA expr 
++
++	RPAREN	shift 339
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 238:
++
++	notypeInitDeclarator : notypeDeclarator EQUALS initializer .  (reduce by rule 177)
++
++
++
++	.	reduce by rule 177
++
++
++state 239:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	initializer : expr .  (reduce by rule 210)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 210
++
++
++state 240:
++
++	initializer : LCURLY . initializerList trailingComma RCURLY 
++
++	LPAREN	shift 124
++	LCURLY	shift 240
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 239
++	unaryOperator	goto 92
++	initializer	goto 341
++	initializerList	goto 340
++	strings	goto 90
++
++	.	error
++
++
++state 241:
++
++	notypeInitDeclaratorList : notypeInitDeclaratorList COMMA initDeclarator .  (reduce by rule 175)
++
++
++
++	.	reduce by rule 175
++
++
++state 242:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LBRACE expr . RBRACE 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	RBRACE	shift 342
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	error
++
++
++state 243:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LBRACE RBRACE .  (reduce by rule 192)
++
++
++
++	.	reduce by rule 192
++
++
++state 244:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN parameterTypeList . RPAREN 
++
++	RPAREN	shift 343
++
++
++	.	error
++
++
++state 245:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN identlist . RPAREN 
++	identlist : identlist . COMMA ID 
++
++	RPAREN	shift 344
++	COMMA	shift 253
++
++
++	.	error
++
++
++state 246:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN RPAREN .  (reduce by rule 194)
++
++
++
++	.	reduce by rule 194
++
++
++state 247:
++
++	initDeclarator : declarator EQUALS initializer .  (reduce by rule 173)
++
++
++
++	.	reduce by rule 173
++
++
++state 248:
++
++	initDeclaratorList : initDeclaratorList COMMA initDeclarator .  (reduce by rule 171)
++
++
++
++	.	reduce by rule 171
++
++
++state 249:
++
++	aftertypeDirectDeclarator : LPAREN aftertypeDeclarator RPAREN .  (reduce by rule 191)
++
++
++
++	.	reduce by rule 191
++
++
++state 250:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LBRACE expr RBRACE .  (reduce by rule 200)
++
++
++
++	.	reduce by rule 200
++
++
++state 251:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN parameterTypeList RPAREN .  (reduce by rule 202)
++
++
++
++	.	reduce by rule 202
++
++
++state 252:
++
++	parameterList : parameterList COMMA . parameterDeclaration 
++	parameterTypeList : parameterList COMMA . ELIPSIS 
++
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	ELIPSIS	shift 346
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	parameterDeclaration	goto 345
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 253:
++
++	identlist : identlist COMMA . ID 
++
++	ID	shift 347
++
++
++	.	error
++
++
++state 254:
++
++	notypeDirectDeclarator : notypeDirectDeclarator LPAREN identlist RPAREN .  (reduce by rule 203)
++
++
++
++	.	reduce by rule 203
++
++
++state 255:
++
++	parameterDeclaration : declarationModifiers notypeDeclarator .  (reduce by rule 243)
++
++
++
++	.	reduce by rule 243
++
++
++state 256:
++
++	abstractDeclarator : pointer .  (reduce by rule 223)
++	abstractDeclarator : pointer . directAbstractDeclarator 
++	notypeDeclarator : pointer . notypeDirectDeclarator 
++
++	LPAREN	shift 260
++	LBRACE	shift 259
++	ID	shift 39
++
++	directAbstractDeclarator	goto 348
++	notypeDirectDeclarator	goto 71
++
++	.	reduce by rule 223
++
++
++state 257:
++
++	abstractDeclarator : directAbstractDeclarator .  (reduce by rule 224)
++	directAbstractDeclarator : directAbstractDeclarator . LBRACE RBRACE 
++	directAbstractDeclarator : directAbstractDeclarator . LBRACE expr RBRACE 
++	directAbstractDeclarator : directAbstractDeclarator . LPAREN RPAREN 
++	directAbstractDeclarator : directAbstractDeclarator . LPAREN parameterTypeList RPAREN 
++
++	LPAREN	shift 350
++	LBRACE	shift 349
++
++
++	.	reduce by rule 224
++
++
++state 258:
++
++	parameterDeclaration : declarationModifiers abstractDeclarator .  (reduce by rule 244)
++
++
++
++	.	reduce by rule 244
++
++
++state 259:
++
++	directAbstractDeclarator : LBRACE . RBRACE 
++	directAbstractDeclarator : LBRACE . expr RBRACE 
++
++	LPAREN	shift 124
++	RBRACE	shift 352
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 351
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 260:
++
++	directAbstractDeclarator : LPAREN . abstractDeclarator RPAREN 
++	directAbstractDeclarator : LPAREN . RPAREN 
++	directAbstractDeclarator : LPAREN . parameterTypeList RPAREN 
++	notypeDirectDeclarator : LPAREN . notypeDeclarator RPAREN 
++
++	LPAREN	shift 260
++	RPAREN	shift 355
++	LBRACE	shift 259
++	TIMES	shift 40
++	ID	shift 39
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	abstractDeclarator	goto 354
++	directAbstractDeclarator	goto 257
++	pointer	goto 256
++	notypeDeclarator	goto 78
++	notypeDirectDeclarator	goto 16
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	parameterList	goto 146
++	parameterTypeList	goto 353
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 261:
++
++	parmDeclarator : parmDirectDeclarator .  (reduce by rule 184)
++	parmDirectDeclarator : parmDirectDeclarator . LBRACE RBRACE 
++	parmDirectDeclarator : parmDirectDeclarator . LBRACE expr RBRACE 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 357
++	LBRACE	shift 356
++
++
++	.	reduce by rule 184
++
++
++state 262:
++
++	parameterDeclaration : declarationSpecifiers parmDeclarator .  (reduce by rule 240)
++
++
++
++	.	reduce by rule 240
++
++
++state 263:
++
++	parameterDeclaration : declarationSpecifiers notypeDeclarator .  (reduce by rule 239)
++
++
++
++	.	reduce by rule 239
++
++
++state 264:
++
++	abstractDeclarator : pointer .  (reduce by rule 223)
++	abstractDeclarator : pointer . directAbstractDeclarator 
++	notypeDeclarator : pointer . notypeDirectDeclarator 
++	parmDeclarator : pointer . parmDirectDeclarator 
++
++	LPAREN	shift 260
++	LBRACE	shift 259
++	ID	shift 39
++	TYPE_NAME	shift 266
++
++	directAbstractDeclarator	goto 348
++	notypeDirectDeclarator	goto 71
++	parmDirectDeclarator	goto 358
++
++	.	reduce by rule 223
++
++
++state 265:
++
++	parameterDeclaration : declarationSpecifiers abstractDeclarator .  (reduce by rule 242)
++
++
++
++	.	reduce by rule 242
++
++
++state 266:
++
++	parmDirectDeclarator : TYPE_NAME .  (reduce by rule 204)
++
++
++
++	.	reduce by rule 204
++
++
++state 267:
++
++	enumeratorList : enumeratorList . COMMA enumerator 
++	enumSpecifier : ENUM TYPE_NAME LCURLY enumeratorList . trailingComma RCURLY 
++
++	COMMA	shift 270
++
++	trailingComma	goto 359
++
++	.	reduce by rule 168
++
++
++state 268:
++
++	enumeratorList : enumeratorList . COMMA enumerator 
++	enumSpecifier : ENUM ID LCURLY enumeratorList . trailingComma RCURLY 
++
++	COMMA	shift 270
++
++	trailingComma	goto 360
++
++	.	reduce by rule 168
++
++
++state 269:
++
++	enumSpecifier : ENUM LCURLY enumeratorList trailingComma . RCURLY 
++
++	RCURLY	shift 361
++
++
++	.	error
++
++
++state 270:
++
++	trailingComma : COMMA .  (reduce by rule 169)
++	enumeratorList : enumeratorList COMMA . enumerator 
++
++	ID	shift 156
++
++	enumerator	goto 362
++
++	.	reduce by rule 169
++
++
++state 271:
++
++	enumerator : ID EQUALS . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 363
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 272:
++
++	structOrUnionSpecifier : structOrUnion TYPE_NAME LCURLY structDeclarationList RCURLY .  (reduce by rule 133)
++
++
++
++	.	reduce by rule 133
++
++
++state 273:
++
++	structOrUnionSpecifier : structOrUnion ID LCURLY structDeclarationList RCURLY .  (reduce by rule 132)
++
++
++
++	.	reduce by rule 132
++
++
++state 274:
++
++	structDeclaratorList : structDeclaratorList COMMA . structDeclarator 
++
++	COLON	shift 167
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	pointer	goto 64
++	declarator	goto 166
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++	structDeclarator	goto 364
++
++	.	error
++
++
++state 275:
++
++	structDeclaration : specifierQualifierList structDeclaratorList SEMICOLON .  (reduce by rule 140)
++
++
++
++	.	reduce by rule 140
++
++
++state 276:
++
++	structDeclarator : declarator COLON . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 365
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 277:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	structDeclarator : COLON expr .  (reduce by rule 147)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 147
++
++
++state 278:
++
++	notypeStructDeclaratorList : notypeStructDeclaratorList COMMA . structDeclarator 
++
++	COLON	shift 167
++	LPAREN	shift 68
++	TIMES	shift 40
++	ID	shift 39
++	TYPE_NAME	shift 67
++
++	pointer	goto 64
++	declarator	goto 166
++	aftertypeDeclarator	goto 62
++	notypeDeclarator	goto 61
++	aftertypeDirectDeclarator	goto 60
++	notypeDirectDeclarator	goto 16
++	structDeclarator	goto 366
++
++	.	error
++
++
++state 279:
++
++	structDeclaration : typeQualifierList notypeStructDeclaratorList SEMICOLON .  (reduce by rule 141)
++
++
++
++	.	reduce by rule 141
++
++
++state 280:
++
++	reservedSpecifierQualifiers : reservedSpecifierQualifiers . specifierQualifierReserved 
++	specifierQualifierList : typeQualifierList typeSpecifier reservedSpecifierQualifiers .  (reduce by rule 113)
++
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++
++	specifierQualifierReserved	goto 283
++	typeSpecifierReserved	goto 129
++	typeQualifier	goto 128
++	enumSpecifier	goto 127
++	structOrUnionSpecifier	goto 126
++	structOrUnion	goto 2
++
++	.	reduce by rule 113
++
++
++state 281:
++
++	notypeStructDeclarator : notypeDeclarator COLON . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 367
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 282:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	notypeStructDeclarator : COLON expr .  (reduce by rule 150)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 150
++
++
++state 283:
++
++	reservedSpecifierQualifiers : reservedSpecifierQualifiers specifierQualifierReserved .  (reduce by rule 115)
++
++
++
++	.	reduce by rule 115
++
++
++state 284:
++
++	compoundStatement : LCURLY pushScope declarationList ostatementlist . popScope RCURLY 
++
++
++	popScope	goto 368
++
++	.	reduce by rule 246
++
++
++state 285:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	exprWComma : exprWComma COMMA expr .  (reduce by rule 92)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 92
++
++
++state 286:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr RSHIFT expr .  (reduce by rule 62)
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 62
++
++
++state 287:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr LSHIFT expr .  (reduce by rule 61)
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 61
++
++
++state 288:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr AND expr .  (reduce by rule 51)
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 51
++
++
++state 289:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr OR expr .  (reduce by rule 50)
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 50
++
++
++state 290:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr NEQ expr .  (reduce by rule 56)
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 56
++
++
++state 291:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr EQ expr .  (reduce by rule 55)
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 55
++
++
++state 292:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr GT expr .  (reduce by rule 58)
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 58
++
++
++state 293:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr LT expr .  (reduce by rule 57)
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 57
++
++
++state 294:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr GTE expr .  (reduce by rule 60)
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 60
++
++
++state 295:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr LTE expr .  (reduce by rule 59)
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 59
++
++
++state 296:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr RSHIFTEQUALS expr .  (reduce by rule 48)
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 48
++
++
++state 297:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr LSHIFTEQUALS expr .  (reduce by rule 47)
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 47
++
++
++state 298:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr ANDEQUALS expr .  (reduce by rule 46)
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 46
++
++
++state 299:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr OREQUALS expr .  (reduce by rule 45)
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 45
++
++
++state 300:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr DIVEQUALS expr .  (reduce by rule 42)
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 42
++
++
++state 301:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr TIMESEQUALS expr .  (reduce by rule 41)
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 41
++
++
++state 302:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr MODEQUALS expr .  (reduce by rule 43)
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 43
++
++
++state 303:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr XOREQUALS expr .  (reduce by rule 44)
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 44
++
++
++state 304:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr MINUSEQUALS expr .  (reduce by rule 40)
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 40
++
++
++state 305:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr PLUSEQUALS expr .  (reduce by rule 39)
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 39
++
++
++state 306:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr EQUALS expr .  (reduce by rule 49)
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 49
++
++
++state 307:
++
++	expr : expr ARROW TYPE_NAME .  (reduce by rule 82)
++
++
++
++	.	reduce by rule 82
++
++
++state 308:
++
++	expr : expr ARROW ID .  (reduce by rule 80)
++
++
++
++	.	reduce by rule 80
++
++
++state 309:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr TIMES expr .  (reduce by rule 65)
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 65
++
++
++state 310:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr HAT expr .  (reduce by rule 53)
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	AMP	shift 208
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 53
++
++
++state 311:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr MINUS expr .  (reduce by rule 64)
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 64
++
++
++state 312:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr PLUS expr .  (reduce by rule 63)
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 63
++
++
++state 313:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr DIVIDE expr .  (reduce by rule 66)
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 66
++
++
++state 314:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr BAR expr .  (reduce by rule 52)
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	AMP	shift 208
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 52
++
++
++state 315:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr AMP expr .  (reduce by rule 54)
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	PERCENT	shift 209
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 54
++
++
++state 316:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr PERCENT expr .  (reduce by rule 67)
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 67
++
++
++state 317:
++
++	expr : expr QUESTION exprWComma . COLON expr 
++	exprWComma : exprWComma . COMMA expr 
++
++	COLON	shift 369
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 318:
++
++	expr : expr DOT TYPE_NAME .  (reduce by rule 81)
++
++
++
++	.	reduce by rule 81
++
++
++state 319:
++
++	expr : expr DOT ID .  (reduce by rule 79)
++
++
++
++	.	reduce by rule 79
++
++
++state 320:
++
++	expr : expr LBRACE exprWComma . RBRACE 
++	exprWComma : exprWComma . COMMA expr 
++
++	RBRACE	shift 370
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 321:
++
++	expr : expr LPAREN argumentExprList . RPAREN 
++	argumentExprList : argumentExprList . COMMA expr 
++
++	RPAREN	shift 372
++	COMMA	shift 371
++
++
++	.	error
++
++
++state 322:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	argumentExprList : expr .  (reduce by rule 95)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 95
++
++
++state 323:
++
++	expr : expr LPAREN RPAREN .  (reduce by rule 77)
++
++
++
++	.	reduce by rule 77
++
++
++state 324:
++
++	expr : LPAREN typeName . RPAREN expr 
++	expr : SIZEOF LPAREN typeName . RPAREN 
++
++	RPAREN	shift 373
++
++
++	.	error
++
++
++state 325:
++
++	statement : GOTO ID SEMICOLON .  (reduce by rule 13)
++
++
++
++	.	reduce by rule 13
++
++
++state 326:
++
++	statement : RETURN opExpr SEMICOLON .  (reduce by rule 12)
++
++
++
++	.	reduce by rule 12
++
++
++state 327:
++
++	statement : WHILE LPAREN exprWComma . RPAREN statement 
++	exprWComma : exprWComma . COMMA expr 
++
++	RPAREN	shift 374
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 328:
++
++	statement : DEFAULT COLON statement .  (reduce by rule 16)
++
++
++
++	.	reduce by rule 16
++
++
++state 329:
++
++	statement : CASE exprWComma COLON . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 375
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 330:
++
++	statement : SWITCH LPAREN exprWComma . RPAREN statement 
++	exprWComma : exprWComma . COMMA expr 
++
++	RPAREN	shift 376
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 331:
++
++	statement : DO statement WHILE . LPAREN exprWComma RPAREN SEMICOLON 
++
++	LPAREN	shift 377
++
++
++	.	error
++
++
++state 332:
++
++	statement : FOR LPAREN opExpr . SEMICOLON opExpr SEMICOLON opExpr RPAREN statement 
++
++	SEMICOLON	shift 378
++
++
++	.	error
++
++
++state 333:
++
++	statement : IF LPAREN exprWComma . RPAREN statement 
++	statement : IF LPAREN exprWComma . RPAREN statement ELSE statement 
++	exprWComma : exprWComma . COMMA expr 
++
++	RPAREN	shift 379
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 334:
++
++	statement : ID COLON statement .  (reduce by rule 15)
++
++
++
++	.	reduce by rule 15
++
++
++state 335:
++
++	abstractDeclarator : pointer .  (reduce by rule 223)
++	abstractDeclarator : pointer . directAbstractDeclarator 
++
++	LPAREN	shift 337
++	LBRACE	shift 259
++
++	directAbstractDeclarator	goto 348
++
++	.	reduce by rule 223
++
++
++state 336:
++
++	typeName : specifierQualifierList abstractDeclarator .  (reduce by rule 98)
++
++
++
++	.	reduce by rule 98
++
++
++state 337:
++
++	directAbstractDeclarator : LPAREN . abstractDeclarator RPAREN 
++	directAbstractDeclarator : LPAREN . RPAREN 
++	directAbstractDeclarator : LPAREN . parameterTypeList RPAREN 
++
++	LPAREN	shift 337
++	RPAREN	shift 355
++	LBRACE	shift 259
++	TIMES	shift 40
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	abstractDeclarator	goto 354
++	directAbstractDeclarator	goto 257
++	pointer	goto 335
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	parameterList	goto 146
++	parameterTypeList	goto 353
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 338:
++
++	expr : LPAREN typeName RPAREN . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 380
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 339:
++
++	expr : LPAREN exprWComma RPAREN .  (reduce by rule 83)
++
++
++
++	.	reduce by rule 83
++
++
++state 340:
++
++	initializer : LCURLY initializerList . trailingComma RCURLY 
++	initializerList : initializerList . COMMA initializer 
++
++	COMMA	shift 382
++
++	trailingComma	goto 381
++
++	.	reduce by rule 168
++
++
++state 341:
++
++	initializerList : initializer .  (reduce by rule 212)
++
++
++
++	.	reduce by rule 212
++
++
++state 342:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LBRACE expr RBRACE .  (reduce by rule 193)
++
++
++
++	.	reduce by rule 193
++
++
++state 343:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN parameterTypeList RPAREN .  (reduce by rule 195)
++
++
++
++	.	reduce by rule 195
++
++
++state 344:
++
++	aftertypeDirectDeclarator : aftertypeDirectDeclarator LPAREN identlist RPAREN .  (reduce by rule 196)
++
++
++
++	.	reduce by rule 196
++
++
++state 345:
++
++	parameterList : parameterList COMMA parameterDeclaration .  (reduce by rule 238)
++
++
++
++	.	reduce by rule 238
++
++
++state 346:
++
++	parameterTypeList : parameterList COMMA ELIPSIS .  (reduce by rule 236)
++
++
++
++	.	reduce by rule 236
++
++
++state 347:
++
++	identlist : identlist COMMA ID .  (reduce by rule 217)
++
++
++
++	.	reduce by rule 217
++
++
++state 348:
++
++	abstractDeclarator : pointer directAbstractDeclarator .  (reduce by rule 225)
++	directAbstractDeclarator : directAbstractDeclarator . LBRACE RBRACE 
++	directAbstractDeclarator : directAbstractDeclarator . LBRACE expr RBRACE 
++	directAbstractDeclarator : directAbstractDeclarator . LPAREN RPAREN 
++	directAbstractDeclarator : directAbstractDeclarator . LPAREN parameterTypeList RPAREN 
++
++	LPAREN	shift 350
++	LBRACE	shift 349
++
++
++	.	reduce by rule 225
++
++
++state 349:
++
++	directAbstractDeclarator : directAbstractDeclarator LBRACE . RBRACE 
++	directAbstractDeclarator : directAbstractDeclarator LBRACE . expr RBRACE 
++
++	LPAREN	shift 124
++	RBRACE	shift 384
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 383
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 350:
++
++	directAbstractDeclarator : directAbstractDeclarator LPAREN . RPAREN 
++	directAbstractDeclarator : directAbstractDeclarator LPAREN . parameterTypeList RPAREN 
++
++	RPAREN	shift 386
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	parameterList	goto 146
++	parameterTypeList	goto 385
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 351:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	directAbstractDeclarator : LBRACE expr . RBRACE 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	RBRACE	shift 387
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	error
++
++
++state 352:
++
++	directAbstractDeclarator : LBRACE RBRACE .  (reduce by rule 227)
++
++
++
++	.	reduce by rule 227
++
++
++state 353:
++
++	directAbstractDeclarator : LPAREN parameterTypeList . RPAREN 
++
++	RPAREN	shift 388
++
++
++	.	error
++
++
++state 354:
++
++	directAbstractDeclarator : LPAREN abstractDeclarator . RPAREN 
++
++	RPAREN	shift 389
++
++
++	.	error
++
++
++state 355:
++
++	directAbstractDeclarator : LPAREN RPAREN .  (reduce by rule 231)
++
++
++
++	.	reduce by rule 231
++
++
++state 356:
++
++	parmDirectDeclarator : parmDirectDeclarator LBRACE . RBRACE 
++	parmDirectDeclarator : parmDirectDeclarator LBRACE . expr RBRACE 
++
++	LPAREN	shift 124
++	RBRACE	shift 391
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 390
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 357:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN . RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator LPAREN . parameterTypeList RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator LPAREN . identlist RPAREN 
++
++	RPAREN	shift 394
++	ID	shift 150
++	EXTERN	shift 38
++	AUTO	shift 37
++	STATIC	shift 36
++	REGISTER	shift 35
++	CONST	shift 34
++	VOLATILE	shift 33
++	CHAR	shift 32
++	DOUBLE	shift 31
++	ENUM	shift 30
++	FLOAT	shift 29
++	INT	shift 28
++	LONG	shift 27
++	SHORT	shift 26
++	STRUCT	shift 25
++	UNION	shift 24
++	UNSIGNED	shift 23
++	SIGNED	shift 22
++	VOID	shift 21
++	TYPEDEF	shift 20
++	TYPE_NAME	shift 19
++
++	declarationSpecifiers	goto 149
++	declarationModifiers	goto 148
++	storageClassSpecifier	goto 13
++	typeSpecifier	goto 12
++	typeSpecifierReserved	goto 11
++	typeQualifier	goto 10
++	enumSpecifier	goto 9
++	structOrUnionSpecifier	goto 8
++	identlist	goto 393
++	parameterList	goto 146
++	parameterTypeList	goto 392
++	parameterDeclaration	goto 144
++	structOrUnion	goto 2
++
++	.	error
++
++
++state 358:
++
++	parmDeclarator : pointer parmDirectDeclarator .  (reduce by rule 185)
++	parmDirectDeclarator : parmDirectDeclarator . LBRACE RBRACE 
++	parmDirectDeclarator : parmDirectDeclarator . LBRACE expr RBRACE 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN parameterTypeList RPAREN 
++	parmDirectDeclarator : parmDirectDeclarator . LPAREN identlist RPAREN 
++
++	LPAREN	shift 357
++	LBRACE	shift 356
++
++
++	.	reduce by rule 185
++
++
++state 359:
++
++	enumSpecifier : ENUM TYPE_NAME LCURLY enumeratorList trailingComma . RCURLY 
++
++	RCURLY	shift 395
++
++
++	.	error
++
++
++state 360:
++
++	enumSpecifier : ENUM ID LCURLY enumeratorList trailingComma . RCURLY 
++
++	RCURLY	shift 396
++
++
++	.	error
++
++
++state 361:
++
++	enumSpecifier : ENUM LCURLY enumeratorList trailingComma RCURLY .  (reduce by rule 154)
++
++
++
++	.	reduce by rule 154
++
++
++state 362:
++
++	enumeratorList : enumeratorList COMMA enumerator .  (reduce by rule 159)
++
++
++
++	.	reduce by rule 159
++
++
++state 363:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	enumerator : ID EQUALS expr .  (reduce by rule 162)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 162
++
++
++state 364:
++
++	structDeclaratorList : structDeclaratorList COMMA structDeclarator .  (reduce by rule 143)
++
++
++
++	.	reduce by rule 143
++
++
++state 365:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	structDeclarator : declarator COLON expr .  (reduce by rule 148)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 148
++
++
++state 366:
++
++	notypeStructDeclaratorList : notypeStructDeclaratorList COMMA structDeclarator .  (reduce by rule 145)
++
++
++
++	.	reduce by rule 145
++
++
++state 367:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	notypeStructDeclarator : notypeDeclarator COLON expr .  (reduce by rule 151)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 151
++
++
++state 368:
++
++	compoundStatement : LCURLY pushScope declarationList ostatementlist popScope . RCURLY 
++
++	RCURLY	shift 397
++
++
++	.	error
++
++
++state 369:
++
++	expr : expr QUESTION exprWComma COLON . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 398
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 370:
++
++	expr : expr LBRACE exprWComma RBRACE .  (reduce by rule 76)
++
++
++
++	.	reduce by rule 76
++
++
++state 371:
++
++	argumentExprList : argumentExprList COMMA . expr 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 399
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 372:
++
++	expr : expr LPAREN argumentExprList RPAREN .  (reduce by rule 78)
++
++
++
++	.	reduce by rule 78
++
++
++state 373:
++
++	expr : LPAREN typeName RPAREN . expr 
++	expr : SIZEOF LPAREN typeName RPAREN .  (reduce by rule 75)
++
++	LPAREN	shift 124
++	TILDE	shift 122
++	BANG	shift 119
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 380
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 75
++
++
++state 374:
++
++	statement : WHILE LPAREN exprWComma RPAREN . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 400
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 375:
++
++	statement : CASE exprWComma COLON statement .  (reduce by rule 17)
++
++
++
++	.	reduce by rule 17
++
++
++state 376:
++
++	statement : SWITCH LPAREN exprWComma RPAREN . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 401
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 377:
++
++	statement : DO statement WHILE LPAREN . exprWComma RPAREN SEMICOLON 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	exprWComma	goto 402
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 378:
++
++	statement : FOR LPAREN opExpr SEMICOLON . opExpr SEMICOLON opExpr RPAREN statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	opExpr	goto 403
++	exprWComma	goto 221
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 93
++
++
++state 379:
++
++	statement : IF LPAREN exprWComma RPAREN . statement 
++	statement : IF LPAREN exprWComma RPAREN . statement ELSE statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 404
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 380:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : LPAREN typeName RPAREN expr .  (reduce by rule 74)
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++
++
++	.	reduce by rule 74
++
++
++state 381:
++
++	initializer : LCURLY initializerList trailingComma . RCURLY 
++
++	RCURLY	shift 405
++
++
++	.	error
++
++
++state 382:
++
++	trailingComma : COMMA .  (reduce by rule 169)
++	initializerList : initializerList COMMA . initializer 
++
++	LPAREN	shift 124
++	LCURLY	shift 240
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 239
++	unaryOperator	goto 92
++	initializer	goto 406
++	strings	goto 90
++
++	.	reduce by rule 169
++
++
++state 383:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	directAbstractDeclarator : directAbstractDeclarator LBRACE expr . RBRACE 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	RBRACE	shift 407
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	error
++
++
++state 384:
++
++	directAbstractDeclarator : directAbstractDeclarator LBRACE RBRACE .  (reduce by rule 229)
++
++
++
++	.	reduce by rule 229
++
++
++state 385:
++
++	directAbstractDeclarator : directAbstractDeclarator LPAREN parameterTypeList . RPAREN 
++
++	RPAREN	shift 408
++
++
++	.	error
++
++
++state 386:
++
++	directAbstractDeclarator : directAbstractDeclarator LPAREN RPAREN .  (reduce by rule 233)
++
++
++
++	.	reduce by rule 233
++
++
++state 387:
++
++	directAbstractDeclarator : LBRACE expr RBRACE .  (reduce by rule 228)
++
++
++
++	.	reduce by rule 228
++
++
++state 388:
++
++	directAbstractDeclarator : LPAREN parameterTypeList RPAREN .  (reduce by rule 232)
++
++
++
++	.	reduce by rule 232
++
++
++state 389:
++
++	directAbstractDeclarator : LPAREN abstractDeclarator RPAREN .  (reduce by rule 226)
++
++
++
++	.	reduce by rule 226
++
++
++state 390:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	parmDirectDeclarator : parmDirectDeclarator LBRACE expr . RBRACE 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	RBRACE	shift 409
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	error
++
++
++state 391:
++
++	parmDirectDeclarator : parmDirectDeclarator LBRACE RBRACE .  (reduce by rule 205)
++
++
++
++	.	reduce by rule 205
++
++
++state 392:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN parameterTypeList . RPAREN 
++
++	RPAREN	shift 410
++
++
++	.	error
++
++
++state 393:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN identlist . RPAREN 
++	identlist : identlist . COMMA ID 
++
++	RPAREN	shift 411
++	COMMA	shift 253
++
++
++	.	error
++
++
++state 394:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN RPAREN .  (reduce by rule 207)
++
++
++
++	.	reduce by rule 207
++
++
++state 395:
++
++	enumSpecifier : ENUM TYPE_NAME LCURLY enumeratorList trailingComma RCURLY .  (reduce by rule 156)
++
++
++
++	.	reduce by rule 156
++
++
++state 396:
++
++	enumSpecifier : ENUM ID LCURLY enumeratorList trailingComma RCURLY .  (reduce by rule 155)
++
++
++
++	.	reduce by rule 155
++
++
++state 397:
++
++	compoundStatement : LCURLY pushScope declarationList ostatementlist popScope RCURLY .  (reduce by rule 30)
++
++
++
++	.	reduce by rule 30
++
++
++state 398:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr QUESTION exprWComma COLON expr .  (reduce by rule 38)
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 38
++
++
++state 399:
++
++	expr : expr . QUESTION exprWComma COLON expr 
++	expr : expr . PLUSEQUALS expr 
++	expr : expr . MINUSEQUALS expr 
++	expr : expr . TIMESEQUALS expr 
++	expr : expr . DIVEQUALS expr 
++	expr : expr . MODEQUALS expr 
++	expr : expr . XOREQUALS expr 
++	expr : expr . OREQUALS expr 
++	expr : expr . ANDEQUALS expr 
++	expr : expr . LSHIFTEQUALS expr 
++	expr : expr . RSHIFTEQUALS expr 
++	expr : expr . EQUALS expr 
++	expr : expr . OR expr 
++	expr : expr . AND expr 
++	expr : expr . BAR expr 
++	expr : expr . HAT expr 
++	expr : expr . AMP expr 
++	expr : expr . EQ expr 
++	expr : expr . NEQ expr 
++	expr : expr . LT expr 
++	expr : expr . GT expr 
++	expr : expr . LTE expr 
++	expr : expr . GTE expr 
++	expr : expr . LSHIFT expr 
++	expr : expr . RSHIFT expr 
++	expr : expr . PLUS expr 
++	expr : expr . MINUS expr 
++	expr : expr . TIMES expr 
++	expr : expr . DIVIDE expr 
++	expr : expr . PERCENT expr 
++	expr : expr . INC 
++	expr : expr . DEC 
++	expr : expr . LBRACE exprWComma RBRACE 
++	expr : expr . LPAREN RPAREN 
++	expr : expr . LPAREN argumentExprList RPAREN 
++	expr : expr . DOT ID 
++	expr : expr . ARROW ID 
++	expr : expr . DOT TYPE_NAME 
++	expr : expr . ARROW TYPE_NAME 
++	argumentExprList : argumentExprList COMMA expr .  (reduce by rule 96)
++
++	LPAREN	shift 213
++	LBRACE	shift 212
++	DOT	shift 211
++	QUESTION	shift 210
++	PERCENT	shift 209
++	AMP	shift 208
++	BAR	shift 207
++	DIVIDE	shift 206
++	PLUS	shift 205
++	MINUS	shift 204
++	HAT	shift 203
++	TIMES	shift 202
++	INC	shift 201
++	DEC	shift 200
++	ARROW	shift 199
++	EQUALS	shift 198
++	PLUSEQUALS	shift 197
++	MINUSEQUALS	shift 196
++	XOREQUALS	shift 195
++	MODEQUALS	shift 194
++	TIMESEQUALS	shift 193
++	DIVEQUALS	shift 192
++	OREQUALS	shift 191
++	ANDEQUALS	shift 190
++	LSHIFTEQUALS	shift 189
++	RSHIFTEQUALS	shift 188
++	LTE	shift 187
++	GTE	shift 186
++	LT	shift 185
++	GT	shift 184
++	EQ	shift 183
++	NEQ	shift 182
++	OR	shift 181
++	AND	shift 180
++	LSHIFT	shift 179
++	RSHIFT	shift 178
++
++
++	.	reduce by rule 96
++
++
++state 400:
++
++	statement : WHILE LPAREN exprWComma RPAREN statement .  (reduce by rule 7)
++
++
++
++	.	reduce by rule 7
++
++
++state 401:
++
++	statement : SWITCH LPAREN exprWComma RPAREN statement .  (reduce by rule 8)
++
++
++
++	.	reduce by rule 8
++
++
++state 402:
++
++	statement : DO statement WHILE LPAREN exprWComma . RPAREN SEMICOLON 
++	exprWComma : exprWComma . COMMA expr 
++
++	RPAREN	shift 412
++	COMMA	shift 176
++
++
++	.	error
++
++
++state 403:
++
++	statement : FOR LPAREN opExpr SEMICOLON opExpr . SEMICOLON opExpr RPAREN statement 
++
++	SEMICOLON	shift 413
++
++
++	.	error
++
++error:  state 404: shift/reduce conflict (shift ELSE, reduce by rule 18)
++
++state 404:
++
++	statement : IF LPAREN exprWComma RPAREN statement .  (reduce by rule 18)
++	statement : IF LPAREN exprWComma RPAREN statement . ELSE statement 
++
++	ELSE	shift 414
++
++
++	.	reduce by rule 18
++
++
++state 405:
++
++	initializer : LCURLY initializerList trailingComma RCURLY .  (reduce by rule 211)
++
++
++
++	.	reduce by rule 211
++
++
++state 406:
++
++	initializerList : initializerList COMMA initializer .  (reduce by rule 213)
++
++
++
++	.	reduce by rule 213
++
++
++state 407:
++
++	directAbstractDeclarator : directAbstractDeclarator LBRACE expr RBRACE .  (reduce by rule 230)
++
++
++
++	.	reduce by rule 230
++
++
++state 408:
++
++	directAbstractDeclarator : directAbstractDeclarator LPAREN parameterTypeList RPAREN .  (reduce by rule 234)
++
++
++
++	.	reduce by rule 234
++
++
++state 409:
++
++	parmDirectDeclarator : parmDirectDeclarator LBRACE expr RBRACE .  (reduce by rule 206)
++
++
++
++	.	reduce by rule 206
++
++
++state 410:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN parameterTypeList RPAREN .  (reduce by rule 208)
++
++
++
++	.	reduce by rule 208
++
++
++state 411:
++
++	parmDirectDeclarator : parmDirectDeclarator LPAREN identlist RPAREN .  (reduce by rule 209)
++
++
++
++	.	reduce by rule 209
++
++
++state 412:
++
++	statement : DO statement WHILE LPAREN exprWComma RPAREN . SEMICOLON 
++
++	SEMICOLON	shift 415
++
++
++	.	error
++
++
++state 413:
++
++	statement : FOR LPAREN opExpr SEMICOLON opExpr SEMICOLON . opExpr RPAREN statement 
++
++	LPAREN	shift 124
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 142
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	SIZEOF	shift 99
++
++	expr	goto 94
++	opExpr	goto 416
++	exprWComma	goto 221
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	reduce by rule 93
++
++
++state 414:
++
++	statement : IF LPAREN exprWComma RPAREN statement ELSE . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 417
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 415:
++
++	statement : DO statement WHILE LPAREN exprWComma RPAREN SEMICOLON .  (reduce by rule 9)
++
++
++
++	.	reduce by rule 9
++
++
++state 416:
++
++	statement : FOR LPAREN opExpr SEMICOLON opExpr SEMICOLON opExpr . RPAREN statement 
++
++	RPAREN	shift 418
++
++
++	.	error
++
++
++state 417:
++
++	statement : IF LPAREN exprWComma RPAREN statement ELSE statement .  (reduce by rule 19)
++
++
++
++	.	reduce by rule 19
++
++
++state 418:
++
++	statement : FOR LPAREN opExpr SEMICOLON opExpr SEMICOLON opExpr RPAREN . statement 
++
++	SEMICOLON	shift 125
++	LPAREN	shift 124
++	LCURLY	shift 52
++	AMP	shift 123
++	TILDE	shift 122
++	PLUS	shift 121
++	MINUS	shift 120
++	BANG	shift 119
++	TIMES	shift 118
++	INC	shift 117
++	DEC	shift 116
++	ID	shift 115
++	DECNUM	shift 114
++	REALNUM	shift 113
++	STRING	shift 112
++	CCONST	shift 111
++	IF	shift 110
++	FOR	shift 109
++	DO	shift 108
++	SWITCH	shift 107
++	CASE	shift 106
++	DEFAULT	shift 105
++	WHILE	shift 104
++	RETURN	shift 103
++	BREAK	shift 102
++	CONTINUE	shift 101
++	GOTO	shift 100
++	SIZEOF	shift 99
++
++	statement	goto 419
++	compoundStatement	goto 95
++	expr	goto 94
++	exprWComma	goto 93
++	unaryOperator	goto 92
++	strings	goto 90
++
++	.	error
++
++
++state 419:
++
++	statement : FOR LPAREN opExpr SEMICOLON opExpr SEMICOLON opExpr RPAREN statement .  (reduce by rule 6)
++
++
++
++	.	reduce by rule 6
++
++
++state 420:
++
++
++	EOF	accept
++
++
++	.	error
++
++2243 of 3800 action table entries left after compaction
++712 goto table entries
+diff -Naur ckit/src/parser/grammar/c.grm.sig ckit-mlton/src/parser/grammar/c.grm.sig
+--- ckit/src/parser/grammar/c.grm.sig	1969-12-31 19:00:00.000000000 -0500
++++ ckit-mlton/src/parser/grammar/c.grm.sig	2006-05-02 23:00:53.000000000 -0400
+@@ -0,0 +1,101 @@
++signature C_TOKENS =
++sig
++type ('a,'b) token
++type svalue
++val TYPE_NAME: (string) *  'a * 'a -> (svalue,'a) token
++val ELIPSIS:  'a * 'a -> (svalue,'a) token
++val UNARY:  'a * 'a -> (svalue,'a) token
++val TYPEDEF:  'a * 'a -> (svalue,'a) token
++val SIZEOF:  'a * 'a -> (svalue,'a) token
++val VOID:  'a * 'a -> (svalue,'a) token
++val SIGNED:  'a * 'a -> (svalue,'a) token
++val UNSIGNED:  'a * 'a -> (svalue,'a) token
++val UNION:  'a * 'a -> (svalue,'a) token
++val STRUCT:  'a * 'a -> (svalue,'a) token
++val SATURATE:  'a * 'a -> (svalue,'a) token
++val FRACTIONAL:  'a * 'a -> (svalue,'a) token
++val SHORT:  'a * 'a -> (svalue,'a) token
++val LONG:  'a * 'a -> (svalue,'a) token
++val INT:  'a * 'a -> (svalue,'a) token
++val FLOAT:  'a * 'a -> (svalue,'a) token
++val ENUM:  'a * 'a -> (svalue,'a) token
++val DOUBLE:  'a * 'a -> (svalue,'a) token
++val CHAR:  'a * 'a -> (svalue,'a) token
++val GOTO:  'a * 'a -> (svalue,'a) token
++val CONTINUE:  'a * 'a -> (svalue,'a) token
++val BREAK:  'a * 'a -> (svalue,'a) token
++val RETURN:  'a * 'a -> (svalue,'a) token
++val WHILE:  'a * 'a -> (svalue,'a) token
++val DEFAULT:  'a * 'a -> (svalue,'a) token
++val CASE:  'a * 'a -> (svalue,'a) token
++val SWITCH:  'a * 'a -> (svalue,'a) token
++val DO:  'a * 'a -> (svalue,'a) token
++val FOR:  'a * 'a -> (svalue,'a) token
++val ELSE:  'a * 'a -> (svalue,'a) token
++val THEN:  'a * 'a -> (svalue,'a) token
++val IF:  'a * 'a -> (svalue,'a) token
++val VOLATILE:  'a * 'a -> (svalue,'a) token
++val CONST:  'a * 'a -> (svalue,'a) token
++val REGISTER:  'a * 'a -> (svalue,'a) token
++val STATIC:  'a * 'a -> (svalue,'a) token
++val AUTO:  'a * 'a -> (svalue,'a) token
++val EXTERN:  'a * 'a -> (svalue,'a) token
++val CCONST: (LargeInt.int) *  'a * 'a -> (svalue,'a) token
++val STRING: (string) *  'a * 'a -> (svalue,'a) token
++val REALNUM: (real) *  'a * 'a -> (svalue,'a) token
++val DECNUM: (LargeInt.int) *  'a * 'a -> (svalue,'a) token
++val RSHIFT:  'a * 'a -> (svalue,'a) token
++val LSHIFT:  'a * 'a -> (svalue,'a) token
++val AND:  'a * 'a -> (svalue,'a) token
++val OR:  'a * 'a -> (svalue,'a) token
++val NEQ:  'a * 'a -> (svalue,'a) token
++val EQ:  'a * 'a -> (svalue,'a) token
++val GT:  'a * 'a -> (svalue,'a) token
++val LT:  'a * 'a -> (svalue,'a) token
++val GTE:  'a * 'a -> (svalue,'a) token
++val LTE:  'a * 'a -> (svalue,'a) token
++val RSHIFTEQUALS:  'a * 'a -> (svalue,'a) token
++val LSHIFTEQUALS:  'a * 'a -> (svalue,'a) token
++val ANDEQUALS:  'a * 'a -> (svalue,'a) token
++val OREQUALS:  'a * 'a -> (svalue,'a) token
++val DIVEQUALS:  'a * 'a -> (svalue,'a) token
++val TIMESEQUALS:  'a * 'a -> (svalue,'a) token
++val MODEQUALS:  'a * 'a -> (svalue,'a) token
++val XOREQUALS:  'a * 'a -> (svalue,'a) token
++val MINUSEQUALS:  'a * 'a -> (svalue,'a) token
++val PLUSEQUALS:  'a * 'a -> (svalue,'a) token
++val EQUALS:  'a * 'a -> (svalue,'a) token
++val ID: (string) *  'a * 'a -> (svalue,'a) token
++val ARROW:  'a * 'a -> (svalue,'a) token
++val DEC:  'a * 'a -> (svalue,'a) token
++val INC:  'a * 'a -> (svalue,'a) token
++val TIMES:  'a * 'a -> (svalue,'a) token
++val BANG:  'a * 'a -> (svalue,'a) token
++val HAT:  'a * 'a -> (svalue,'a) token
++val MINUS:  'a * 'a -> (svalue,'a) token
++val PLUS:  'a * 'a -> (svalue,'a) token
++val DIVIDE:  'a * 'a -> (svalue,'a) token
++val TILDE:  'a * 'a -> (svalue,'a) token
++val BAR:  'a * 'a -> (svalue,'a) token
++val AMP:  'a * 'a -> (svalue,'a) token
++val PERCENT:  'a * 'a -> (svalue,'a) token
++val QUESTION:  'a * 'a -> (svalue,'a) token
++val COMMA:  'a * 'a -> (svalue,'a) token
++val DOT:  'a * 'a -> (svalue,'a) token
++val RBRACE:  'a * 'a -> (svalue,'a) token
++val LBRACE:  'a * 'a -> (svalue,'a) token
++val RCURLY:  'a * 'a -> (svalue,'a) token
++val LCURLY:  'a * 'a -> (svalue,'a) token
++val RPAREN:  'a * 'a -> (svalue,'a) token
++val LPAREN:  'a * 'a -> (svalue,'a) token
++val SEMICOLON:  'a * 'a -> (svalue,'a) token
++val COLON:  'a * 'a -> (svalue,'a) token
++val EOF:  'a * 'a -> (svalue,'a) token
++end
++signature C_LRVALS=
++sig
++structure Tokens : C_TOKENS
++structure ParserData:PARSER_DATA
++sharing type ParserData.Token.token = Tokens.token
++sharing type ParserData.svalue = Tokens.svalue
++end
 diff -Naur ckit/src/parser/grammar/c.grm.sml ckit-mlton/src/parser/grammar/c.grm.sml
---- ckit/src/parser/grammar/c.grm.sml	2005-11-21 11:29:22.000000000 -0500
-+++ ckit-mlton/src/parser/grammar/c.grm.sml	2005-11-21 11:29:23.000000000 -0500
-@@ -1866,10 +1866,11 @@
- (T 5) $$ (T 4) $$ (T 3) $$ (T 2) $$ (T 1) $$ (T 0)end
- structure Actions =
- struct 
+--- ckit/src/parser/grammar/c.grm.sml	1969-12-31 19:00:00.000000000 -0500
++++ ckit-mlton/src/parser/grammar/c.grm.sml	2006-05-02 23:00:53.000000000 -0400
+@@ -0,0 +1,3866 @@
++functor LrValsFun(structure Token : TOKEN 
++			    ) = 
++struct
++structure ParserData=
++struct
++structure Header = 
++struct
++(* DO NOT CHANGE THIS FILE -- this file was generated from cd.grm *)
++
++(* Copyright (c) 1998 by Lucent Technologies *)
++
++(* new comments from Satish Chandra, 6/21/99 *)
++(* Overriding design approach: 
++ *
++ * Accept all legal programs, but possibly some illegal ones at this stage. 
++ * Do not attempt to make a really tight grammar. Our tools are supposed to
++ * work on "correct" C programs (i.e. those that cc -ansi would compile without
++ * warnings). Of course, a type checker on the parse tree can report some errors
++ * as syntax errors.
++ *
++ * Note on MARK:
++ *
++ * externalDecl, statement, and expression are the non-terms that are marked.
++ * Compound statements are not separately marked.
++ * declarations eventually become either a statement or a externalDecl
++ *   if they are outside any function. They are marked accordingly.
++ *
++ * Note on function definitions:
++ *
++ * The order of the paramaters will always come from the FuncDecr.
++ * The types of the parameter may come from the second declaration list  
++ * (in K&R style)
++ *
++ * Note on the structure of the grammar:
++ *
++ * It is difficult to write a LALR(1) grammar based on the grammar given at
++ * the back of the K&R book. The basic difficulty is that both TYPE_NAME and
++ * ID are tokens that are strings, but it depends on the context whether
++ * a given string is to be treated as an ID or a TYPE_NAME.
++ * We have borrowed the solution used in GCC's parser specification. In this
++ * scheme, the lexer always return the token TYPE_NAME if a name has been 
++ * defined as a type name (via a typedef) in an applicable scope. The grammar 
++ * productions are heavily rearranged (from K&R's grammar) to do the right 
++ * thing. In this rearrangement, the basic idea is that a TYPE_NAME is  
++ * allowed to appear in a declaration as a plain identifier only after a type 
++ * specifier has previously appeared in the declaration. Also, a TYPE_NAME may 
++ * appear only once in a declaration as a type specifier.
++ *)
++
++(* old comments below *)
++(* Shortcomings *)
++(* 1. No floating-point whatsoever *)
++
++(* Notes on MARK:
++ * externalDecl and statement are the non-terms that are marked.
++ * Compound statements are not separately marked.
++ * expressions are not marked at all.
++ * declarations eventually become either a statement or a externalDecl
++ *   if they are outside any function. they are marked accordingly.
++ *)
++ 
++(* Overriding theme: accept all legal programs, but also some illegal ones at this
++ * stage. Do not attempt to make a really tight grammar. Our tools are supposed to
++ * work on "correct" C programs (i.e. those that cc -ansi would compile without
++ * warnings). Of course, a type checker on the parse tree can report some errors
++ * as syntax errors.
++ *)
++
++(* About function definitions:
++ * The order of the paramaters will always come from the FuncDecr thing 
++ * The types of the parameter may come from the second declaration list  (in K&R style)
++ *)
++
++open ParseTree (* PortingHelp *)
++
++fun markExternalDecl srcMap (d,left,right) = 
++    MARKexternalDecl(SourceMap.location srcMap (left,right), d)
++
++fun markDeclaration srcMap (d,left,right) = 
++    MARKdeclaration(SourceMap.location srcMap (left,right), d)
++
++fun markDeclarator srcMap (d,left,right) = 
++    MARKdeclarator(SourceMap.location srcMap (left,right), d)
++
++fun markStatement srcMap (s,left,right) = 
++    MARKstatement(SourceMap.location srcMap (left, right), s)
++
++fun markExpression srcMap (s,left,right) = 
++    MARKexpression(SourceMap.location srcMap (left, right), s)
++
++val unknown = {storage=[],qualifiers=[],specifiers=[]}:decltype
++
++(* this code duplicated in BuildAst in function processDeclarator *)
++fun ctypeDecrToTypeName (typ as {qualifiers, specifiers},decr) =
++      let fun mkTyp spc = {qualifiers=[], specifiers=[spc]}
++	  fun addQual q = {qualifiers=q::qualifiers, specifiers=specifiers}
++       in case decr
++	    of VarDecr x => (typ,SOME x)
++	     | PointerDecr x =>
++		ctypeDecrToTypeName (mkTyp (Pointer typ),x)
++	     | ArrayDecr (x,sz) =>
++		ctypeDecrToTypeName (mkTyp (Array (sz,typ)),x)
++	     | FuncDecr (x,lst) =>
++		ctypeDecrToTypeName (mkTyp (Function{retType=typ,params=lst}),x)
++	     | QualDecr (q,decr) =>
++		ctypeDecrToTypeName (addQual q, decr)
++	     | EmptyDecr => (typ, NONE)
++	     | EllipsesDecr => (mkTyp Ellipses, SOME("**ellipses**"))
++	     | DecrExt _ => (typ, NONE)  (* should call decr extension? *)
++	     | MARKdeclarator(loc, decr) => ctypeDecrToTypeName(typ, decr)
++      end
++
++fun dclr2str dcl = 
++  (case ctypeDecrToTypeName ({qualifiers=[],specifiers=[]}, dcl)
++     of (_,SOME s) => s
++      | (_,NONE) => "")
++
++fun combineDecltypes ( {qualifiers=q1,storage=st1,specifiers=sp1}
++	           , {qualifiers=q2,storage=st2,specifiers=sp2}
++	           ) =
++  {qualifiers=q1@q2,storage=st1@st2,specifiers=sp1@sp2}  (* @ ok *)
++
++fun applyPointer (PointerDecr x,rest) = PointerDecr (applyPointer (x,rest))
++  | applyPointer (QualDecr (q,x),rest) = QualDecr (q, applyPointer (x,rest))
++  | applyPointer (EmptyDecr, rest) = rest
++  | applyPointer (_, rest) = rest  
++    (* NCH/DBM[6/14/99]: this case can never occur  *)
++
++fun addStorage(st, {qualifiers,storage,specifiers}) =
++        {qualifiers=qualifiers,storage=st::storage,specifiers=specifiers}
++
++fun addQualifiers(qs, {qualifiers,storage,specifiers}) =
++	{qualifiers=qs@qualifiers,storage=storage,specifiers=specifiers} (* @ ok *)
++
++fun addQualifier(q, {qualifiers,storage,specifiers}) =
++	{qualifiers=q::qualifiers,storage=storage,specifiers=specifiers}
++
++fun addSpecifier(sp, {qualifiers,storage,specifiers}) =
++	{qualifiers=qualifiers,storage=storage,specifiers=sp::specifiers}
++
++val addAll = combineDecltypes
++
++fun loopQd (q::rst, acc) = loopQd(rst, QualDecr(q, acc))
++  | loopQd (nil, acc) = acc
++
++fun mkCtype typ = typ
++
++(* DBM: major kludge, using TYPEDEF as storage class *)
++fun insertDeclNames ({storage,...}: decltype, idl) =
++    case storage
++      of [TYPEDEF] =>  List.app (fn x as (dcl,_) => TypeDefs.addTdef (dclr2str dcl)) idl
++       | _ => List.app (fn x as (dcl,_) => TypeDefs.addNoTdef (dclr2str dcl)) idl
++
++fun insertFuncName dcl =
++  let
++    val name = dclr2str dcl
++  in
++    TypeDefs.addNoTdef name
++  end
++
++fun insertFuncParams (FuncDecr (_,params)) : unit = 
++     let
++       fun getName (ct, dclr) = dclr2str dclr
++       val names = map getName params
++     in
++       List.app TypeDefs.addNoTdef names
++     end
++  | insertFuncParams (ArrayDecr(dcl,_)) = insertFuncParams dcl
++  | insertFuncParams (PointerDecr dcl) = insertFuncParams dcl
++  | insertFuncParams _ = ()  (* this is actually an error, but it will be caught in
++		              * BuildAst when processing a PT.FunctionDef *)
++
++abstype 'a seq = SEQ of 'a list
++with val emptySeq = SEQ nil
++     fun singletonSeq x = SEQ[x]
++     fun addToSeq(x, SEQ yl) = SEQ(x :: yl)  (* add to end of sequence! *)
++  (* fun addListToEnd(xl, yl) = SEQ((List.rev xl) @ yl) *)
++     fun addOptToEnd(NONE, yl) = yl
++       | addOptToEnd(SOME x, SEQ yl) = SEQ(x :: yl)
++     fun seqToList(SEQ yl) = List.rev yl
++end
++
++
++end
++structure LrTable = Token.LrTable
++structure Token = Token
++local open LrTable in 
++val table=let val actionRows =
++"\
++\\001\000\001\000\000\000\000\000\
++\\001\000\002\000\169\000\004\000\070\000\022\000\042\000\026\000\041\000\
++\\089\000\069\000\000\000\
++\\001\000\002\000\174\000\004\000\043\000\022\000\042\000\026\000\041\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\089\000\021\000\000\000\
++\\001\000\002\000\226\000\000\000\
++\\001\000\002\000\075\001\011\000\178\000\000\000\
++\\001\000\002\000\115\001\011\000\178\000\000\000\
++\\001\000\003\000\083\002\006\000\130\002\011\000\083\002\027\000\139\000\
++\\052\000\130\002\053\000\130\002\054\000\130\002\055\000\130\002\
++\\056\000\130\002\057\000\130\002\071\000\130\002\072\000\130\002\
++\\073\000\130\002\074\000\130\002\075\000\130\002\076\000\130\002\
++\\077\000\130\002\080\000\130\002\081\000\130\002\082\000\130\002\
++\\083\000\130\002\084\000\130\002\086\000\130\002\089\000\130\002\000\000\
++\\001\000\003\000\087\002\006\000\131\002\011\000\087\002\027\000\135\000\
++\\052\000\131\002\053\000\131\002\054\000\131\002\055\000\131\002\
++\\056\000\131\002\057\000\131\002\071\000\131\002\072\000\131\002\
++\\073\000\131\002\074\000\131\002\075\000\131\002\076\000\131\002\
++\\077\000\131\002\080\000\131\002\081\000\131\002\082\000\131\002\
++\\083\000\131\002\084\000\131\002\086\000\131\002\089\000\131\002\000\000\
++\\001\000\003\000\048\000\000\000\
++\\001\000\003\000\127\000\004\000\126\000\006\000\054\000\007\000\194\001\
++\\014\000\125\000\016\000\124\000\018\000\123\000\019\000\122\000\
++\\021\000\121\000\022\000\120\000\023\000\119\000\024\000\118\000\
++\\026\000\117\000\048\000\116\000\049\000\115\000\050\000\114\000\
++\\051\000\113\000\052\000\156\002\053\000\156\002\054\000\156\002\
++\\055\000\156\002\056\000\156\002\057\000\156\002\058\000\112\000\
++\\061\000\111\000\062\000\110\000\063\000\109\000\064\000\108\000\
++\\065\000\107\000\066\000\106\000\067\000\105\000\068\000\104\000\
++\\069\000\103\000\070\000\102\000\071\000\156\002\072\000\156\002\
++\\073\000\156\002\074\000\156\002\075\000\156\002\076\000\156\002\
++\\077\000\156\002\080\000\156\002\081\000\156\002\082\000\156\002\
++\\083\000\156\002\084\000\156\002\085\000\101\000\086\000\156\002\
++\\089\000\156\002\000\000\
++\\001\000\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\058\000\112\000\061\000\111\000\062\000\110\000\063\000\109\000\
++\\064\000\108\000\065\000\107\000\066\000\106\000\067\000\105\000\
++\\068\000\104\000\069\000\103\000\070\000\102\000\085\000\101\000\000\000\
++\\001\000\003\000\179\000\011\000\178\000\000\000\
++\\001\000\003\000\221\000\000\000\
++\\001\000\003\000\222\000\000\000\
++\\001\000\003\000\021\001\011\000\020\001\000\000\
++\\001\000\003\000\025\001\011\000\024\001\000\000\
++\\001\000\003\000\071\001\000\000\
++\\001\000\003\000\072\001\000\000\
++\\001\000\003\000\124\001\000\000\
++\\001\000\003\000\159\001\000\000\
++\\001\000\003\000\161\001\000\000\
++\\001\000\004\000\043\000\022\000\042\000\026\000\041\000\000\000\
++\\001\000\004\000\043\000\022\000\042\000\026\000\041\000\052\000\040\000\
++\\053\000\039\000\054\000\038\000\055\000\037\000\056\000\036\000\
++\\057\000\035\000\071\000\034\000\072\000\033\000\073\000\032\000\
++\\074\000\031\000\075\000\030\000\076\000\029\000\077\000\028\000\
++\\080\000\027\000\081\000\026\000\082\000\025\000\083\000\024\000\
++\\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\043\000\026\000\041\000\000\000\
++\\001\000\004\000\070\000\022\000\042\000\026\000\041\000\089\000\069\000\000\000\
++\\001\000\004\000\070\000\026\000\041\000\089\000\069\000\000\000\
++\\001\000\004\000\126\000\005\000\069\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\006\000\242\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\145\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\245\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\098\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\130\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\137\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\085\000\101\000\089\000\021\000\000\000\
++\\001\000\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\252\000\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\088\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\133\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\153\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\155\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\219\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\225\000\000\000\
++\\001\000\004\000\228\000\000\000\
++\\001\000\004\000\230\000\000\000\
++\\001\000\004\000\231\000\000\000\
++\\001\000\004\000\006\001\005\000\101\001\008\000\005\001\022\000\042\000\
++\\026\000\041\000\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\004\000\006\001\008\000\005\001\022\000\042\000\026\000\041\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\083\001\005\000\101\001\008\000\005\001\022\000\042\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\123\001\000\000\
++\\001\000\005\000\153\000\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\161\000\000\000\
++\\001\000\005\000\248\000\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\251\000\000\000\
++\\001\000\005\000\253\000\000\000\
++\\001\000\005\000\000\001\011\000\255\000\000\000\
++\\001\000\005\000\084\001\000\000\
++\\001\000\005\000\085\001\011\000\178\000\000\000\
++\\001\000\005\000\089\001\000\000\
++\\001\000\005\000\090\001\011\000\255\000\000\000\
++\\001\000\005\000\118\001\011\000\117\001\000\000\
++\\001\000\005\000\119\001\000\000\
++\\001\000\005\000\120\001\011\000\178\000\000\000\
++\\001\000\005\000\122\001\011\000\178\000\000\000\
++\\001\000\005\000\125\001\011\000\178\000\000\000\
++\\001\000\005\000\132\001\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\005\000\134\001\000\000\
++\\001\000\005\000\135\001\000\000\
++\\001\000\005\000\140\001\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\154\001\000\000\
++\\001\000\005\000\156\001\000\000\
++\\001\000\005\000\157\001\011\000\255\000\000\000\
++\\001\000\005\000\158\001\011\000\178\000\000\000\
++\\001\000\005\000\164\001\000\000\
++\\001\000\006\000\047\000\026\000\046\000\089\000\045\000\000\000\
++\\001\000\006\000\054\000\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\006\000\076\000\026\000\075\000\089\000\074\000\000\000\
++\\001\000\007\000\165\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\217\000\000\000\
++\\001\000\007\000\018\001\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\019\001\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\107\001\000\000\
++\\001\000\007\000\141\001\000\000\
++\\001\000\007\000\142\001\000\000\
++\\001\000\007\000\143\001\000\000\
++\\001\000\007\000\151\001\000\000\
++\\001\000\009\000\116\001\011\000\178\000\000\000\
++\\001\000\026\000\158\000\000\000\
++\\001\000\026\000\220\000\000\000\
++\\001\000\026\000\054\001\089\000\053\001\000\000\
++\\001\000\026\000\065\001\089\000\064\001\000\000\
++\\001\000\026\000\093\001\000\000\
++\\001\000\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\088\000\092\001\
++\\089\000\021\000\000\000\
++\\001\000\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\066\000\077\001\000\000\
++\\001\000\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\089\000\021\000\000\000\
++\\167\001\003\000\044\000\004\000\043\000\022\000\042\000\026\000\041\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\168\001\000\000\
++\\169\001\000\000\
++\\170\001\000\000\
++\\171\001\000\000\
++\\172\001\000\000\
++\\173\001\000\000\
++\\174\001\000\000\
++\\175\001\000\000\
++\\176\001\000\000\
++\\177\001\000\000\
++\\178\001\000\000\
++\\179\001\000\000\
++\\180\001\000\000\
++\\181\001\000\000\
++\\182\001\000\000\
++\\183\001\000\000\
++\\184\001\000\000\
++\\185\001\060\000\160\001\000\000\
++\\186\001\000\000\
++\\187\001\000\000\
++\\188\001\000\000\
++\\189\001\000\000\
++\\190\001\004\000\070\000\022\000\042\000\026\000\041\000\089\000\069\000\000\000\
++\\191\001\011\000\141\000\000\000\
++\\192\001\011\000\136\000\000\000\
++\\193\001\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\058\000\112\000\061\000\111\000\062\000\110\000\063\000\109\000\
++\\064\000\108\000\065\000\107\000\066\000\106\000\067\000\105\000\
++\\068\000\104\000\069\000\103\000\070\000\102\000\085\000\101\000\000\000\
++\\194\001\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\058\000\112\000\061\000\111\000\
++\\062\000\110\000\063\000\109\000\064\000\108\000\065\000\107\000\
++\\066\000\106\000\067\000\105\000\068\000\104\000\069\000\103\000\
++\\070\000\102\000\071\000\034\000\072\000\033\000\073\000\032\000\
++\\074\000\031\000\075\000\030\000\076\000\029\000\077\000\028\000\
++\\080\000\027\000\081\000\026\000\082\000\025\000\083\000\024\000\
++\\084\000\023\000\085\000\101\000\086\000\022\000\089\000\021\000\000\000\
++\\195\001\000\000\
++\\196\001\000\000\
++\\197\001\000\000\
++\\198\001\000\000\
++\\199\001\000\000\
++\\200\001\000\000\
++\\201\001\000\000\
++\\202\001\000\000\
++\\203\001\000\000\
++\\204\001\000\000\
++\\205\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\206\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\207\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\208\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\209\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\210\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\211\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\212\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\213\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\214\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\215\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\216\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\217\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\015\000\209\000\017\000\208\000\018\000\207\000\
++\\019\000\206\000\020\000\205\000\022\000\204\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\218\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\015\000\209\000\017\000\208\000\018\000\207\000\
++\\019\000\206\000\020\000\205\000\022\000\204\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\046\000\181\000\047\000\180\000\000\000\
++\\219\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\017\000\208\000\018\000\207\000\019\000\206\000\
++\\020\000\205\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\038\000\189\000\039\000\188\000\040\000\187\000\
++\\041\000\186\000\042\000\185\000\043\000\184\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\220\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\017\000\208\000\018\000\207\000\019\000\206\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\038\000\189\000\039\000\188\000\040\000\187\000\041\000\186\000\
++\\042\000\185\000\043\000\184\000\046\000\181\000\047\000\180\000\000\000\
++\\221\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\046\000\181\000\047\000\180\000\000\000\
++\\222\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\223\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\224\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\225\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\226\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\227\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\228\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\000\000\
++\\229\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\000\000\
++\\230\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\000\000\
++\\231\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\000\000\
++\\232\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\233\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\234\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\235\001\000\000\
++\\236\001\000\000\
++\\237\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\238\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\239\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\240\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\241\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\242\001\004\000\126\000\016\000\124\000\021\000\121\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\243\001\000\000\
++\\244\001\000\000\
++\\245\001\000\000\
++\\246\001\000\000\
++\\247\001\000\000\
++\\248\001\000\000\
++\\249\001\000\000\
++\\250\001\000\000\
++\\251\001\000\000\
++\\252\001\000\000\
++\\253\001\000\000\
++\\254\001\000\000\
++\\254\001\002\000\233\000\000\000\
++\\255\001\000\000\
++\\000\002\050\000\114\000\000\000\
++\\001\002\000\000\
++\\002\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\003\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\004\002\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\005\002\011\000\178\000\000\000\
++\\006\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\007\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\008\002\004\000\083\001\008\000\005\001\022\000\042\000\000\000\
++\\009\002\000\000\
++\\010\002\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\000\000\
++\\011\002\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\000\000\
++\\012\002\000\000\
++\\013\002\000\000\
++\\014\002\000\000\
++\\015\002\000\000\
++\\016\002\000\000\
++\\017\002\000\000\
++\\018\002\000\000\
++\\019\002\000\000\
++\\020\002\000\000\
++\\021\002\000\000\
++\\022\002\000\000\
++\\023\002\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\000\000\
++\\024\002\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\000\000\
++\\025\002\000\000\
++\\026\002\000\000\
++\\027\002\056\000\036\000\057\000\035\000\000\000\
++\\028\002\000\000\
++\\029\002\000\000\
++\\030\002\000\000\
++\\031\002\000\000\
++\\032\002\000\000\
++\\033\002\000\000\
++\\034\002\000\000\
++\\035\002\000\000\
++\\036\002\000\000\
++\\037\002\000\000\
++\\038\002\000\000\
++\\039\002\000\000\
++\\040\002\000\000\
++\\041\002\000\000\
++\\042\002\000\000\
++\\043\002\000\000\
++\\044\002\000\000\
++\\045\002\006\000\082\000\000\000\
++\\046\002\006\000\081\000\000\000\
++\\047\002\000\000\
++\\048\002\000\000\
++\\049\002\000\000\
++\\050\002\000\000\
++\\051\002\000\000\
++\\052\002\000\000\
++\\053\002\000\000\
++\\054\002\000\000\
++\\055\002\000\000\
++\\056\002\000\000\
++\\057\002\002\000\022\001\000\000\
++\\058\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\059\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\060\002\002\000\027\001\000\000\
++\\061\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\062\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\063\002\000\000\
++\\064\002\000\000\
++\\065\002\000\000\
++\\066\002\000\000\
++\\067\002\000\000\
++\\068\002\006\000\155\000\000\000\
++\\069\002\006\000\154\000\000\000\
++\\070\002\000\000\
++\\071\002\000\000\
++\\072\002\027\000\017\001\000\000\
++\\073\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\074\002\000\000\
++\\075\002\000\000\
++\\076\002\000\000\
++\\077\002\000\000\
++\\078\002\000\000\
++\\079\002\011\000\016\001\000\000\
++\\079\002\011\000\128\001\000\000\
++\\080\002\004\000\126\000\006\000\242\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\080\002\026\000\158\000\000\000\
++\\081\002\000\000\
++\\082\002\000\000\
++\\083\002\027\000\139\000\000\000\
++\\084\002\000\000\
++\\085\002\000\000\
++\\086\002\000\000\
++\\087\002\027\000\135\000\000\000\
++\\088\002\000\000\
++\\089\002\000\000\
++\\090\002\000\000\
++\\091\002\004\000\138\000\008\000\137\000\000\000\
++\\092\002\004\000\138\000\008\000\137\000\000\000\
++\\093\002\004\000\072\000\008\000\071\000\000\000\
++\\094\002\004\000\072\000\008\000\071\000\000\000\
++\\095\002\004\000\103\001\008\000\102\001\000\000\
++\\096\002\004\000\103\001\008\000\102\001\000\000\
++\\097\002\022\000\042\000\056\000\036\000\057\000\035\000\000\000\
++\\098\002\022\000\042\000\000\000\
++\\099\002\000\000\
++\\100\002\000\000\
++\\101\002\000\000\
++\\102\002\000\000\
++\\103\002\000\000\
++\\104\002\000\000\
++\\105\002\000\000\
++\\106\002\000\000\
++\\107\002\000\000\
++\\108\002\000\000\
++\\109\002\000\000\
++\\110\002\000\000\
++\\111\002\000\000\
++\\112\002\000\000\
++\\113\002\000\000\
++\\114\002\000\000\
++\\115\002\000\000\
++\\116\002\000\000\
++\\117\002\000\000\
++\\118\002\000\000\
++\\119\002\000\000\
++\\120\002\000\000\
++\\121\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\122\002\000\000\
++\\123\002\000\000\
++\\124\002\000\000\
++\\125\002\000\000\
++\\126\002\000\000\
++\\127\002\000\000\
++\\128\002\000\000\
++\\129\002\000\000\
++\\132\002\000\000\
++\\133\002\000\000\
++\\134\002\004\000\006\001\008\000\005\001\026\000\041\000\000\000\
++\\134\002\004\000\006\001\008\000\005\001\026\000\041\000\089\000\012\001\000\000\
++\\134\002\004\000\083\001\008\000\005\001\000\000\
++\\135\002\004\000\096\001\008\000\095\001\000\000\
++\\136\002\004\000\096\001\008\000\095\001\000\000\
++\\137\002\000\000\
++\\138\002\000\000\
++\\139\002\000\000\
++\\140\002\000\000\
++\\141\002\000\000\
++\\142\002\000\000\
++\\143\002\000\000\
++\\144\002\000\000\
++\\145\002\000\000\
++\\146\002\011\000\254\000\000\000\
++\\147\002\000\000\
++\\148\002\000\000\
++\\149\002\000\000\
++\\150\002\000\000\
++\\151\002\000\000\
++\\152\002\004\000\006\001\008\000\005\001\022\000\042\000\026\000\041\000\
++\\089\000\012\001\000\000\
++\\153\002\000\000\
++\\154\002\000\000\
++\\155\002\000\000\
++\\157\002\000\000\
++\"
++val actionRowNumbers =
++"\097\000\096\000\073\000\098\000\
++\\008\000\099\000\101\000\074\000\
++\\216\000\217\000\207\000\215\000\
++\\198\000\205\000\022\000\119\000\
++\\025\001\061\001\023\000\218\000\
++\\008\001\219\000\226\000\227\000\
++\\234\000\233\000\221\000\223\000\
++\\222\000\224\000\075\000\225\000\
++\\220\000\250\000\249\000\007\001\
++\\005\001\006\001\004\001\040\001\
++\\029\001\021\000\100\000\232\000\
++\\231\000\093\000\118\000\057\001\
++\\074\000\022\000\119\000\062\001\
++\\009\000\196\000\208\000\198\000\
++\\206\000\007\000\121\000\017\001\
++\\023\001\022\001\021\001\006\000\
++\\025\000\120\000\013\001\033\001\
++\\024\000\028\000\049\000\026\001\
++\\255\000\254\000\086\000\030\001\
++\\213\000\031\001\050\000\093\000\
++\\093\000\235\000\076\000\001\000\
++\\002\000\211\000\058\001\063\001\
++\\019\001\015\001\185\000\092\000\
++\\034\000\011\000\188\000\110\000\
++\\122\000\077\000\124\000\040\000\
++\\087\000\012\000\013\000\190\000\
++\\041\000\003\000\034\000\042\000\
++\\010\000\043\000\044\000\182\000\
++\\186\000\181\000\180\000\184\000\
++\\034\000\034\000\129\000\133\000\
++\\131\000\130\000\132\000\128\000\
++\\033\000\117\000\203\000\204\000\
++\\202\000\201\000\200\000\199\000\
++\\197\000\027\000\024\000\029\000\
++\\051\000\027\000\024\001\024\000\
++\\052\000\035\000\183\000\042\001\
++\\080\001\053\000\078\001\054\000\
++\\046\000\084\001\059\001\044\001\
++\\086\000\086\000\001\001\009\001\
++\\002\001\032\001\214\000\041\001\
++\\078\000\079\000\236\000\228\000\
++\\014\000\239\000\243\000\034\000\
++\\015\000\241\000\211\000\246\000\
++\\034\000\209\000\123\000\168\000\
++\\034\000\116\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\088\000\
++\\165\000\164\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\089\000\
++\\034\000\026\000\125\000\127\000\
++\\169\000\033\000\016\000\107\000\
++\\106\000\191\000\017\000\034\000\
++\\010\000\004\000\034\000\094\000\
++\\190\000\034\000\187\000\010\000\
++\\167\000\166\000\194\000\095\000\
++\\055\000\056\000\020\001\053\001\
++\\027\000\018\001\036\000\035\001\
++\\057\000\058\000\037\001\016\001\
++\\014\001\034\001\043\001\045\001\
++\\091\000\090\000\046\001\086\001\
++\\064\001\067\001\087\001\030\000\
++\\045\000\027\001\083\001\082\001\
++\\065\001\085\001\047\001\009\001\
++\\009\001\080\000\012\001\034\000\
++\\230\000\229\000\001\000\237\000\
++\\034\000\244\000\001\000\238\000\
++\\210\000\034\000\247\000\212\000\
++\\088\001\189\000\158\000\157\000\
++\\147\000\146\000\152\000\151\000\
++\\154\000\153\000\156\000\155\000\
++\\144\000\143\000\142\000\141\000\
++\\138\000\137\000\139\000\140\000\
++\\136\000\135\000\145\000\178\000\
++\\176\000\161\000\149\000\160\000\
++\\159\000\162\000\148\000\150\000\
++\\163\000\005\000\177\000\175\000\
++\\085\000\059\000\192\000\173\000\
++\\060\000\109\000\108\000\061\000\
++\\112\000\010\000\062\000\048\000\
++\\018\000\063\000\111\000\066\001\
++\\195\000\047\000\034\000\179\000\
++\\010\001\055\001\036\001\038\001\
++\\039\001\081\001\079\001\060\001\
++\\068\001\031\000\064\000\037\000\
++\\070\001\065\000\066\000\074\001\
++\\032\000\067\000\028\001\081\000\
++\\082\000\251\000\000\001\003\001\
++\\240\000\245\000\242\000\248\000\
++\\083\000\034\000\172\000\034\000\
++\\174\000\171\000\010\000\113\000\
++\\010\000\034\000\190\000\010\000\
++\\170\000\084\000\011\001\038\000\
++\\072\001\068\000\076\001\071\001\
++\\075\001\069\001\039\000\048\001\
++\\069\000\070\000\050\001\253\000\
++\\252\000\126\000\134\000\193\000\
++\\103\000\104\000\071\000\019\000\
++\\114\000\054\001\056\001\073\001\
++\\077\001\049\001\051\001\052\001\
++\\020\000\190\000\010\000\105\000\
++\\072\000\115\000\010\000\102\000\
++\\000\000"
++val gotoT =
++"\
++\\001\000\164\001\002\000\001\000\000\000\
++\\021\000\018\000\024\000\017\000\027\000\016\000\029\000\015\000\
++\\030\000\014\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\045\000\007\000\
++\\048\000\006\000\049\000\005\000\050\000\004\000\051\000\003\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\006\000\051\000\029\000\050\000\030\000\049\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\046\000\048\000\049\000\047\000\050\000\004\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\031\000\053\000\000\000\
++\\000\000\
++\\018\000\059\000\020\000\058\000\021\000\018\000\024\000\057\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\017\000\066\000\019\000\065\000\021\000\064\000\022\000\063\000\
++\\023\000\062\000\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\021\000\077\000\040\000\076\000\041\000\075\000\000\000\
++\\021\000\018\000\024\000\078\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\082\000\061\000\081\000\000\000\
++\\000\000\
++\\000\000\
++\\006\000\087\000\029\000\050\000\030\000\049\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\049\000\086\000\050\000\004\000\055\000\002\000\000\000\
++\\018\000\059\000\020\000\058\000\021\000\018\000\024\000\088\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\017\000\066\000\019\000\065\000\021\000\064\000\022\000\089\000\
++\\023\000\062\000\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\003\000\098\000\004\000\097\000\005\000\096\000\006\000\095\000\
++\\007\000\094\000\009\000\093\000\010\000\092\000\062\000\091\000\
++\\064\000\090\000\000\000\
++\\032\000\131\000\036\000\130\000\039\000\129\000\040\000\128\000\
++\\043\000\127\000\044\000\126\000\055\000\002\000\000\000\
++\\000\000\
++\\031\000\132\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\026\000\138\000\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\021\000\064\000\023\000\140\000\024\000\078\000\026\000\060\000\
++\\027\000\016\000\000\000\
++\\007\000\141\000\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\147\000\052\000\146\000\053\000\145\000\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\013\000\155\000\014\000\154\000\000\000\
++\\021\000\157\000\000\000\
++\\040\000\076\000\041\000\158\000\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\160\000\061\000\081\000\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\161\000\061\000\081\000\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\165\000\058\000\164\000\000\000\
++\\021\000\018\000\024\000\171\000\027\000\016\000\038\000\170\000\
++\\039\000\011\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\057\000\169\000\059\000\168\000\000\000\
++\\033\000\173\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\029\000\050\000\030\000\049\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\046\000\174\000\049\000\047\000\050\000\004\000\055\000\002\000\000\000\
++\\007\000\175\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\214\000\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\216\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\008\000\222\000\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\225\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\227\000\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\064\000\230\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\232\000\010\000\092\000\064\000\090\000\000\000\
++\\007\000\233\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\237\000\010\000\092\000\037\000\236\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\235\000\
++\\042\000\234\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\032\000\131\000\036\000\130\000\039\000\129\000\040\000\128\000\
++\\043\000\127\000\044\000\126\000\055\000\002\000\000\000\
++\\007\000\239\000\010\000\092\000\034\000\238\000\064\000\090\000\000\000\
++\\017\000\241\000\021\000\064\000\022\000\089\000\023\000\062\000\
++\\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\007\000\242\000\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\245\000\052\000\146\000\053\000\244\000\054\000\144\000\
++\\055\000\002\000\000\000\
++\\007\000\239\000\010\000\092\000\034\000\247\000\064\000\090\000\000\000\
++\\000\000\
++\\017\000\248\000\021\000\064\000\022\000\089\000\023\000\062\000\
++\\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\015\000\002\001\016\000\001\001\021\000\000\001\024\000\255\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\015\000\009\001\016\000\001\001\021\000\008\001\024\000\007\001\
++\\025\000\006\001\027\000\016\000\028\000\005\001\000\000\
++\\000\000\
++\\000\000\
++\\013\000\011\001\014\000\154\000\000\000\
++\\013\000\012\001\014\000\154\000\000\000\
++\\000\000\
++\\012\000\013\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\021\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\033\000\024\001\000\000\
++\\000\000\
++\\007\000\026\001\010\000\092\000\064\000\090\000\000\000\
++\\032\000\027\001\039\000\129\000\040\000\128\000\043\000\127\000\
++\\044\000\126\000\055\000\002\000\000\000\
++\\003\000\098\000\004\000\028\001\005\000\096\000\006\000\095\000\
++\\007\000\094\000\009\000\093\000\010\000\092\000\029\000\050\000\
++\\030\000\049\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\049\000\086\000\
++\\050\000\004\000\055\000\002\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\029\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\030\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\031\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\032\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\033\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\034\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\035\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\036\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\037\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\038\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\039\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\040\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\041\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\042\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\043\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\044\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\045\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\046\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\047\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\048\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\049\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\050\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\053\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\054\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\055\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\056\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\057\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\058\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\059\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\060\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\009\000\061\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\009\000\064\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\066\001\010\000\092\000\011\000\065\001\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\237\000\010\000\092\000\037\000\068\001\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\235\000\
++\\042\000\234\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\071\001\010\000\092\000\064\000\090\000\000\000\
++\\003\000\072\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\009\000\074\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\008\000\076\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\007\000\094\000\009\000\077\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\078\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\015\000\080\001\016\000\001\001\021\000\079\001\000\000\
++\\038\000\170\000\039\000\011\000\043\000\009\000\044\000\008\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\239\000\010\000\092\000\034\000\085\001\035\000\084\001\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\054\000\089\001\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\095\001\010\000\092\000\064\000\090\000\000\000\
++\\015\000\098\001\016\000\001\001\021\000\000\001\024\000\078\000\
++\\027\000\016\000\029\000\149\000\030\000\148\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\052\000\146\000\053\000\097\001\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\027\000\071\000\028\000\102\001\000\000\
++\\000\000\
++\\000\000\
++\\012\000\103\001\000\000\
++\\012\000\104\001\000\000\
++\\000\000\
++\\014\000\106\001\000\000\
++\\007\000\107\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\108\001\000\000\
++\\000\000\
++\\007\000\109\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\110\001\000\000\
++\\000\000\
++\\032\000\027\001\039\000\129\000\040\000\128\000\043\000\127\000\
++\\044\000\126\000\055\000\002\000\000\000\
++\\007\000\111\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\063\000\112\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\119\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\000\000\
++\\000\000\
++\\015\000\098\001\016\000\001\001\021\000\079\001\029\000\149\000\
++\\030\000\148\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\052\000\146\000\
++\\053\000\097\001\054\000\144\000\055\000\002\000\000\000\
++\\007\000\124\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\012\000\125\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\127\001\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\052\000\146\000\053\000\129\001\054\000\144\000\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\134\001\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\137\001\052\000\146\000\053\000\136\001\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\142\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\143\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\124\001\010\000\092\000\064\000\090\000\000\000\
++\\003\000\144\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\145\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\009\000\146\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\008\000\147\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\003\000\148\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\239\000\010\000\092\000\034\000\150\001\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\008\000\160\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\003\000\161\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\163\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\"
++val numstates = 421
++val numrules = 247
++val s = ref "" and index = ref 0
++val string_to_int = fn () => 
++let val i = !index
++in index := i+2; Char.ord(String.sub(!s,i)) + Char.ord(String.sub(!s,i+1)) * 256
++end
++val string_to_list = fn s' =>
++    let val len = String.size s'
++        fun f () =
++           if !index < len then string_to_int() :: f()
++           else nil
++   in index := 0; s := s'; f ()
++   end
++val string_to_pairlist = fn (conv_key,conv_entry) =>
++     let fun f () =
++         case string_to_int()
++         of 0 => EMPTY
++          | n => PAIR(conv_key (n-1),conv_entry (string_to_int()),f())
++     in f
++     end
++val string_to_pairlist_default = fn (conv_key,conv_entry) =>
++    let val conv_row = string_to_pairlist(conv_key,conv_entry)
++    in fn () =>
++       let val default = conv_entry(string_to_int())
++           val row = conv_row()
++       in (row,default)
++       end
++   end
++val string_to_table = fn (convert_row,s') =>
++    let val len = String.size s'
++        fun f ()=
++           if !index < len then convert_row() :: f()
++           else nil
++     in (s := s'; index := 0; f ())
++     end
++local
++  val memo = Array.array(numstates+numrules,ERROR)
++  val _ =let fun g i=(Array.update(memo,i,REDUCE(i-numstates)); g(i+1))
++       fun f i =
++            if i=numstates then g i
++            else (Array.update(memo,i,SHIFT (STATE i)); f (i+1))
++          in f 0 handle Subscript => ()
++          end
++in
++val entry_to_action = fn 0 => ACCEPT | 1 => ERROR | j => Array.sub(memo,(j-2))
++end
++val gotoT=Array.fromList(string_to_table(string_to_pairlist(NT,STATE),gotoT))
++val actionRows=string_to_table(string_to_pairlist_default(T,entry_to_action),actionRows)
++val actionRowNumbers = string_to_list actionRowNumbers
++val actionT = let val actionRowLookUp=
++let val a=Array.fromList(actionRows) in fn i=>Array.sub(a,i) end
++in Array.fromList(map actionRowLookUp actionRowNumbers)
++end
++in LrTable.mkLrTable {actions=actionT,gotos=gotoT,numRules=numrules,
++numStates=numstates,initialState=STATE 0}
++end
++end
++local open Header in
++type pos = int
++type arg = SourceMap.sourcemap
++structure MlyValue = 
++struct
++datatype svalue = VOID' | ntVOID of unit | TYPE_NAME of  (string)
++ | CCONST of  (LargeInt.int) | STRING of  (string)
++ | REALNUM of  (real) | DECNUM of  (LargeInt.int) | ID of  (string)
++ | strings of  (string) | popScope of  (unit) | pushScope of  (unit)
++ | structDeclaration of  ( ( ctype * (declarator * expression) list ) )
++ | structDeclarationList of  ( ( ctype * (declarator * expression) list )  seq)
++ | notypeStructDeclaratorList of  ( ( declarator * expression )  seq)
++ | structDeclaratorList of  ( ( declarator * expression )  seq)
++ | notypeStructDeclarator of  ( ( declarator * expression ) )
++ | structDeclarator of  ( ( declarator * expression ) )
++ | structOrUnion of  (bool)
++ | parameterDeclaration of  ( ( decltype * declarator ) )
++ | parameterTypeList of  ( ( decltype * declarator )  list)
++ | parameterList of  ( ( decltype * declarator )  seq)
++ | externalDeclaration of  (externalDecl option)
++ | declaration1 of  (declaration) | declaration of  (declaration)
++ | functionDefinition of  (externalDecl)
++ | identlist of  ( ( string * int * int )  seq)
++ | declarationList of  (declaration seq)
++ | fDefDeclaration of  ( ( decltype * declarator ) )
++ | structOrUnionSpecifier of  (specifier)
++ | enumSpecifier of  (specifier) | specifierQualifierList of  (ctype)
++ | typeQualifierList of  (qualifier list)
++ | typeQualifier of  (qualifier)
++ | typeSpecifierReserved of  (specifier)
++ | typeSpecifier of  (specifier) | typeName of  (ctype)
++ | storageClassSpecifier of  (storage)
++ | initializerList of  (expression seq) | initializer of  (expression)
++ | reservedSpecifierQualifiers of  (ctype)
++ | specifierQualifierReserved of  (ctype)
++ | reservedDeclarationSpecifier of  (decltype)
++ | declarationModifiers of  (decltype)
++ | declarationSpecifiers of  (decltype)
++ | parmDirectDeclarator of  (declarator)
++ | notypeDirectDeclarator of  (declarator)
++ | aftertypeDirectDeclarator of  (declarator)
++ | parmDeclarator of  (declarator) | notypeDeclarator of  (declarator)
++ | aftertypeDeclarator of  (declarator) | declarator of  (declarator)
++ | pointer of  (declarator)
++ | notypeInitDeclaratorList of  ( ( declarator * expression )  seq)
++ | initDeclaratorList of  ( ( declarator * expression )  seq)
++ | notypeInitDeclarator of  ( ( declarator * expression ) )
++ | initDeclarator of  ( ( declarator * expression ) )
++ | directAbstractDeclarator of  (declarator)
++ | abstractDeclarator of  (declarator)
++ | enumerator of  ( ( string * expression ) )
++ | enumeratorList of  ( ( string * expression )  seq)
++ | trailingComma of  (bool) | argumentExprList of  (expression seq)
++ | unaryOperator of  (operator) | exprWComma of  (expression)
++ | opExpr of  (expression) | expr of  (expression)
++ | compoundStatement of  (statement)
++ | statementlist of  (statement seq)
++ | ostatementlist of  (statement list) | statement of  (statement)
++ | tu of  (externalDecl seq) | translationUnit of  (externalDecl list)
++end
++type svalue = MlyValue.svalue
++type result = externalDecl list
++end
++structure EC=
++struct
++open LrTable
++infix 5 $$
++fun x $$ y = y::x
++val is_keyword =
++fn (T 11) => true | (T 57) => true | (T 58) => true | (T 59) => true
++ | (T 60) => true | (T 61) => true | (T 62) => true | (T 63) => true
++ | (T 64) => true | (T 65) => true | (T 66) => true | (T 67) => true
++ | (T 68) => true | (T 69) => true | _ => false
++val preferred_change : (term list * term list) list = 
++(nil
++ $$ (T 25),nil
++ $$ (T 88))::
++nil
++val noShift = 
++fn (T 0) => true | _ => false
++val showTerminal =
++fn (T 0) => "EOF"
++  | (T 1) => "COLON"
++  | (T 2) => "SEMICOLON"
++  | (T 3) => "LPAREN"
++  | (T 4) => "RPAREN"
++  | (T 5) => "LCURLY"
++  | (T 6) => "RCURLY"
++  | (T 7) => "LBRACE"
++  | (T 8) => "RBRACE"
++  | (T 9) => "DOT"
++  | (T 10) => "COMMA"
++  | (T 11) => "QUESTION"
++  | (T 12) => "PERCENT"
++  | (T 13) => "AMP"
++  | (T 14) => "BAR"
++  | (T 15) => "TILDE"
++  | (T 16) => "DIVIDE"
++  | (T 17) => "PLUS"
++  | (T 18) => "MINUS"
++  | (T 19) => "HAT"
++  | (T 20) => "BANG"
++  | (T 21) => "TIMES"
++  | (T 22) => "INC"
++  | (T 23) => "DEC"
++  | (T 24) => "ARROW"
++  | (T 25) => "ID"
++  | (T 26) => "EQUALS"
++  | (T 27) => "PLUSEQUALS"
++  | (T 28) => "MINUSEQUALS"
++  | (T 29) => "XOREQUALS"
++  | (T 30) => "MODEQUALS"
++  | (T 31) => "TIMESEQUALS"
++  | (T 32) => "DIVEQUALS"
++  | (T 33) => "OREQUALS"
++  | (T 34) => "ANDEQUALS"
++  | (T 35) => "LSHIFTEQUALS"
++  | (T 36) => "RSHIFTEQUALS"
++  | (T 37) => "LTE"
++  | (T 38) => "GTE"
++  | (T 39) => "LT"
++  | (T 40) => "GT"
++  | (T 41) => "EQ"
++  | (T 42) => "NEQ"
++  | (T 43) => "OR"
++  | (T 44) => "AND"
++  | (T 45) => "LSHIFT"
++  | (T 46) => "RSHIFT"
++  | (T 47) => "DECNUM"
++  | (T 48) => "REALNUM"
++  | (T 49) => "STRING"
++  | (T 50) => "CCONST"
++  | (T 51) => "EXTERN"
++  | (T 52) => "AUTO"
++  | (T 53) => "STATIC"
++  | (T 54) => "REGISTER"
++  | (T 55) => "CONST"
++  | (T 56) => "VOLATILE"
++  | (T 57) => "IF"
++  | (T 58) => "THEN"
++  | (T 59) => "ELSE"
++  | (T 60) => "FOR"
++  | (T 61) => "DO"
++  | (T 62) => "SWITCH"
++  | (T 63) => "CASE"
++  | (T 64) => "DEFAULT"
++  | (T 65) => "WHILE"
++  | (T 66) => "RETURN"
++  | (T 67) => "BREAK"
++  | (T 68) => "CONTINUE"
++  | (T 69) => "GOTO"
++  | (T 70) => "CHAR"
++  | (T 71) => "DOUBLE"
++  | (T 72) => "ENUM"
++  | (T 73) => "FLOAT"
++  | (T 74) => "INT"
++  | (T 75) => "LONG"
++  | (T 76) => "SHORT"
++  | (T 77) => "FRACTIONAL"
++  | (T 78) => "SATURATE"
++  | (T 79) => "STRUCT"
++  | (T 80) => "UNION"
++  | (T 81) => "UNSIGNED"
++  | (T 82) => "SIGNED"
++  | (T 83) => "VOID"
++  | (T 84) => "SIZEOF"
++  | (T 85) => "TYPEDEF"
++  | (T 86) => "UNARY"
++  | (T 87) => "ELIPSIS"
++  | (T 88) => "TYPE_NAME"
++  | _ => "bogus-term"
++local open Header in
++val errtermvalue=
++fn (T 88) => MlyValue.TYPE_NAME((
++Error.hint "Likely cause: missing typedef declaration.\n"; "bogus")) | 
++_ => MlyValue.VOID'
++end
++val terms : term list = nil
++ $$ (T 87) $$ (T 86) $$ (T 85) $$ (T 84) $$ (T 83) $$ (T 82) $$ (T 81)
++ $$ (T 80) $$ (T 79) $$ (T 78) $$ (T 77) $$ (T 76) $$ (T 75) $$ (T 74)
++ $$ (T 73) $$ (T 72) $$ (T 71) $$ (T 70) $$ (T 69) $$ (T 68) $$ (T 67)
++ $$ (T 66) $$ (T 65) $$ (T 64) $$ (T 63) $$ (T 62) $$ (T 61) $$ (T 60)
++ $$ (T 59) $$ (T 58) $$ (T 57) $$ (T 56) $$ (T 55) $$ (T 54) $$ (T 53)
++ $$ (T 52) $$ (T 51) $$ (T 46) $$ (T 45) $$ (T 44) $$ (T 43) $$ (T 42)
++ $$ (T 41) $$ (T 40) $$ (T 39) $$ (T 38) $$ (T 37) $$ (T 36) $$ (T 35)
++ $$ (T 34) $$ (T 33) $$ (T 32) $$ (T 31) $$ (T 30) $$ (T 29) $$ (T 28)
++ $$ (T 27) $$ (T 26) $$ (T 24) $$ (T 23) $$ (T 22) $$ (T 21) $$ (T 20)
++ $$ (T 19) $$ (T 18) $$ (T 17) $$ (T 16) $$ (T 15) $$ (T 14) $$ (T 13)
++ $$ (T 12) $$ (T 11) $$ (T 10) $$ (T 9) $$ (T 8) $$ (T 7) $$ (T 6) $$ 
++(T 5) $$ (T 4) $$ (T 3) $$ (T 2) $$ (T 1) $$ (T 0)end
++structure Actions =
++struct 
 +type int = Int.int
- exception mlyAction of int
- local open Header in
- val actions = 
--fn (i392,defaultPos,stack,
++exception mlyAction of int
++local open Header in
++val actions = 
 +fn (i392:int,defaultPos,stack,
-     (srcMap):arg) =>
- case (i392,stack)
- of  ( 0, ( ( _, ( MlyValue.tu tu, tu1left, tu1right)) :: rest671)) =>
++    (srcMap):arg) =>
++case (i392,stack)
++of  ( 0, ( ( _, ( MlyValue.tu tu, tu1left, tu1right)) :: rest671)) =>
++ let val  result = MlyValue.translationUnit (seqToList tu)
++ in ( LrTable.NT 0, ( result, tu1left, tu1right), rest671)
++end
++|  ( 1, ( rest671)) => let val  result = MlyValue.tu (emptySeq)
++ in ( LrTable.NT 1, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 2, ( ( _, ( MlyValue.externalDeclaration externalDeclaration, _, 
++externalDeclaration1right)) :: ( _, ( MlyValue.tu tu, tu1left, _)) :: 
++rest671)) => let val  result = MlyValue.tu (
++addOptToEnd(externalDeclaration, tu))
++ in ( LrTable.NT 1, ( result, tu1left, externalDeclaration1right), 
++rest671)
++end
++|  ( 3, ( ( _, ( MlyValue.declaration declaration, (declarationleft
++ as declaration1left), (declarationright as declaration1right))) :: 
++rest671)) => let val  result = MlyValue.externalDeclaration (
++SOME(markExternalDecl srcMap (ExternalDecl declaration,
++						                       declarationleft,
++								       declarationright))
++)
++ in ( LrTable.NT 50, ( result, declaration1left, declaration1right), 
++rest671)
++end
++|  ( 4, ( ( _, ( _, SEMICOLON1left, SEMICOLON1right)) :: rest671)) =>
++ let val  result = MlyValue.externalDeclaration (NONE)
++ in ( LrTable.NT 50, ( result, SEMICOLON1left, SEMICOLON1right), 
++rest671)
++end
++|  ( 5, ( ( _, ( MlyValue.functionDefinition functionDefinition, (
++functionDefinitionleft as functionDefinition1left), (
++functionDefinitionright as functionDefinition1right))) :: rest671)) =>
++ let val  result = MlyValue.externalDeclaration (
++SOME(markExternalDecl srcMap (functionDefinition,
++						   	               functionDefinitionleft,
++							               functionDefinitionright))
++)
++ in ( LrTable.NT 50, ( result, functionDefinition1left, 
++functionDefinition1right), rest671)
++end
++|  ( 6, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.opExpr opExpr3, _, _)) :: _
++ :: ( _, ( MlyValue.opExpr opExpr2, _, _)) :: _ :: ( _, ( 
++MlyValue.opExpr opExpr1, _, _)) :: _ :: ( _, ( _, (FORleft as FOR1left
++), _)) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (For(opExpr1,opExpr2,opExpr3,statement),
++							FORleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, FOR1left, statement1right), rest671)
++end
++|  ( 7, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.exprWComma exprWComma, _, _
++)) :: _ :: ( _, ( _, (WHILEleft as WHILE1left), _)) :: rest671)) =>
++ let val  result = MlyValue.statement (
++markStatement srcMap (While(exprWComma,statement),
++							WHILEleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, WHILE1left, statement1right), rest671)
++
++end
++|  ( 8, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.exprWComma exprWComma, _, _
++)) :: _ :: ( _, ( _, (SWITCHleft as SWITCH1left), _)) :: rest671)) =>
++ let val  result = MlyValue.statement (
++markStatement srcMap (Switch(exprWComma,statement),
++							SWITCHleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, SWITCH1left, statement1right), rest671)
++
++end
++|  ( 9, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: _ :: (
++ _, ( MlyValue.exprWComma exprWComma, _, _)) :: _ :: _ :: ( _, ( 
++MlyValue.statement statement, _, _)) :: ( _, ( _, (DOleft as DO1left),
++ _)) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (Do(exprWComma,statement),
++							DOleft, SEMICOLONright)
++)
++ in ( LrTable.NT 2, ( result, DO1left, SEMICOLON1right), rest671)
++end
++|  ( 10, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: ( _, 
++( _, (BREAKleft as BREAK1left), _)) :: rest671)) => let val  result = 
++MlyValue.statement (
++markStatement srcMap (Break, 
++							BREAKleft, SEMICOLONright))
++ in ( LrTable.NT 2, ( result, BREAK1left, SEMICOLON1right), rest671)
++
++end
++|  ( 11, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: ( _, 
++( _, (CONTINUEleft as CONTINUE1left), _)) :: rest671)) => let val  
++result = MlyValue.statement (
++markStatement srcMap (Continue, 
++							CONTINUEleft, SEMICOLONright))
++ in ( LrTable.NT 2, ( result, CONTINUE1left, SEMICOLON1right), rest671
++)
++end
++|  ( 12, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: ( _, 
++( MlyValue.opExpr opExpr, _, _)) :: ( _, ( _, (RETURNleft as 
++RETURN1left), _)) :: rest671)) => let val  result = MlyValue.statement
++ (
++markStatement srcMap (Return(opExpr), 
++							RETURNleft, SEMICOLONright)
++)
++ in ( LrTable.NT 2, ( result, RETURN1left, SEMICOLON1right), rest671)
++
++end
++|  ( 13, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: ( _, 
++( MlyValue.ID ID, _, _)) :: ( _, ( _, (GOTOleft as GOTO1left), _)) :: 
++rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (Goto(ID), 
++							GOTOleft, SEMICOLONright))
++ in ( LrTable.NT 2, ( result, GOTO1left, SEMICOLON1right), rest671)
++
++end
++|  ( 14, ( ( _, ( MlyValue.compoundStatement compoundStatement, 
++compoundStatement1left, compoundStatement1right)) :: rest671)) => let
++ val  result = MlyValue.statement (compoundStatement)
++ in ( LrTable.NT 2, ( result, compoundStatement1left, 
++compoundStatement1right), rest671)
++end
++|  ( 15, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.ID ID, (IDleft as ID1left),
++ _)) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (Labeled(ID,statement),
++							IDleft,statementright)
++)
++ in ( LrTable.NT 2, ( result, ID1left, statement1right), rest671)
++end
++|  ( 16, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( _, (DEFAULTleft as DEFAULT1left), _)
++) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (DefaultLabel(statement),
++							DEFAULTleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, DEFAULT1left, statement1right), rest671)
++
++end
++|  ( 17, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.exprWComma exprWComma, _, _
++)) :: ( _, ( _, (CASEleft as CASE1left), _)) :: rest671)) => let val  
++result = MlyValue.statement (
++markStatement srcMap (CaseLabel(exprWComma,statement),
++							CASEleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, CASE1left, statement1right), rest671)
++
++end
++|  ( 18, ( ( _, ( MlyValue.statement statement, _, (statementright as 
++statement1right))) :: _ :: ( _, ( MlyValue.exprWComma exprWComma, _, _
++)) :: _ :: ( _, ( _, (IFleft as IF1left), _)) :: rest671)) => let val 
++ result = MlyValue.statement (
++markStatement srcMap (IfThen(exprWComma,statement),
++							IFleft, statementright)
++)
++ in ( LrTable.NT 2, ( result, IF1left, statement1right), rest671)
++end
++|  ( 19, ( ( _, ( MlyValue.statement statement2, _, statement2right))
++ :: _ :: ( _, ( MlyValue.statement statement1, _, _)) :: _ :: ( _, ( 
++MlyValue.exprWComma exprWComma, _, _)) :: _ :: ( _, ( _, (IFleft as 
++IF1left), _)) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (IfThenElse(exprWComma,statement1,statement2),
++							IFleft,
++							statement2right)
++)
++ in ( LrTable.NT 2, ( result, IF1left, statement2right), rest671)
++end
++|  ( 20, ( ( _, ( _, _, (SEMICOLONright as SEMICOLON1right))) :: ( _, 
++( MlyValue.exprWComma exprWComma, (exprWCommaleft as exprWComma1left),
++ _)) :: rest671)) => let val  result = MlyValue.statement (
++markStatement srcMap (Expr(exprWComma),
++							exprWCommaleft, SEMICOLONright)
++)
++ in ( LrTable.NT 2, ( result, exprWComma1left, SEMICOLON1right), 
++rest671)
++end
++|  ( 21, ( ( _, ( _, (SEMICOLONleft as SEMICOLON1left), (
++SEMICOLONright as SEMICOLON1right))) :: rest671)) => let val  result =
++ MlyValue.statement (
++markStatement srcMap (Expr(EmptyExpr),
++							SEMICOLONleft, SEMICOLONright)
++)
++ in ( LrTable.NT 2, ( result, SEMICOLON1left, SEMICOLON1right), 
++rest671)
++end
++|  ( 22, ( ( _, ( _, _, SEMICOLON1right)) :: ( _, ( 
++MlyValue.declaration1 declaration1, declaration11left, _)) :: rest671)
++) => let val  result = MlyValue.declaration (declaration1)
++ in ( LrTable.NT 48, ( result, declaration11left, SEMICOLON1right), 
++rest671)
++end
++|  ( 23, ( ( _, ( MlyValue.declarationSpecifiers declarationSpecifiers
++, (declarationSpecifiersleft as declarationSpecifiers1left), (
++declarationSpecifiersright as declarationSpecifiers1right))) :: 
++rest671)) => let val  result = MlyValue.declaration1 (
++insertDeclNames (declarationSpecifiers, []);
++		 markDeclaration srcMap
++		   (Declaration(declarationSpecifiers, []), 
++		    declarationSpecifiersleft, declarationSpecifiersright)
++)
++ in ( LrTable.NT 49, ( result, declarationSpecifiers1left, 
++declarationSpecifiers1right), rest671)
++end
++|  ( 24, ( ( _, ( MlyValue.initDeclaratorList initDeclaratorList, _, (
++initDeclaratorListright as initDeclaratorList1right))) :: ( _, ( 
++MlyValue.declarationSpecifiers declarationSpecifiers, (
++declarationSpecifiersleft as declarationSpecifiers1left), _)) :: 
++rest671)) => let val  result = MlyValue.declaration1 (
++let val decl = (declarationSpecifiers, seqToList initDeclaratorList)
++		  in insertDeclNames decl;
++		     markDeclaration srcMap
++		       (Declaration decl, declarationSpecifiersleft, initDeclaratorListright)
++	         end
++)
++ in ( LrTable.NT 49, ( result, declarationSpecifiers1left, 
++initDeclaratorList1right), rest671)
++end
++|  ( 25, ( ( _, ( MlyValue.notypeInitDeclaratorList 
++notypeInitDeclaratorList, _, (notypeInitDeclaratorListright as 
++notypeInitDeclaratorList1right))) :: ( _, ( 
++MlyValue.declarationModifiers declarationModifiers, (
++declarationModifiersleft as declarationModifiers1left), _)) :: rest671
++)) => let val  result = MlyValue.declaration1 (
++let val decl = (declarationModifiers, seqToList notypeInitDeclaratorList)
++		  in insertDeclNames decl;
++		     markDeclaration srcMap
++		       (Declaration decl, declarationModifiersleft, notypeInitDeclaratorListright)
++	         end
++)
++ in ( LrTable.NT 49, ( result, declarationModifiers1left, 
++notypeInitDeclaratorList1right), rest671)
++end
++|  ( 26, ( ( _, ( MlyValue.statementlist statementlist, 
++statementlist1left, statementlist1right)) :: rest671)) => let val  
++result = MlyValue.ostatementlist (seqToList statementlist)
++ in ( LrTable.NT 3, ( result, statementlist1left, statementlist1right)
++, rest671)
++end
++|  ( 27, ( rest671)) => let val  result = MlyValue.ostatementlist ([])
++ in ( LrTable.NT 3, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 28, ( ( _, ( MlyValue.statement statement, statement1left, 
++statement1right)) :: rest671)) => let val  result = 
++MlyValue.statementlist (singletonSeq statement)
++ in ( LrTable.NT 4, ( result, statement1left, statement1right), 
++rest671)
++end
++|  ( 29, ( ( _, ( MlyValue.statement statement, _, statement1right))
++ :: ( _, ( MlyValue.statementlist statementlist, statementlist1left, _
++)) :: rest671)) => let val  result = MlyValue.statementlist (
++addToSeq(statement, statementlist))
++ in ( LrTable.NT 4, ( result, statementlist1left, statement1right), 
++rest671)
++end
++|  ( 30, ( ( _, ( _, _, (RCURLYright as RCURLY1right))) :: _ :: ( _, (
++ MlyValue.ostatementlist ostatementlist, _, _)) :: ( _, ( 
++MlyValue.declarationList declarationList, _, _)) :: _ :: ( _, ( _, (
++LCURLYleft as LCURLY1left), _)) :: rest671)) => let val  result = 
++MlyValue.compoundStatement (
++markStatement srcMap (Compound ((map Decl (seqToList declarationList)) @ ostatementlist), LCURLYleft, RCURLYright)
++)
++ in ( LrTable.NT 5, ( result, LCURLY1left, RCURLY1right), rest671)
++end
++|  ( 31, ( ( _, ( _, _, (RCURLYright as RCURLY1right))) :: ( _, ( 
++MlyValue.ostatementlist ostatementlist, _, _)) :: ( _, ( _, (
++LCURLYleft as LCURLY1left), _)) :: rest671)) => let val  result = 
++MlyValue.compoundStatement (
++markStatement srcMap (Compound (ostatementlist), LCURLYleft, RCURLYright)
++)
++ in ( LrTable.NT 5, ( result, LCURLY1left, RCURLY1right), rest671)
++end
++|  ( 32, ( ( _, ( _, AMP1left, AMP1right)) :: rest671)) => let val  
++result = MlyValue.unaryOperator (AddrOf)
++ in ( LrTable.NT 9, ( result, AMP1left, AMP1right), rest671)
++end
++|  ( 33, ( ( _, ( _, TIMES1left, TIMES1right)) :: rest671)) => let
++ val  result = MlyValue.unaryOperator (Star)
++ in ( LrTable.NT 9, ( result, TIMES1left, TIMES1right), rest671)
++end
++|  ( 34, ( ( _, ( _, PLUS1left, PLUS1right)) :: rest671)) => let val  
++result = MlyValue.unaryOperator (Uplus)
++ in ( LrTable.NT 9, ( result, PLUS1left, PLUS1right), rest671)
++end
++|  ( 35, ( ( _, ( _, MINUS1left, MINUS1right)) :: rest671)) => let
++ val  result = MlyValue.unaryOperator (Negate)
++ in ( LrTable.NT 9, ( result, MINUS1left, MINUS1right), rest671)
++end
++|  ( 36, ( ( _, ( _, TILDE1left, TILDE1right)) :: rest671)) => let
++ val  result = MlyValue.unaryOperator (BitNot)
++ in ( LrTable.NT 9, ( result, TILDE1left, TILDE1right), rest671)
++end
++|  ( 37, ( ( _, ( _, BANG1left, BANG1right)) :: rest671)) => let val  
++result = MlyValue.unaryOperator (Not)
++ in ( LrTable.NT 9, ( result, BANG1left, BANG1right), rest671)
++end
++|  ( 38, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.exprWComma exprWComma1, _, _)) :: _ :: ( _, ( MlyValue.expr 
++expr1, expr1left, _)) :: rest671)) => let val  result = MlyValue.expr
++ (
++markExpression srcMap (QuestionColon(expr1,exprWComma1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 39, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(PlusAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 40, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(MinusAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 41, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(TimesAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 42, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(DivAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 43, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(ModAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 44, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(XorAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 45, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(OrAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 46, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(AndAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 47, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(LshiftAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 48, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(RshiftAssign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 49, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Assign,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 50, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Or,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 51, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(And,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 52, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(BitOr,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 53, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(BitXor,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 54, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(BitAnd,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 55, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Eq,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 56, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Neq,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 57, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Lt,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 58, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Gt,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 59, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Lte,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 60, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Gte,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 61, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Lshift,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 62, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Rshift,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 63, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Plus,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 64, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Minus,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 65, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Times,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 66, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Divide,expr1,expr2),expr1left,expr2right)
++)
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 67, ( ( _, ( MlyValue.expr expr2, _, expr2right)) :: _ :: ( _, ( 
++MlyValue.expr expr1, expr1left, _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Mod,expr1,expr2),expr1left,expr2right))
++ in ( LrTable.NT 6, ( result, expr1left, expr2right), rest671)
++end
++|  ( 68, ( ( _, ( _, _, (INCright as INC1right))) :: ( _, ( 
++MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (Unop(PostInc,expr),exprleft,INCright))
++ in ( LrTable.NT 6, ( result, expr1left, INC1right), rest671)
++end
++|  ( 69, ( ( _, ( _, _, (DECright as DEC1right))) :: ( _, ( 
++MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (Unop(PostDec,expr),exprleft,DECright))
++ in ( LrTable.NT 6, ( result, expr1left, DEC1right), rest671)
++end
++|  ( 70, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: ( _, ( _, (INCleft as INC1left), _)) :: rest671)) => let val  
++result = MlyValue.expr (
++markExpression srcMap (Unop(PreInc,expr),INCleft,exprright))
++ in ( LrTable.NT 6, ( result, INC1left, expr1right), rest671)
++end
++|  ( 71, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: ( _, ( _, (DECleft as DEC1left), _)) :: rest671)) => let val  
++result = MlyValue.expr (
++markExpression srcMap (Unop(PreDec,expr),DECleft,exprright))
++ in ( LrTable.NT 6, ( result, DEC1left, expr1right), rest671)
++end
++|  ( 72, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: ( _, ( MlyValue.unaryOperator unaryOperator, (unaryOperatorleft
++ as unaryOperator1left), _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Unop(unaryOperator,expr),unaryOperatorleft,exprright)
++)
++ in ( LrTable.NT 6, ( result, unaryOperator1left, expr1right), rest671
++)
++end
++|  ( 73, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: ( _, ( _, (SIZEOFleft as SIZEOF1left), _)) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (Unop(Sizeof,expr),SIZEOFleft,exprright))
++ in ( LrTable.NT 6, ( result, SIZEOF1left, expr1right), rest671)
++end
++|  ( 74, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: _ :: ( _, ( MlyValue.typeName typeName, _, _)) :: ( _, ( _, (
++LPARENleft as LPAREN1left), _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Cast (typeName,expr),LPARENleft,exprright))
++ in ( LrTable.NT 6, ( result, LPAREN1left, expr1right), rest671)
++end
++|  ( 75, ( ( _, ( _, _, (RPARENright as RPAREN1right))) :: ( _, ( 
++MlyValue.typeName typeName, _, _)) :: _ :: ( _, ( _, (SIZEOFleft as 
++SIZEOF1left), _)) :: rest671)) => let val  result = MlyValue.expr (
++markExpression srcMap (Unop(SizeofType typeName,EmptyExpr),SIZEOFleft,RPARENright)
++)
++ in ( LrTable.NT 6, ( result, SIZEOF1left, RPAREN1right), rest671)
++end
++|  ( 76, ( ( _, ( _, _, (RBRACEright as RBRACE1right))) :: ( _, ( 
++MlyValue.exprWComma exprWComma, _, _)) :: _ :: ( _, ( MlyValue.expr 
++expr, (exprleft as expr1left), _)) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (Binop(Sub,expr,exprWComma),exprleft,RBRACEright)
++)
++ in ( LrTable.NT 6, ( result, expr1left, RBRACE1right), rest671)
++end
++|  ( 77, ( ( _, ( _, _, (RPARENright as RPAREN1right))) :: _ :: ( _, (
++ MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (Call(expr,[]),exprleft,RPARENright))
++ in ( LrTable.NT 6, ( result, expr1left, RPAREN1right), rest671)
++end
++|  ( 78, ( ( _, ( _, _, (RPARENright as RPAREN1right))) :: ( _, ( 
++MlyValue.argumentExprList argumentExprList, _, _)) :: _ :: ( _, ( 
++MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (Call(expr, seqToList argumentExprList),exprleft,RPARENright)
++)
++ in ( LrTable.NT 6, ( result, expr1left, RPAREN1right), rest671)
++end
++|  ( 79, ( ( _, ( MlyValue.ID ID, _, (IDright as ID1right))) :: _ :: (
++ _, ( MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) =>
++ let val  result = MlyValue.expr (
++markExpression srcMap (Binop(Dot,expr,Id(ID)),exprleft,IDright))
++ in ( LrTable.NT 6, ( result, expr1left, ID1right), rest671)
++end
++|  ( 80, ( ( _, ( MlyValue.ID ID, _, (IDright as ID1right))) :: _ :: (
++ _, ( MlyValue.expr expr, (exprleft as expr1left), _)) :: rest671)) =>
++ let val  result = MlyValue.expr (
++markExpression srcMap (Binop(Arrow,expr,Id(ID)),exprleft,IDright))
++ in ( LrTable.NT 6, ( result, expr1left, ID1right), rest671)
++end
++|  ( 81, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, _, (TYPE_NAMEright as 
++TYPE_NAME1right))) :: _ :: ( _, ( MlyValue.expr expr, (exprleft as 
++expr1left), _)) :: rest671)) => let val  result = MlyValue.expr (
++markExpression srcMap (Binop(Dot,expr,Id(TYPE_NAME)),exprleft,TYPE_NAMEright)
++)
++ in ( LrTable.NT 6, ( result, expr1left, TYPE_NAME1right), rest671)
++
++end
++|  ( 82, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, _, (TYPE_NAMEright as 
++TYPE_NAME1right))) :: _ :: ( _, ( MlyValue.expr expr, (exprleft as 
++expr1left), _)) :: rest671)) => let val  result = MlyValue.expr (
++markExpression srcMap (Binop(Arrow,expr,Id(TYPE_NAME)),exprleft,TYPE_NAMEright)
++)
++ in ( LrTable.NT 6, ( result, expr1left, TYPE_NAME1right), rest671)
++
++end
++|  ( 83, ( ( _, ( _, _, (RPARENright as RPAREN1right))) :: ( _, ( 
++MlyValue.exprWComma exprWComma, _, _)) :: ( _, ( _, (LPARENleft as 
++LPAREN1left), _)) :: rest671)) => let val  result = MlyValue.expr (
++markExpression srcMap (exprWComma,LPARENleft,RPARENright))
++ in ( LrTable.NT 6, ( result, LPAREN1left, RPAREN1right), rest671)
++end
++|  ( 84, ( ( _, ( MlyValue.DECNUM DECNUM, (DECNUMleft as DECNUM1left),
++ (DECNUMright as DECNUM1right))) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (IntConst DECNUM,DECNUMleft,DECNUMright))
++ in ( LrTable.NT 6, ( result, DECNUM1left, DECNUM1right), rest671)
++end
++|  ( 85, ( ( _, ( MlyValue.REALNUM REALNUM, (REALNUMleft as 
++REALNUM1left), (REALNUMright as REALNUM1right))) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (RealConst REALNUM, REALNUMleft,REALNUMright))
++ in ( LrTable.NT 6, ( result, REALNUM1left, REALNUM1right), rest671)
++
++end
++|  ( 86, ( ( _, ( MlyValue.CCONST CCONST, (CCONSTleft as CCONST1left),
++ (CCONSTright as CCONST1right))) :: rest671)) => let val  result = 
++MlyValue.expr (
++markExpression srcMap (IntConst CCONST, CCONSTleft,CCONSTright))
++ in ( LrTable.NT 6, ( result, CCONST1left, CCONST1right), rest671)
++end
++|  ( 87, ( ( _, ( MlyValue.ID ID, (IDleft as ID1left), (IDright as 
++ID1right))) :: rest671)) => let val  result = MlyValue.expr (
++markExpression srcMap (Id(ID), IDleft, IDright))
++ in ( LrTable.NT 6, ( result, ID1left, ID1right), rest671)
++end
++|  ( 88, ( ( _, ( MlyValue.strings strings, (stringsleft as 
++strings1left), (stringsright as strings1right))) :: rest671)) => let
++ val  result = MlyValue.expr (
++markExpression srcMap (String(strings),stringsleft,stringsright))
++ in ( LrTable.NT 6, ( result, strings1left, strings1right), rest671)
++
++end
++|  ( 89, ( ( _, ( MlyValue.STRING STRING, STRING1left, STRING1right))
++ :: rest671)) => let val  result = MlyValue.strings (STRING)
++ in ( LrTable.NT 63, ( result, STRING1left, STRING1right), rest671)
++
++end
++|  ( 90, ( ( _, ( MlyValue.strings strings, _, strings1right)) :: ( _,
++ ( MlyValue.STRING STRING, STRING1left, _)) :: rest671)) => let val  
++result = MlyValue.strings (STRING ^ strings)
++ in ( LrTable.NT 63, ( result, STRING1left, strings1right), rest671)
++
++end
++|  ( 91, ( ( _, ( MlyValue.expr expr, expr1left, expr1right)) :: 
++rest671)) => let val  result = MlyValue.exprWComma (expr)
++ in ( LrTable.NT 8, ( result, expr1left, expr1right), rest671)
++end
++|  ( 92, ( ( _, ( MlyValue.expr expr, _, (exprright as expr1right)))
++ :: _ :: ( _, ( MlyValue.exprWComma exprWComma, (exprWCommaleft as 
++exprWComma1left), _)) :: rest671)) => let val  result = 
++MlyValue.exprWComma (
++markExpression srcMap (Binop(Comma,exprWComma,expr),exprWCommaleft,exprright)
++)
++ in ( LrTable.NT 8, ( result, exprWComma1left, expr1right), rest671)
++
++end
++|  ( 93, ( rest671)) => let val  result = MlyValue.opExpr (EmptyExpr)
++ in ( LrTable.NT 7, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 94, ( ( _, ( MlyValue.exprWComma exprWComma, exprWComma1left, 
++exprWComma1right)) :: rest671)) => let val  result = MlyValue.opExpr (
++exprWComma)
++ in ( LrTable.NT 7, ( result, exprWComma1left, exprWComma1right), 
++rest671)
++end
++|  ( 95, ( ( _, ( MlyValue.expr expr, expr1left, expr1right)) :: 
++rest671)) => let val  result = MlyValue.argumentExprList (
++singletonSeq expr)
++ in ( LrTable.NT 10, ( result, expr1left, expr1right), rest671)
++end
++|  ( 96, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: _ :: ( _, ( 
++MlyValue.argumentExprList argumentExprList, argumentExprList1left, _))
++ :: rest671)) => let val  result = MlyValue.argumentExprList (
++addToSeq(expr, argumentExprList))
++ in ( LrTable.NT 10, ( result, argumentExprList1left, expr1right), 
++rest671)
++end
++|  ( 97, ( ( _, ( MlyValue.specifierQualifierList 
++specifierQualifierList, specifierQualifierList1left, 
++specifierQualifierList1right)) :: rest671)) => let val  result = 
++MlyValue.typeName (specifierQualifierList)
++ in ( LrTable.NT 36, ( result, specifierQualifierList1left, 
++specifierQualifierList1right), rest671)
++end
++|  ( 98, ( ( _, ( MlyValue.abstractDeclarator abstractDeclarator, _, 
++abstractDeclarator1right)) :: ( _, ( MlyValue.specifierQualifierList 
++specifierQualifierList, specifierQualifierList1left, _)) :: rest671))
++ => let val  result = MlyValue.typeName (
++#1 (ctypeDecrToTypeName (specifierQualifierList, abstractDeclarator)))
++ in ( LrTable.NT 36, ( result, specifierQualifierList1left, 
++abstractDeclarator1right), rest671)
++end
++|  ( 99, ( ( _, ( MlyValue.reservedDeclarationSpecifier 
++reservedDeclarationSpecifier, _, reservedDeclarationSpecifier1right))
++ :: ( _, ( MlyValue.typeSpecifier typeSpecifier, typeSpecifier1left, _
++)) :: rest671)) => let val  result = MlyValue.declarationSpecifiers (
++addSpecifier (typeSpecifier,
++						        reservedDeclarationSpecifier)
++)
++ in ( LrTable.NT 28, ( result, typeSpecifier1left, 
++reservedDeclarationSpecifier1right), rest671)
++end
++|  ( 100, ( ( _, ( MlyValue.reservedDeclarationSpecifier 
++reservedDeclarationSpecifier, _, reservedDeclarationSpecifier1right))
++ :: ( _, ( MlyValue.typeSpecifier typeSpecifier, _, _)) :: ( _, ( 
++MlyValue.declarationModifiers declarationModifiers, 
++declarationModifiers1left, _)) :: rest671)) => let val  result = 
++MlyValue.declarationSpecifiers (
++addAll (declarationModifiers,
++                                                  addSpecifier (typeSpecifier,
++							         reservedDeclarationSpecifier))
++)
++ in ( LrTable.NT 28, ( result, declarationModifiers1left, 
++reservedDeclarationSpecifier1right), rest671)
++end
++|  ( 101, ( rest671)) => let val  result = 
++MlyValue.reservedDeclarationSpecifier (unknown)
++ in ( LrTable.NT 30, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 102, ( ( _, ( MlyValue.specifierQualifierReserved 
++specifierQualifierReserved, _, specifierQualifierReserved1right)) :: (
++ _, ( MlyValue.reservedDeclarationSpecifier 
++reservedDeclarationSpecifier, reservedDeclarationSpecifier1left, _))
++ :: rest671)) => let val  result = 
++MlyValue.reservedDeclarationSpecifier (
++let val {qualifiers,specifiers} = specifierQualifierReserved
++					     val decltype = {qualifiers=qualifiers,specifiers=specifiers,storage=[]}
++	   				 in addAll (decltype, reservedDeclarationSpecifier) end 
++)
++ in ( LrTable.NT 30, ( result, reservedDeclarationSpecifier1left, 
++specifierQualifierReserved1right), rest671)
++end
++|  ( 103, ( ( _, ( MlyValue.storageClassSpecifier 
++storageClassSpecifier, _, storageClassSpecifier1right)) :: ( _, ( 
++MlyValue.reservedDeclarationSpecifier reservedDeclarationSpecifier, 
++reservedDeclarationSpecifier1left, _)) :: rest671)) => let val  result
++ = MlyValue.reservedDeclarationSpecifier (
++addStorage (storageClassSpecifier,
++                                                      reservedDeclarationSpecifier)
++)
++ in ( LrTable.NT 30, ( result, reservedDeclarationSpecifier1left, 
++storageClassSpecifier1right), rest671)
++end
++|  ( 104, ( ( _, ( MlyValue.typeSpecifierReserved 
++typeSpecifierReserved, typeSpecifierReserved1left, 
++typeSpecifierReserved1right)) :: rest671)) => let val  result = 
++MlyValue.specifierQualifierReserved (
++{qualifiers=[],specifiers=[typeSpecifierReserved]})
++ in ( LrTable.NT 31, ( result, typeSpecifierReserved1left, 
++typeSpecifierReserved1right), rest671)
++end
++|  ( 105, ( ( _, ( MlyValue.typeQualifier typeQualifier, 
++typeQualifier1left, typeQualifier1right)) :: rest671)) => let val  
++result = MlyValue.specifierQualifierReserved (
++{qualifiers=[typeQualifier],specifiers=[]})
++ in ( LrTable.NT 31, ( result, typeQualifier1left, typeQualifier1right
++), rest671)
++end
++|  ( 106, ( ( _, ( MlyValue.structOrUnionSpecifier 
++structOrUnionSpecifier, structOrUnionSpecifier1left, 
++structOrUnionSpecifier1right)) :: rest671)) => let val  result = 
++MlyValue.specifierQualifierReserved (
++{qualifiers=[],specifiers=[structOrUnionSpecifier]})
++ in ( LrTable.NT 31, ( result, structOrUnionSpecifier1left, 
++structOrUnionSpecifier1right), rest671)
++end
++|  ( 107, ( ( _, ( MlyValue.enumSpecifier enumSpecifier, 
++enumSpecifier1left, enumSpecifier1right)) :: rest671)) => let val  
++result = MlyValue.specifierQualifierReserved (
++{qualifiers=[],specifiers=[enumSpecifier]})
++ in ( LrTable.NT 31, ( result, enumSpecifier1left, enumSpecifier1right
++), rest671)
++end
++|  ( 108, ( ( _, ( MlyValue.storageClassSpecifier 
++storageClassSpecifier, storageClassSpecifier1left, 
++storageClassSpecifier1right)) :: rest671)) => let val  result = 
++MlyValue.declarationModifiers (
++{storage = [storageClassSpecifier],
++					  qualifiers = [],
++					  specifiers = []}
++)
++ in ( LrTable.NT 29, ( result, storageClassSpecifier1left, 
++storageClassSpecifier1right), rest671)
++end
++|  ( 109, ( ( _, ( MlyValue.storageClassSpecifier 
++storageClassSpecifier, _, storageClassSpecifier1right)) :: ( _, ( 
++MlyValue.declarationModifiers declarationModifiers, 
++declarationModifiers1left, _)) :: rest671)) => let val  result = 
++MlyValue.declarationModifiers (
++addStorage(storageClassSpecifier,declarationModifiers))
++ in ( LrTable.NT 29, ( result, declarationModifiers1left, 
++storageClassSpecifier1right), rest671)
++end
++|  ( 110, ( ( _, ( MlyValue.typeQualifier typeQualifier, 
++typeQualifier1left, typeQualifier1right)) :: rest671)) => let val  
++result = MlyValue.declarationModifiers (
++{specifiers = [],
++	 				  storage = [], 
++					  qualifiers = [typeQualifier]}
++)
++ in ( LrTable.NT 29, ( result, typeQualifier1left, typeQualifier1right
++), rest671)
++end
++|  ( 111, ( ( _, ( MlyValue.typeQualifier typeQualifier, _, 
++typeQualifier1right)) :: ( _, ( MlyValue.declarationModifiers 
++declarationModifiers, declarationModifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.declarationModifiers (
++addQualifier(typeQualifier, declarationModifiers))
++ in ( LrTable.NT 29, ( result, declarationModifiers1left, 
++typeQualifier1right), rest671)
++end
++|  ( 112, ( ( _, ( MlyValue.reservedSpecifierQualifiers 
++reservedSpecifierQualifiers, _, reservedSpecifierQualifiers1right)) ::
++ ( _, ( MlyValue.typeSpecifier typeSpecifier, typeSpecifier1left, _))
++ :: rest671)) => let val  result = MlyValue.specifierQualifierList (
++let val {specifiers, qualifiers} = reservedSpecifierQualifiers
++	                                 in {specifiers=typeSpecifier::specifiers,qualifiers=qualifiers} end
++)
++ in ( LrTable.NT 41, ( result, typeSpecifier1left, 
++reservedSpecifierQualifiers1right), rest671)
++end
++|  ( 113, ( ( _, ( MlyValue.reservedSpecifierQualifiers 
++reservedSpecifierQualifiers, _, reservedSpecifierQualifiers1right)) ::
++ ( _, ( MlyValue.typeSpecifier typeSpecifier, _, _)) :: ( _, ( 
++MlyValue.typeQualifierList typeQualifierList, typeQualifierList1left,
++ _)) :: rest671)) => let val  result = MlyValue.specifierQualifierList
++ (
++let val {specifiers, qualifiers} = reservedSpecifierQualifiers
++	                                 in {specifiers=typeSpecifier::specifiers
++					    ,qualifiers=typeQualifierList@qualifiers
++                                            }
++                                         end
++)
++ in ( LrTable.NT 41, ( result, typeQualifierList1left, 
++reservedSpecifierQualifiers1right), rest671)
++end
++|  ( 114, ( rest671)) => let val  result = 
++MlyValue.reservedSpecifierQualifiers ({qualifiers=[],specifiers=[]})
++ in ( LrTable.NT 32, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 115, ( ( _, ( MlyValue.specifierQualifierReserved 
++specifierQualifierReserved, _, specifierQualifierReserved1right)) :: (
++ _, ( MlyValue.reservedSpecifierQualifiers reservedSpecifierQualifiers
++, reservedSpecifierQualifiers1left, _)) :: rest671)) => let val  
++result = MlyValue.reservedSpecifierQualifiers (
++let val {specifiers=s1, qualifiers=q1} = reservedSpecifierQualifiers
++					     val {specifiers=s2, qualifiers=q2} = specifierQualifierReserved
++	                                 in {specifiers=s1@s2, qualifiers=q1@q2} end
++)
++ in ( LrTable.NT 32, ( result, reservedSpecifierQualifiers1left, 
++specifierQualifierReserved1right), rest671)
++end
++|  ( 116, ( ( _, ( MlyValue.typeQualifier typeQualifier, 
++typeQualifier1left, typeQualifier1right)) :: rest671)) => let val  
++result = MlyValue.typeQualifierList ([typeQualifier])
++ in ( LrTable.NT 40, ( result, typeQualifier1left, typeQualifier1right
++), rest671)
++end
++|  ( 117, ( ( _, ( MlyValue.typeQualifierList typeQualifierList, _, 
++typeQualifierList1right)) :: ( _, ( MlyValue.typeQualifier 
++typeQualifier, typeQualifier1left, _)) :: rest671)) => let val  result
++ = MlyValue.typeQualifierList (typeQualifier::typeQualifierList)
++ in ( LrTable.NT 40, ( result, typeQualifier1left, 
++typeQualifierList1right), rest671)
++end
++|  ( 118, ( ( _, ( MlyValue.typeSpecifierReserved 
++typeSpecifierReserved, typeSpecifierReserved1left, 
++typeSpecifierReserved1right)) :: rest671)) => let val  result = 
++MlyValue.typeSpecifier (typeSpecifierReserved)
++ in ( LrTable.NT 37, ( result, typeSpecifierReserved1left, 
++typeSpecifierReserved1right), rest671)
++end
++|  ( 119, ( ( _, ( MlyValue.structOrUnionSpecifier 
++structOrUnionSpecifier, structOrUnionSpecifier1left, 
++structOrUnionSpecifier1right)) :: rest671)) => let val  result = 
++MlyValue.typeSpecifier (structOrUnionSpecifier)
++ in ( LrTable.NT 37, ( result, structOrUnionSpecifier1left, 
++structOrUnionSpecifier1right), rest671)
++end
++|  ( 120, ( ( _, ( MlyValue.enumSpecifier enumSpecifier, 
++enumSpecifier1left, enumSpecifier1right)) :: rest671)) => let val  
++result = MlyValue.typeSpecifier (enumSpecifier)
++ in ( LrTable.NT 37, ( result, enumSpecifier1left, enumSpecifier1right
++), rest671)
++end
++|  ( 121, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, TYPE_NAME1left, 
++TYPE_NAME1right)) :: rest671)) => let val  result = 
++MlyValue.typeSpecifier (TypedefName TYPE_NAME)
++ in ( LrTable.NT 37, ( result, TYPE_NAME1left, TYPE_NAME1right), 
++rest671)
++end
++|  ( 122, ( ( _, ( _, VOID1left, VOID1right)) :: rest671)) => let val 
++ result = MlyValue.typeSpecifierReserved (Void)
++ in ( LrTable.NT 38, ( result, VOID1left, VOID1right), rest671)
++end
++|  ( 123, ( ( _, ( _, CHAR1left, CHAR1right)) :: rest671)) => let val 
++ result = MlyValue.typeSpecifierReserved (Char)
++ in ( LrTable.NT 38, ( result, CHAR1left, CHAR1right), rest671)
++end
++|  ( 124, ( ( _, ( _, SHORT1left, SHORT1right)) :: rest671)) => let
++ val  result = MlyValue.typeSpecifierReserved (Short)
++ in ( LrTable.NT 38, ( result, SHORT1left, SHORT1right), rest671)
++end
++|  ( 125, ( ( _, ( _, INT1left, INT1right)) :: rest671)) => let val  
++result = MlyValue.typeSpecifierReserved (Int)
++ in ( LrTable.NT 38, ( result, INT1left, INT1right), rest671)
++end
++|  ( 126, ( ( _, ( _, LONG1left, LONG1right)) :: rest671)) => let val 
++ result = MlyValue.typeSpecifierReserved (Long)
++ in ( LrTable.NT 38, ( result, LONG1left, LONG1right), rest671)
++end
++|  ( 127, ( ( _, ( _, FLOAT1left, FLOAT1right)) :: rest671)) => let
++ val  result = MlyValue.typeSpecifierReserved (Float)
++ in ( LrTable.NT 38, ( result, FLOAT1left, FLOAT1right), rest671)
++end
++|  ( 128, ( ( _, ( _, DOUBLE1left, DOUBLE1right)) :: rest671)) => let
++ val  result = MlyValue.typeSpecifierReserved (Double)
++ in ( LrTable.NT 38, ( result, DOUBLE1left, DOUBLE1right), rest671)
++
++end
++|  ( 129, ( ( _, ( _, SIGNED1left, SIGNED1right)) :: rest671)) => let
++ val  result = MlyValue.typeSpecifierReserved (Signed)
++ in ( LrTable.NT 38, ( result, SIGNED1left, SIGNED1right), rest671)
++
++end
++|  ( 130, ( ( _, ( _, UNSIGNED1left, UNSIGNED1right)) :: rest671)) =>
++ let val  result = MlyValue.typeSpecifierReserved (Unsigned)
++ in ( LrTable.NT 38, ( result, UNSIGNED1left, UNSIGNED1right), rest671
++)
++end
++|  ( 131, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.structDeclarationList structDeclarationList, _, _)) :: _ :: (
++ _, ( MlyValue.structOrUnion structOrUnion, structOrUnion1left, _)) ::
++ rest671)) => let val  result = MlyValue.structOrUnionSpecifier (
++Struct{isStruct=structOrUnion, tagOpt=NONE, members=seqToList structDeclarationList}
++)
++ in ( LrTable.NT 43, ( result, structOrUnion1left, RCURLY1right), 
++rest671)
++end
++|  ( 132, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.structDeclarationList structDeclarationList, _, _)) :: _ :: (
++ _, ( MlyValue.ID ID, _, _)) :: ( _, ( MlyValue.structOrUnion 
++structOrUnion, structOrUnion1left, _)) :: rest671)) => let val  result
++ = MlyValue.structOrUnionSpecifier (
++Struct{isStruct=structOrUnion, tagOpt=SOME ID, members=seqToList structDeclarationList}
++)
++ in ( LrTable.NT 43, ( result, structOrUnion1left, RCURLY1right), 
++rest671)
++end
++|  ( 133, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.structDeclarationList structDeclarationList, _, _)) :: _ :: (
++ _, ( MlyValue.TYPE_NAME TYPE_NAME, _, _)) :: ( _, ( 
++MlyValue.structOrUnion structOrUnion, structOrUnion1left, _)) :: 
++rest671)) => let val  result = MlyValue.structOrUnionSpecifier (
++Struct{isStruct=structOrUnion, tagOpt=SOME TYPE_NAME, members=seqToList structDeclarationList}
++)
++ in ( LrTable.NT 43, ( result, structOrUnion1left, RCURLY1right), 
++rest671)
++end
++|  ( 134, ( ( _, ( MlyValue.ID ID, _, ID1right)) :: ( _, ( 
++MlyValue.structOrUnion structOrUnion, structOrUnion1left, _)) :: 
++rest671)) => let val  result = MlyValue.structOrUnionSpecifier (
++StructTag {isStruct=structOrUnion, name=ID})
++ in ( LrTable.NT 43, ( result, structOrUnion1left, ID1right), rest671)
++
++end
++|  ( 135, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, _, TYPE_NAME1right))
++ :: ( _, ( MlyValue.structOrUnion structOrUnion, structOrUnion1left, _
++)) :: rest671)) => let val  result = MlyValue.structOrUnionSpecifier (
++StructTag {isStruct=structOrUnion, name=TYPE_NAME})
++ in ( LrTable.NT 43, ( result, structOrUnion1left, TYPE_NAME1right), 
++rest671)
++end
++|  ( 136, ( ( _, ( _, STRUCT1left, STRUCT1right)) :: rest671)) => let
++ val  result = MlyValue.structOrUnion (true)
++ in ( LrTable.NT 54, ( result, STRUCT1left, STRUCT1right), rest671)
++
++end
++|  ( 137, ( ( _, ( _, UNION1left, UNION1right)) :: rest671)) => let
++ val  result = MlyValue.structOrUnion (false)
++ in ( LrTable.NT 54, ( result, UNION1left, UNION1right), rest671)
++end
++|  ( 138, ( ( _, ( MlyValue.structDeclaration structDeclaration, 
++structDeclaration1left, structDeclaration1right)) :: rest671)) => let
++ val  result = MlyValue.structDeclarationList (
++singletonSeq structDeclaration)
++ in ( LrTable.NT 59, ( result, structDeclaration1left, 
++structDeclaration1right), rest671)
++end
++|  ( 139, ( ( _, ( MlyValue.structDeclaration structDeclaration, _, 
++structDeclaration1right)) :: ( _, ( MlyValue.structDeclarationList 
++structDeclarationList, structDeclarationList1left, _)) :: rest671)) =>
++ let val  result = MlyValue.structDeclarationList (
++addToSeq(structDeclaration, structDeclarationList))
++ in ( LrTable.NT 59, ( result, structDeclarationList1left, 
++structDeclaration1right), rest671)
++end
++|  ( 140, ( ( _, ( _, _, SEMICOLON1right)) :: ( _, ( 
++MlyValue.structDeclaratorList structDeclaratorList, _, _)) :: ( _, ( 
++MlyValue.specifierQualifierList specifierQualifierList, 
++specifierQualifierList1left, _)) :: rest671)) => let val  result = 
++MlyValue.structDeclaration (
++(specifierQualifierList, seqToList structDeclaratorList))
++ in ( LrTable.NT 60, ( result, specifierQualifierList1left, 
++SEMICOLON1right), rest671)
++end
++|  ( 141, ( ( _, ( _, _, SEMICOLON1right)) :: ( _, ( 
++MlyValue.notypeStructDeclaratorList notypeStructDeclaratorList, _, _))
++ :: ( _, ( MlyValue.typeQualifierList typeQualifierList, 
++typeQualifierList1left, _)) :: rest671)) => let val  result = 
++MlyValue.structDeclaration (
++let
++					    val ct = {qualifiers=typeQualifierList, specifiers=[]}
++					 in
++					   (ct, seqToList notypeStructDeclaratorList)
++					 end
++)
++ in ( LrTable.NT 60, ( result, typeQualifierList1left, SEMICOLON1right
++), rest671)
++end
++|  ( 142, ( ( _, ( MlyValue.structDeclarator structDeclarator, 
++structDeclarator1left, structDeclarator1right)) :: rest671)) => let
++ val  result = MlyValue.structDeclaratorList (
++singletonSeq structDeclarator)
++ in ( LrTable.NT 57, ( result, structDeclarator1left, 
++structDeclarator1right), rest671)
++end
++|  ( 143, ( ( _, ( MlyValue.structDeclarator structDeclarator, _, 
++structDeclarator1right)) :: _ :: ( _, ( MlyValue.structDeclaratorList 
++structDeclaratorList, structDeclaratorList1left, _)) :: rest671)) =>
++ let val  result = MlyValue.structDeclaratorList (
++addToSeq(structDeclarator, structDeclaratorList))
++ in ( LrTable.NT 57, ( result, structDeclaratorList1left, 
++structDeclarator1right), rest671)
++end
++|  ( 144, ( ( _, ( MlyValue.notypeStructDeclarator 
++notypeStructDeclarator, notypeStructDeclarator1left, 
++notypeStructDeclarator1right)) :: rest671)) => let val  result = 
++MlyValue.notypeStructDeclaratorList (
++singletonSeq notypeStructDeclarator)
++ in ( LrTable.NT 58, ( result, notypeStructDeclarator1left, 
++notypeStructDeclarator1right), rest671)
++end
++|  ( 145, ( ( _, ( MlyValue.structDeclarator structDeclarator, _, 
++structDeclarator1right)) :: _ :: ( _, ( 
++MlyValue.notypeStructDeclaratorList notypeStructDeclaratorList, 
++notypeStructDeclaratorList1left, _)) :: rest671)) => let val  result =
++ MlyValue.notypeStructDeclaratorList (
++addToSeq(structDeclarator, notypeStructDeclaratorList))
++ in ( LrTable.NT 58, ( result, notypeStructDeclaratorList1left, 
++structDeclarator1right), rest671)
++end
++|  ( 146, ( ( _, ( MlyValue.declarator declarator, declarator1left, 
++declarator1right)) :: rest671)) => let val  result = 
++MlyValue.structDeclarator (declarator, EmptyExpr)
++ in ( LrTable.NT 55, ( result, declarator1left, declarator1right), 
++rest671)
++end
++|  ( 147, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: ( _, ( _, 
++COLON1left, _)) :: rest671)) => let val  result = 
++MlyValue.structDeclarator (EmptyDecr, expr)
++ in ( LrTable.NT 55, ( result, COLON1left, expr1right), rest671)
++end
++|  ( 148, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: _ :: ( _, ( 
++MlyValue.declarator declarator, declarator1left, _)) :: rest671)) =>
++ let val  result = MlyValue.structDeclarator (declarator, expr)
++ in ( LrTable.NT 55, ( result, declarator1left, expr1right), rest671)
++
++end
++|  ( 149, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, 
++notypeDeclarator1left, notypeDeclarator1right)) :: rest671)) => let
++ val  result = MlyValue.notypeStructDeclarator (
++notypeDeclarator, EmptyExpr)
++ in ( LrTable.NT 56, ( result, notypeDeclarator1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 150, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: ( _, ( _, 
++COLON1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeStructDeclarator (EmptyDecr, expr)
++ in ( LrTable.NT 56, ( result, COLON1left, expr1right), rest671)
++end
++|  ( 151, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: _ :: ( _, ( 
++MlyValue.notypeDeclarator notypeDeclarator, notypeDeclarator1left, _))
++ :: rest671)) => let val  result = MlyValue.notypeStructDeclarator (
++notypeDeclarator, expr)
++ in ( LrTable.NT 56, ( result, notypeDeclarator1left, expr1right), 
++rest671)
++end
++|  ( 152, ( ( _, ( _, CONST1left, CONST1right)) :: rest671)) => let
++ val  result = MlyValue.typeQualifier (CONST)
++ in ( LrTable.NT 39, ( result, CONST1left, CONST1right), rest671)
++end
++|  ( 153, ( ( _, ( _, VOLATILE1left, VOLATILE1right)) :: rest671)) =>
++ let val  result = MlyValue.typeQualifier (VOLATILE)
++ in ( LrTable.NT 39, ( result, VOLATILE1left, VOLATILE1right), rest671
++)
++end
++|  ( 154, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.trailingComma trailingComma, _, _)) :: ( _, ( 
++MlyValue.enumeratorList enumeratorList, _, _)) :: _ :: ( _, ( _, 
++ENUM1left, _)) :: rest671)) => let val  result = 
++MlyValue.enumSpecifier (
++Enum{tagOpt=NONE, enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++)
++ in ( LrTable.NT 42, ( result, ENUM1left, RCURLY1right), rest671)
++end
++|  ( 155, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.trailingComma trailingComma, _, _)) :: ( _, ( 
++MlyValue.enumeratorList enumeratorList, _, _)) :: _ :: ( _, ( 
++MlyValue.ID ID, _, _)) :: ( _, ( _, ENUM1left, _)) :: rest671)) => let
++ val  result = MlyValue.enumSpecifier (
++Enum{tagOpt=SOME(ID), enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++)
++ in ( LrTable.NT 42, ( result, ENUM1left, RCURLY1right), rest671)
++end
++|  ( 156, ( ( _, ( _, _, RCURLY1right)) :: ( _, ( 
++MlyValue.trailingComma trailingComma, _, _)) :: ( _, ( 
++MlyValue.enumeratorList enumeratorList, _, _)) :: _ :: ( _, ( 
++MlyValue.TYPE_NAME TYPE_NAME, _, _)) :: ( _, ( _, ENUM1left, _)) :: 
++rest671)) => let val  result = MlyValue.enumSpecifier (
++Enum{tagOpt=SOME(TYPE_NAME), enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++)
++ in ( LrTable.NT 42, ( result, ENUM1left, RCURLY1right), rest671)
++end
++|  ( 157, ( ( _, ( MlyValue.ID ID, _, ID1right)) :: ( _, ( _, 
++ENUM1left, _)) :: rest671)) => let val  result = 
++MlyValue.enumSpecifier (EnumTag(ID))
++ in ( LrTable.NT 42, ( result, ENUM1left, ID1right), rest671)
++end
++|  ( 158, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, _, TYPE_NAME1right))
++ :: ( _, ( _, ENUM1left, _)) :: rest671)) => let val  result = 
++MlyValue.enumSpecifier (EnumTag(TYPE_NAME))
++ in ( LrTable.NT 42, ( result, ENUM1left, TYPE_NAME1right), rest671)
++
++end
++|  ( 159, ( ( _, ( MlyValue.enumerator enumerator, _, enumerator1right
++)) :: _ :: ( _, ( MlyValue.enumeratorList enumeratorList, 
++enumeratorList1left, _)) :: rest671)) => let val  result = 
++MlyValue.enumeratorList (addToSeq(enumerator, enumeratorList))
++ in ( LrTable.NT 12, ( result, enumeratorList1left, enumerator1right),
++ rest671)
++end
++|  ( 160, ( ( _, ( MlyValue.enumerator enumerator, enumerator1left, 
++enumerator1right)) :: rest671)) => let val  result = 
++MlyValue.enumeratorList (
++(TypeDefs.addNoTdef(#1(enumerator)));
++					 singletonSeq enumerator)
++ in ( LrTable.NT 12, ( result, enumerator1left, enumerator1right), 
++rest671)
++end
++|  ( 161, ( ( _, ( MlyValue.ID ID, ID1left, ID1right)) :: rest671)) =>
++ let val  result = MlyValue.enumerator ((ID,ParseTree.EmptyExpr))
++ in ( LrTable.NT 13, ( result, ID1left, ID1right), rest671)
++end
++|  ( 162, ( ( _, ( MlyValue.expr expr, _, expr1right)) :: _ :: ( _, ( 
++MlyValue.ID ID, ID1left, _)) :: rest671)) => let val  result = 
++MlyValue.enumerator (ID,expr)
++ in ( LrTable.NT 13, ( result, ID1left, expr1right), rest671)
++end
++|  ( 163, ( ( _, ( _, EXTERN1left, EXTERN1right)) :: rest671)) => let
++ val  result = MlyValue.storageClassSpecifier (EXTERN)
++ in ( LrTable.NT 35, ( result, EXTERN1left, EXTERN1right), rest671)
++
++end
++|  ( 164, ( ( _, ( _, STATIC1left, STATIC1right)) :: rest671)) => let
++ val  result = MlyValue.storageClassSpecifier (STATIC)
++ in ( LrTable.NT 35, ( result, STATIC1left, STATIC1right), rest671)
++
++end
++|  ( 165, ( ( _, ( _, AUTO1left, AUTO1right)) :: rest671)) => let val 
++ result = MlyValue.storageClassSpecifier (AUTO)
++ in ( LrTable.NT 35, ( result, AUTO1left, AUTO1right), rest671)
++end
++|  ( 166, ( ( _, ( _, REGISTER1left, REGISTER1right)) :: rest671)) =>
++ let val  result = MlyValue.storageClassSpecifier (REGISTER)
++ in ( LrTable.NT 35, ( result, REGISTER1left, REGISTER1right), rest671
++)
++end
++|  ( 167, ( ( _, ( _, TYPEDEF1left, TYPEDEF1right)) :: rest671)) =>
++ let val  result = MlyValue.storageClassSpecifier (TYPEDEF)
++ in ( LrTable.NT 35, ( result, TYPEDEF1left, TYPEDEF1right), rest671)
++
++end
++|  ( 168, ( rest671)) => let val  result = MlyValue.trailingComma (
++false)
++ in ( LrTable.NT 11, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 169, ( ( _, ( _, COMMA1left, COMMA1right)) :: rest671)) => let
++ val  result = MlyValue.trailingComma (true)
++ in ( LrTable.NT 11, ( result, COMMA1left, COMMA1right), rest671)
++end
++|  ( 170, ( ( _, ( MlyValue.initDeclarator initDeclarator, 
++initDeclarator1left, initDeclarator1right)) :: rest671)) => let val  
++result = MlyValue.initDeclaratorList (singletonSeq initDeclarator)
++ in ( LrTable.NT 18, ( result, initDeclarator1left, 
++initDeclarator1right), rest671)
++end
++|  ( 171, ( ( _, ( MlyValue.initDeclarator initDeclarator, _, 
++initDeclarator1right)) :: _ :: ( _, ( MlyValue.initDeclaratorList 
++initDeclaratorList, initDeclaratorList1left, _)) :: rest671)) => let
++ val  result = MlyValue.initDeclaratorList (
++addToSeq(initDeclarator, initDeclaratorList))
++ in ( LrTable.NT 18, ( result, initDeclaratorList1left, 
++initDeclarator1right), rest671)
++end
++|  ( 172, ( ( _, ( MlyValue.declarator declarator, declarator1left, 
++declarator1right)) :: rest671)) => let val  result = 
++MlyValue.initDeclarator ((declarator,EmptyExpr))
++ in ( LrTable.NT 16, ( result, declarator1left, declarator1right), 
++rest671)
++end
++|  ( 173, ( ( _, ( MlyValue.initializer initializer, _, 
++initializer1right)) :: _ :: ( _, ( MlyValue.declarator declarator, 
++declarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.initDeclarator (declarator,initializer)
++ in ( LrTable.NT 16, ( result, declarator1left, initializer1right), 
++rest671)
++end
++|  ( 174, ( ( _, ( MlyValue.notypeInitDeclarator notypeInitDeclarator,
++ notypeInitDeclarator1left, notypeInitDeclarator1right)) :: rest671))
++ => let val  result = MlyValue.notypeInitDeclaratorList (
++singletonSeq notypeInitDeclarator)
++ in ( LrTable.NT 19, ( result, notypeInitDeclarator1left, 
++notypeInitDeclarator1right), rest671)
++end
++|  ( 175, ( ( _, ( MlyValue.initDeclarator initDeclarator, _, 
++initDeclarator1right)) :: _ :: ( _, ( 
++MlyValue.notypeInitDeclaratorList notypeInitDeclaratorList, 
++notypeInitDeclaratorList1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeInitDeclaratorList (
++addToSeq(initDeclarator, notypeInitDeclaratorList))
++ in ( LrTable.NT 19, ( result, notypeInitDeclaratorList1left, 
++initDeclarator1right), rest671)
++end
++|  ( 176, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, 
++notypeDeclarator1left, notypeDeclarator1right)) :: rest671)) => let
++ val  result = MlyValue.notypeInitDeclarator (
++(notypeDeclarator,EmptyExpr))
++ in ( LrTable.NT 17, ( result, notypeDeclarator1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 177, ( ( _, ( MlyValue.initializer initializer, _, 
++initializer1right)) :: _ :: ( _, ( MlyValue.notypeDeclarator 
++notypeDeclarator, notypeDeclarator1left, _)) :: rest671)) => let val  
++result = MlyValue.notypeInitDeclarator (notypeDeclarator,initializer)
++ in ( LrTable.NT 17, ( result, notypeDeclarator1left, 
++initializer1right), rest671)
++end
++|  ( 178, ( ( _, ( MlyValue.aftertypeDeclarator aftertypeDeclarator, 
++aftertypeDeclarator1left, aftertypeDeclarator1right)) :: rest671)) =>
++ let val  result = MlyValue.declarator (aftertypeDeclarator)
++ in ( LrTable.NT 21, ( result, aftertypeDeclarator1left, 
++aftertypeDeclarator1right), rest671)
++end
++|  ( 179, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, 
++notypeDeclarator1left, notypeDeclarator1right)) :: rest671)) => let
++ val  result = MlyValue.declarator (notypeDeclarator)
++ in ( LrTable.NT 21, ( result, notypeDeclarator1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 180, ( ( _, ( MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator, aftertypeDirectDeclarator1left, 
++aftertypeDirectDeclarator1right)) :: rest671)) => let val  result = 
++MlyValue.aftertypeDeclarator (aftertypeDirectDeclarator)
++ in ( LrTable.NT 22, ( result, aftertypeDirectDeclarator1left, 
++aftertypeDirectDeclarator1right), rest671)
++end
++|  ( 181, ( ( _, ( MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator, _, aftertypeDirectDeclarator1right)) :: ( _
++, ( MlyValue.pointer pointer, pointer1left, _)) :: rest671)) => let
++ val  result = MlyValue.aftertypeDeclarator (
++applyPointer(pointer,aftertypeDirectDeclarator))
++ in ( LrTable.NT 22, ( result, pointer1left, 
++aftertypeDirectDeclarator1right), rest671)
++end
++|  ( 182, ( ( _, ( MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator, notypeDirectDeclarator1left, 
++notypeDirectDeclarator1right)) :: rest671)) => let val  result = 
++MlyValue.notypeDeclarator (notypeDirectDeclarator)
++ in ( LrTable.NT 23, ( result, notypeDirectDeclarator1left, 
++notypeDirectDeclarator1right), rest671)
++end
++|  ( 183, ( ( _, ( MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator, _, notypeDirectDeclarator1right)) :: ( _, ( 
++MlyValue.pointer pointer, pointer1left, _)) :: rest671)) => let val  
++result = MlyValue.notypeDeclarator (
++applyPointer(pointer, notypeDirectDeclarator))
++ in ( LrTable.NT 23, ( result, pointer1left, 
++notypeDirectDeclarator1right), rest671)
++end
++|  ( 184, ( ( _, ( MlyValue.parmDirectDeclarator parmDirectDeclarator,
++ parmDirectDeclarator1left, parmDirectDeclarator1right)) :: rest671))
++ => let val  result = MlyValue.parmDeclarator (parmDirectDeclarator)
++ in ( LrTable.NT 24, ( result, parmDirectDeclarator1left, 
++parmDirectDeclarator1right), rest671)
++end
++|  ( 185, ( ( _, ( MlyValue.parmDirectDeclarator parmDirectDeclarator,
++ _, parmDirectDeclarator1right)) :: ( _, ( MlyValue.pointer pointer, 
++pointer1left, _)) :: rest671)) => let val  result = 
++MlyValue.parmDeclarator (applyPointer(pointer, parmDirectDeclarator))
++ in ( LrTable.NT 24, ( result, pointer1left, 
++parmDirectDeclarator1right), rest671)
++end
++|  ( 186, ( ( _, ( _, TIMES1left, TIMES1right)) :: rest671)) => let
++ val  result = MlyValue.pointer (PointerDecr(EmptyDecr))
++ in ( LrTable.NT 20, ( result, TIMES1left, TIMES1right), rest671)
++end
++|  ( 187, ( ( _, ( MlyValue.typeQualifierList typeQualifierList, _, 
++typeQualifierList1right)) :: ( _, ( _, TIMES1left, _)) :: rest671)) =>
++ let val  result = MlyValue.pointer (
++PointerDecr(loopQd(typeQualifierList,EmptyDecr)))
++ in ( LrTable.NT 20, ( result, TIMES1left, typeQualifierList1right), 
++rest671)
++end
++|  ( 188, ( ( _, ( MlyValue.pointer pointer, _, pointer1right)) :: ( _
++, ( _, TIMES1left, _)) :: rest671)) => let val  result = 
++MlyValue.pointer (PointerDecr(pointer))
++ in ( LrTable.NT 20, ( result, TIMES1left, pointer1right), rest671)
++
++end
++|  ( 189, ( ( _, ( MlyValue.pointer pointer, _, pointer1right)) :: ( _
++, ( MlyValue.typeQualifierList typeQualifierList, _, _)) :: ( _, ( _, 
++TIMES1left, _)) :: rest671)) => let val  result = MlyValue.pointer (
++PointerDecr(loopQd(typeQualifierList,pointer)))
++ in ( LrTable.NT 20, ( result, TIMES1left, pointer1right), rest671)
++
++end
++|  ( 190, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, (TYPE_NAMEleft as 
++TYPE_NAME1left), (TYPE_NAMEright as TYPE_NAME1right))) :: rest671)) =>
++ let val  result = MlyValue.aftertypeDirectDeclarator (
++markDeclarator srcMap (VarDecr TYPE_NAME,TYPE_NAMEleft,TYPE_NAMEright)
++)
++ in ( LrTable.NT 25, ( result, TYPE_NAME1left, TYPE_NAME1right), 
++rest671)
++end
++|  ( 191, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.aftertypeDeclarator aftertypeDeclarator, _, _)) :: ( _, ( _, 
++LPAREN1left, _)) :: rest671)) => let val  result = 
++MlyValue.aftertypeDirectDeclarator (aftertypeDeclarator)
++ in ( LrTable.NT 25, ( result, LPAREN1left, RPAREN1right), rest671)
++
++end
++|  ( 192, ( ( _, ( _, _, RBRACE1right)) :: _ :: ( _, ( 
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator, 
++aftertypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.aftertypeDirectDeclarator (
++ArrayDecr (aftertypeDirectDeclarator,EmptyExpr))
++ in ( LrTable.NT 25, ( result, aftertypeDirectDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 193, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( MlyValue.expr expr,
++ _, _)) :: _ :: ( _, ( MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator, aftertypeDirectDeclarator1left, _)) :: 
++rest671)) => let val  result = MlyValue.aftertypeDirectDeclarator (
++ArrayDecr (aftertypeDirectDeclarator,expr))
++ in ( LrTable.NT 25, ( result, aftertypeDirectDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 194, ( ( _, ( _, _, RPAREN1right)) :: _ :: ( _, ( 
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator, 
++aftertypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.aftertypeDirectDeclarator (
++FuncDecr (aftertypeDirectDeclarator,nil))
++ in ( LrTable.NT 25, ( result, aftertypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 195, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.parameterTypeList parameterTypeList, _, _)) :: _ :: ( _, ( 
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator, 
++aftertypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.aftertypeDirectDeclarator (
++FuncDecr (aftertypeDirectDeclarator,parameterTypeList))
++ in ( LrTable.NT 25, ( result, aftertypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 196, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( MlyValue.identlist 
++identlist, _, _)) :: _ :: ( _, ( MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator, aftertypeDirectDeclarator1left, _)) :: 
++rest671)) => let val  result = MlyValue.aftertypeDirectDeclarator (
++FuncDecr (aftertypeDirectDeclarator,
++					    map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++)
++ in ( LrTable.NT 25, ( result, aftertypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 197, ( ( _, ( MlyValue.ID ID, (IDleft as ID1left), (IDright as 
++ID1right))) :: rest671)) => let val  result = 
++MlyValue.notypeDirectDeclarator (
++markDeclarator srcMap (VarDecr ID,IDleft,IDright))
++ in ( LrTable.NT 26, ( result, ID1left, ID1right), rest671)
++end
++|  ( 198, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.notypeDeclarator notypeDeclarator, _, _)) :: ( _, ( _, 
++LPAREN1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeDirectDeclarator (notypeDeclarator)
++ in ( LrTable.NT 26, ( result, LPAREN1left, RPAREN1right), rest671)
++
++end
++|  ( 199, ( ( _, ( _, _, RBRACE1right)) :: _ :: ( _, ( 
++MlyValue.notypeDirectDeclarator notypeDirectDeclarator, 
++notypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeDirectDeclarator (
++ArrayDecr (notypeDirectDeclarator,EmptyExpr))
++ in ( LrTable.NT 26, ( result, notypeDirectDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 200, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( MlyValue.expr expr,
++ _, _)) :: _ :: ( _, ( MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator, notypeDirectDeclarator1left, _)) :: rest671))
++ => let val  result = MlyValue.notypeDirectDeclarator (
++ArrayDecr (notypeDirectDeclarator,expr))
++ in ( LrTable.NT 26, ( result, notypeDirectDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 201, ( ( _, ( _, _, RPAREN1right)) :: _ :: ( _, ( 
++MlyValue.notypeDirectDeclarator notypeDirectDeclarator, 
++notypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeDirectDeclarator (FuncDecr (notypeDirectDeclarator,nil)
++)
++ in ( LrTable.NT 26, ( result, notypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 202, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.parameterTypeList parameterTypeList, _, _)) :: _ :: ( _, ( 
++MlyValue.notypeDirectDeclarator notypeDirectDeclarator, 
++notypeDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.notypeDirectDeclarator (
++FuncDecr (notypeDirectDeclarator,parameterTypeList))
++ in ( LrTable.NT 26, ( result, notypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 203, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( MlyValue.identlist 
++identlist, _, _)) :: _ :: ( _, ( MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator, notypeDirectDeclarator1left, _)) :: rest671))
++ => let val  result = MlyValue.notypeDirectDeclarator (
++FuncDecr (notypeDirectDeclarator,
++ 						   map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++)
++ in ( LrTable.NT 26, ( result, notypeDirectDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 204, ( ( _, ( MlyValue.TYPE_NAME TYPE_NAME, (TYPE_NAMEleft as 
++TYPE_NAME1left), (TYPE_NAMEright as TYPE_NAME1right))) :: rest671)) =>
++ let val  result = MlyValue.parmDirectDeclarator (
++markDeclarator srcMap (VarDecr TYPE_NAME,TYPE_NAMEleft,TYPE_NAMEright)
++)
++ in ( LrTable.NT 27, ( result, TYPE_NAME1left, TYPE_NAME1right), 
++rest671)
++end
++|  ( 205, ( ( _, ( _, _, RBRACE1right)) :: _ :: ( _, ( 
++MlyValue.parmDirectDeclarator parmDirectDeclarator, 
++parmDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.parmDirectDeclarator (
++ArrayDecr (parmDirectDeclarator,EmptyExpr))
++ in ( LrTable.NT 27, ( result, parmDirectDeclarator1left, RBRACE1right
++), rest671)
++end
++|  ( 206, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( MlyValue.expr expr,
++ _, _)) :: _ :: ( _, ( MlyValue.parmDirectDeclarator 
++parmDirectDeclarator, parmDirectDeclarator1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parmDirectDeclarator (
++ArrayDecr (parmDirectDeclarator,expr))
++ in ( LrTable.NT 27, ( result, parmDirectDeclarator1left, RBRACE1right
++), rest671)
++end
++|  ( 207, ( ( _, ( _, _, RPAREN1right)) :: _ :: ( _, ( 
++MlyValue.parmDirectDeclarator parmDirectDeclarator, 
++parmDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.parmDirectDeclarator (FuncDecr (parmDirectDeclarator,nil))
++ in ( LrTable.NT 27, ( result, parmDirectDeclarator1left, RPAREN1right
++), rest671)
++end
++|  ( 208, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.parameterTypeList parameterTypeList, _, _)) :: _ :: ( _, ( 
++MlyValue.parmDirectDeclarator parmDirectDeclarator, 
++parmDirectDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.parmDirectDeclarator (
++FuncDecr (parmDirectDeclarator,parameterTypeList))
++ in ( LrTable.NT 27, ( result, parmDirectDeclarator1left, RPAREN1right
++), rest671)
++end
++|  ( 209, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( MlyValue.identlist 
++identlist, _, _)) :: _ :: ( _, ( MlyValue.parmDirectDeclarator 
++parmDirectDeclarator, parmDirectDeclarator1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parmDirectDeclarator (
++FuncDecr (parmDirectDeclarator,
++						    map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++)
++ in ( LrTable.NT 27, ( result, parmDirectDeclarator1left, RPAREN1right
++), rest671)
++end
++|  ( 210, ( ( _, ( MlyValue.expr expr, expr1left, expr1right)) :: 
++rest671)) => let val  result = MlyValue.initializer (expr)
++ in ( LrTable.NT 33, ( result, expr1left, expr1right), rest671)
++end
++|  ( 211, ( ( _, ( _, _, (RCURLYright as RCURLY1right))) :: _ :: ( _, 
++( MlyValue.initializerList initializerList, _, _)) :: ( _, ( _, (
++LCURLYleft as LCURLY1left), _)) :: rest671)) => let val  result = 
++MlyValue.initializer (
++markExpression srcMap (InitList(seqToList initializerList),LCURLYleft,RCURLYright)
++)
++ in ( LrTable.NT 33, ( result, LCURLY1left, RCURLY1right), rest671)
++
++end
++|  ( 212, ( ( _, ( MlyValue.initializer initializer, initializer1left,
++ initializer1right)) :: rest671)) => let val  result = 
++MlyValue.initializerList (singletonSeq initializer)
++ in ( LrTable.NT 34, ( result, initializer1left, initializer1right), 
++rest671)
++end
++|  ( 213, ( ( _, ( MlyValue.initializer initializer, _, 
++initializer1right)) :: _ :: ( _, ( MlyValue.initializerList 
++initializerList, initializerList1left, _)) :: rest671)) => let val  
++result = MlyValue.initializerList (
++addToSeq(initializer, initializerList))
++ in ( LrTable.NT 34, ( result, initializerList1left, initializer1right
++), rest671)
++end
++|  ( 214, ( ( _, ( MlyValue.declaration declaration, (declarationleft
++ as declaration1left), (declarationright as declaration1right))) :: 
++rest671)) => let val  result = MlyValue.declarationList (
++singletonSeq(markDeclaration srcMap (declaration,
++									      declarationleft,
++								              declarationright))
++)
++ in ( LrTable.NT 45, ( result, declaration1left, declaration1right), 
++rest671)
++end
++|  ( 215, ( ( _, ( MlyValue.declaration declaration, declarationleft,
++ (declarationright as declaration1right))) :: ( _, ( 
++MlyValue.declarationList declarationList, declarationList1left, _)) ::
++ rest671)) => let val  result = MlyValue.declarationList (
++addToSeq(markDeclaration srcMap (declaration,
++							            	  declarationleft,
++									  declarationright),
++						  declarationList)
++)
++ in ( LrTable.NT 45, ( result, declarationList1left, declaration1right
++), rest671)
++end
++|  ( 216, ( ( _, ( MlyValue.ID ID, (IDleft as ID1left), (IDright as 
++ID1right))) :: rest671)) => let val  result = MlyValue.identlist (
++singletonSeq (ID,IDleft,IDright))
++ in ( LrTable.NT 46, ( result, ID1left, ID1right), rest671)
++end
++|  ( 217, ( ( _, ( MlyValue.ID ID, IDleft, (IDright as ID1right))) ::
++ _ :: ( _, ( MlyValue.identlist identlist, identlist1left, _)) :: 
++rest671)) => let val  result = MlyValue.identlist (
++addToSeq((ID,IDleft,IDright),identlist))
++ in ( LrTable.NT 46, ( result, identlist1left, ID1right), rest671)
++end
++|  ( 218, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, 
++notypeDeclarator1left, notypeDeclarator1right)) :: rest671)) => let
++ val  result = MlyValue.fDefDeclaration (
++insertFuncName(notypeDeclarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(notypeDeclarator);
++					 (unknown, notypeDeclarator)
++)
++ in ( LrTable.NT 44, ( result, notypeDeclarator1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 219, ( ( _, ( MlyValue.declarator declarator, _, declarator1right
++)) :: ( _, ( MlyValue.declarationSpecifiers declarationSpecifiers, 
++declarationSpecifiers1left, _)) :: rest671)) => let val  result = 
++MlyValue.fDefDeclaration (
++insertFuncName(declarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(declarator);
++					 (declarationSpecifiers, declarator)
++)
++ in ( LrTable.NT 44, ( result, declarationSpecifiers1left, 
++declarator1right), rest671)
++end
++|  ( 220, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, _, 
++notypeDeclarator1right)) :: ( _, ( MlyValue.declarationModifiers 
++declarationModifiers, declarationModifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.fDefDeclaration (
++insertFuncName(notypeDeclarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(notypeDeclarator);
++					 (declarationModifiers, notypeDeclarator)
++)
++ in ( LrTable.NT 44, ( result, declarationModifiers1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 221, ( ( _, ( MlyValue.compoundStatement compoundStatement, _, 
++compoundStatement1right)) :: ( _, ( MlyValue.fDefDeclaration 
++fDefDeclaration, fDefDeclaration1left, _)) :: rest671)) => let val  
++result = MlyValue.functionDefinition (
++TypeDefs.popScope();
++					 FunctionDef
++					    {retType = #1 fDefDeclaration,
++					     funDecr = #2 fDefDeclaration,
++                                             krParams = [],
++                                             body = compoundStatement}
++)
++ in ( LrTable.NT 47, ( result, fDefDeclaration1left, 
++compoundStatement1right), rest671)
++end
++|  ( 222, ( ( _, ( MlyValue.compoundStatement compoundStatement, _, 
++compoundStatement1right)) :: ( _, ( MlyValue.declarationList 
++declarationList, _, _)) :: ( _, ( MlyValue.fDefDeclaration 
++fDefDeclaration, fDefDeclaration1left, _)) :: rest671)) => let val  
++result = MlyValue.functionDefinition (
++TypeDefs.popScope();
++					 FunctionDef 
++					    {retType = #1 fDefDeclaration,
++					     funDecr = #2 fDefDeclaration,
++                                             krParams = seqToList declarationList,
++                                             body = compoundStatement}
++)
++ in ( LrTable.NT 47, ( result, fDefDeclaration1left, 
++compoundStatement1right), rest671)
++end
++|  ( 223, ( ( _, ( MlyValue.pointer pointer, pointer1left, 
++pointer1right)) :: rest671)) => let val  result = 
++MlyValue.abstractDeclarator (applyPointer (pointer, EmptyDecr))
++ in ( LrTable.NT 14, ( result, pointer1left, pointer1right), rest671)
++
++end
++|  ( 224, ( ( _, ( MlyValue.directAbstractDeclarator 
++directAbstractDeclarator, directAbstractDeclarator1left, 
++directAbstractDeclarator1right)) :: rest671)) => let val  result = 
++MlyValue.abstractDeclarator (directAbstractDeclarator)
++ in ( LrTable.NT 14, ( result, directAbstractDeclarator1left, 
++directAbstractDeclarator1right), rest671)
++end
++|  ( 225, ( ( _, ( MlyValue.directAbstractDeclarator 
++directAbstractDeclarator, _, directAbstractDeclarator1right)) :: ( _, 
++( MlyValue.pointer pointer, pointer1left, _)) :: rest671)) => let val 
++ result = MlyValue.abstractDeclarator (
++applyPointer(pointer, directAbstractDeclarator))
++ in ( LrTable.NT 14, ( result, pointer1left, 
++directAbstractDeclarator1right), rest671)
++end
++|  ( 226, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.abstractDeclarator abstractDeclarator, _, _)) :: ( _, ( _, 
++LPAREN1left, _)) :: rest671)) => let val  result = 
++MlyValue.directAbstractDeclarator (abstractDeclarator)
++ in ( LrTable.NT 15, ( result, LPAREN1left, RPAREN1right), rest671)
++
++end
++|  ( 227, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( _, LBRACE1left, _))
++ :: rest671)) => let val  result = MlyValue.directAbstractDeclarator (
++ArrayDecr(EmptyDecr, EmptyExpr))
++ in ( LrTable.NT 15, ( result, LBRACE1left, RBRACE1right), rest671)
++
++end
++|  ( 228, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( MlyValue.expr expr,
++ _, _)) :: ( _, ( _, LBRACE1left, _)) :: rest671)) => let val  result
++ = MlyValue.directAbstractDeclarator (ArrayDecr(EmptyDecr, expr))
++ in ( LrTable.NT 15, ( result, LBRACE1left, RBRACE1right), rest671)
++
++end
++|  ( 229, ( ( _, ( _, _, RBRACE1right)) :: _ :: ( _, ( 
++MlyValue.directAbstractDeclarator directAbstractDeclarator, 
++directAbstractDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.directAbstractDeclarator (
++ArrayDecr (directAbstractDeclarator,EmptyExpr))
++ in ( LrTable.NT 15, ( result, directAbstractDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 230, ( ( _, ( _, _, RBRACE1right)) :: ( _, ( MlyValue.expr expr,
++ _, _)) :: _ :: ( _, ( MlyValue.directAbstractDeclarator 
++directAbstractDeclarator, directAbstractDeclarator1left, _)) :: 
++rest671)) => let val  result = MlyValue.directAbstractDeclarator (
++ArrayDecr (directAbstractDeclarator,expr))
++ in ( LrTable.NT 15, ( result, directAbstractDeclarator1left, 
++RBRACE1right), rest671)
++end
++|  ( 231, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( _, LPAREN1left, _))
++ :: rest671)) => let val  result = MlyValue.directAbstractDeclarator (
++FuncDecr (EmptyDecr ,nil))
++ in ( LrTable.NT 15, ( result, LPAREN1left, RPAREN1right), rest671)
++
++end
++|  ( 232, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.parameterTypeList parameterTypeList, _, _)) :: ( _, ( _, 
++LPAREN1left, _)) :: rest671)) => let val  result = 
++MlyValue.directAbstractDeclarator (
++FuncDecr (EmptyDecr, parameterTypeList))
++ in ( LrTable.NT 15, ( result, LPAREN1left, RPAREN1right), rest671)
++
++end
++|  ( 233, ( ( _, ( _, _, RPAREN1right)) :: _ :: ( _, ( 
++MlyValue.directAbstractDeclarator directAbstractDeclarator, 
++directAbstractDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.directAbstractDeclarator (
++FuncDecr (directAbstractDeclarator,nil))
++ in ( LrTable.NT 15, ( result, directAbstractDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 234, ( ( _, ( _, _, RPAREN1right)) :: ( _, ( 
++MlyValue.parameterTypeList parameterTypeList, _, _)) :: _ :: ( _, ( 
++MlyValue.directAbstractDeclarator directAbstractDeclarator, 
++directAbstractDeclarator1left, _)) :: rest671)) => let val  result = 
++MlyValue.directAbstractDeclarator (
++FuncDecr (directAbstractDeclarator, parameterTypeList))
++ in ( LrTable.NT 15, ( result, directAbstractDeclarator1left, 
++RPAREN1right), rest671)
++end
++|  ( 235, ( ( _, ( MlyValue.parameterList parameterList, 
++parameterList1left, parameterList1right)) :: rest671)) => let val  
++result = MlyValue.parameterTypeList (seqToList parameterList)
++ in ( LrTable.NT 52, ( result, parameterList1left, parameterList1right
++), rest671)
++end
++|  ( 236, ( ( _, ( _, _, ELIPSIS1right)) :: _ :: ( _, ( 
++MlyValue.parameterList parameterList, parameterList1left, _)) :: 
++rest671)) => let val  result = MlyValue.parameterTypeList (
++let val decltype = {specifiers=[Ellipses],qualifiers=[],storage=[]}
++	        		 in (seqToList parameterList) @ [(decltype, EllipsesDecr)] end
++)
++ in ( LrTable.NT 52, ( result, parameterList1left, ELIPSIS1right), 
++rest671)
++end
++|  ( 237, ( ( _, ( MlyValue.parameterDeclaration parameterDeclaration,
++ (parameterDeclarationleft as parameterDeclaration1left), (
++parameterDeclarationright as parameterDeclaration1right))) :: rest671)
++) => let val  result = MlyValue.parameterList (
++singletonSeq(#1 parameterDeclaration,
++                                              markDeclarator srcMap (#2 parameterDeclaration,
++							             parameterDeclarationleft,
++								     parameterDeclarationright))
++)
++ in ( LrTable.NT 51, ( result, parameterDeclaration1left, 
++parameterDeclaration1right), rest671)
++end
++|  ( 238, ( ( _, ( MlyValue.parameterDeclaration parameterDeclaration,
++ parameterDeclarationleft, (parameterDeclarationright as 
++parameterDeclaration1right))) :: _ :: ( _, ( MlyValue.parameterList 
++parameterList, parameterList1left, _)) :: rest671)) => let val  result
++ = MlyValue.parameterList (
++addToSeq((#1 parameterDeclaration,
++	                                           markDeclarator
++	                                            srcMap 
++                                                     (#2 parameterDeclaration,
++						      parameterDeclarationleft,
++						      parameterDeclarationright)),
++					  parameterList)
++)
++ in ( LrTable.NT 51, ( result, parameterList1left, 
++parameterDeclaration1right), rest671)
++end
++|  ( 239, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, _, 
++notypeDeclarator1right)) :: ( _, ( MlyValue.declarationSpecifiers 
++declarationSpecifiers, declarationSpecifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parameterDeclaration (
++(declarationSpecifiers, notypeDeclarator))
++ in ( LrTable.NT 53, ( result, declarationSpecifiers1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 240, ( ( _, ( MlyValue.parmDeclarator parmDeclarator, _, 
++parmDeclarator1right)) :: ( _, ( MlyValue.declarationSpecifiers 
++declarationSpecifiers, declarationSpecifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parameterDeclaration (
++(declarationSpecifiers, parmDeclarator))
++ in ( LrTable.NT 53, ( result, declarationSpecifiers1left, 
++parmDeclarator1right), rest671)
++end
++|  ( 241, ( ( _, ( MlyValue.declarationSpecifiers 
++declarationSpecifiers, declarationSpecifiers1left, 
++declarationSpecifiers1right)) :: rest671)) => let val  result = 
++MlyValue.parameterDeclaration ((declarationSpecifiers, EmptyDecr))
++ in ( LrTable.NT 53, ( result, declarationSpecifiers1left, 
++declarationSpecifiers1right), rest671)
++end
++|  ( 242, ( ( _, ( MlyValue.abstractDeclarator abstractDeclarator, _, 
++abstractDeclarator1right)) :: ( _, ( MlyValue.declarationSpecifiers 
++declarationSpecifiers, declarationSpecifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parameterDeclaration (
++(declarationSpecifiers, abstractDeclarator))
++ in ( LrTable.NT 53, ( result, declarationSpecifiers1left, 
++abstractDeclarator1right), rest671)
++end
++|  ( 243, ( ( _, ( MlyValue.notypeDeclarator notypeDeclarator, _, 
++notypeDeclarator1right)) :: ( _, ( MlyValue.declarationModifiers 
++declarationModifiers, declarationModifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parameterDeclaration (
++(declarationModifiers, notypeDeclarator))
++ in ( LrTable.NT 53, ( result, declarationModifiers1left, 
++notypeDeclarator1right), rest671)
++end
++|  ( 244, ( ( _, ( MlyValue.abstractDeclarator abstractDeclarator, _, 
++abstractDeclarator1right)) :: ( _, ( MlyValue.declarationModifiers 
++declarationModifiers, declarationModifiers1left, _)) :: rest671)) =>
++ let val  result = MlyValue.parameterDeclaration (
++(declarationModifiers, abstractDeclarator))
++ in ( LrTable.NT 53, ( result, declarationModifiers1left, 
++abstractDeclarator1right), rest671)
++end
++|  ( 245, ( rest671)) => let val  result = MlyValue.pushScope (
++TypeDefs.pushScope())
++ in ( LrTable.NT 61, ( result, defaultPos, defaultPos), rest671)
++end
++|  ( 246, ( rest671)) => let val  result = MlyValue.popScope (
++TypeDefs.popScope())
++ in ( LrTable.NT 62, ( result, defaultPos, defaultPos), rest671)
++end
++| _ => raise (mlyAction i392)
++end
++val void = MlyValue.VOID'
++val extract = fn a => (fn MlyValue.translationUnit x => x
++| _ => let exception ParseInternal
++	in raise ParseInternal end) a 
++end
++end
++structure Tokens : C_TOKENS =
++struct
++type svalue = ParserData.svalue
++type ('a,'b) token = ('a,'b) Token.token
++fun EOF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 0,(
++ParserData.MlyValue.VOID',p1,p2))
++fun COLON (p1,p2) = Token.TOKEN (ParserData.LrTable.T 1,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SEMICOLON (p1,p2) = Token.TOKEN (ParserData.LrTable.T 2,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LPAREN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 3,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RPAREN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 4,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LCURLY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 5,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RCURLY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 6,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LBRACE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 7,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RBRACE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 8,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DOT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 9,(
++ParserData.MlyValue.VOID',p1,p2))
++fun COMMA (p1,p2) = Token.TOKEN (ParserData.LrTable.T 10,(
++ParserData.MlyValue.VOID',p1,p2))
++fun QUESTION (p1,p2) = Token.TOKEN (ParserData.LrTable.T 11,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PERCENT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 12,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AMP (p1,p2) = Token.TOKEN (ParserData.LrTable.T 13,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BAR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 14,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TILDE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 15,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DIVIDE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 16,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PLUS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 17,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MINUS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 18,(
++ParserData.MlyValue.VOID',p1,p2))
++fun HAT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 19,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BANG (p1,p2) = Token.TOKEN (ParserData.LrTable.T 20,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TIMES (p1,p2) = Token.TOKEN (ParserData.LrTable.T 21,(
++ParserData.MlyValue.VOID',p1,p2))
++fun INC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 22,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DEC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 23,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ARROW (p1,p2) = Token.TOKEN (ParserData.LrTable.T 24,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ID (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 25,(
++ParserData.MlyValue.ID i,p1,p2))
++fun EQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 26,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PLUSEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 27,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MINUSEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 28,(
++ParserData.MlyValue.VOID',p1,p2))
++fun XOREQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 29,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MODEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 30,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TIMESEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 31,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DIVEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 32,(
++ParserData.MlyValue.VOID',p1,p2))
++fun OREQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 33,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ANDEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 34,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LSHIFTEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 35,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RSHIFTEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 36,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LTE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 37,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GTE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 38,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 39,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 40,(
++ParserData.MlyValue.VOID',p1,p2))
++fun EQ (p1,p2) = Token.TOKEN (ParserData.LrTable.T 41,(
++ParserData.MlyValue.VOID',p1,p2))
++fun NEQ (p1,p2) = Token.TOKEN (ParserData.LrTable.T 42,(
++ParserData.MlyValue.VOID',p1,p2))
++fun OR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 43,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AND (p1,p2) = Token.TOKEN (ParserData.LrTable.T 44,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LSHIFT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 45,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RSHIFT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 46,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DECNUM (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 47,(
++ParserData.MlyValue.DECNUM i,p1,p2))
++fun REALNUM (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 48,(
++ParserData.MlyValue.REALNUM i,p1,p2))
++fun STRING (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 49,(
++ParserData.MlyValue.STRING i,p1,p2))
++fun CCONST (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 50,(
++ParserData.MlyValue.CCONST i,p1,p2))
++fun EXTERN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 51,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AUTO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 52,(
++ParserData.MlyValue.VOID',p1,p2))
++fun STATIC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 53,(
++ParserData.MlyValue.VOID',p1,p2))
++fun REGISTER (p1,p2) = Token.TOKEN (ParserData.LrTable.T 54,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CONST (p1,p2) = Token.TOKEN (ParserData.LrTable.T 55,(
++ParserData.MlyValue.VOID',p1,p2))
++fun VOLATILE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 56,(
++ParserData.MlyValue.VOID',p1,p2))
++fun IF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 57,(
++ParserData.MlyValue.VOID',p1,p2))
++fun THEN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 58,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ELSE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 59,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FOR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 60,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 61,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SWITCH (p1,p2) = Token.TOKEN (ParserData.LrTable.T 62,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CASE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 63,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DEFAULT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 64,(
++ParserData.MlyValue.VOID',p1,p2))
++fun WHILE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 65,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RETURN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 66,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BREAK (p1,p2) = Token.TOKEN (ParserData.LrTable.T 67,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CONTINUE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 68,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GOTO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 69,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CHAR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 70,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DOUBLE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 71,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ENUM (p1,p2) = Token.TOKEN (ParserData.LrTable.T 72,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FLOAT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 73,(
++ParserData.MlyValue.VOID',p1,p2))
++fun INT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 74,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LONG (p1,p2) = Token.TOKEN (ParserData.LrTable.T 75,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SHORT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 76,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FRACTIONAL (p1,p2) = Token.TOKEN (ParserData.LrTable.T 77,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SATURATE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 78,(
++ParserData.MlyValue.VOID',p1,p2))
++fun STRUCT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 79,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNION (p1,p2) = Token.TOKEN (ParserData.LrTable.T 80,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNSIGNED (p1,p2) = Token.TOKEN (ParserData.LrTable.T 81,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SIGNED (p1,p2) = Token.TOKEN (ParserData.LrTable.T 82,(
++ParserData.MlyValue.VOID',p1,p2))
++fun VOID (p1,p2) = Token.TOKEN (ParserData.LrTable.T 83,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SIZEOF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 84,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TYPEDEF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 85,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNARY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 86,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ELIPSIS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 87,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TYPE_NAME (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 88,(
++ParserData.MlyValue.TYPE_NAME i,p1,p2))
++end
++end
+diff -Naur ckit/src/parser/grammar/c.grm.sml.orig ckit-mlton/src/parser/grammar/c.grm.sml.orig
+--- ckit/src/parser/grammar/c.grm.sml.orig	1969-12-31 19:00:00.000000000 -0500
++++ ckit-mlton/src/parser/grammar/c.grm.sml.orig	2004-10-26 12:09:49.000000000 -0400
+@@ -0,0 +1,3491 @@
++functor LrValsFun(structure Token : TOKEN 
++			    ) = 
++struct
++structure ParserData=
++struct
++structure Header = 
++struct
++(* DO NOT CHANGE THIS FILE -- this file was generated from cd.grm *)
++
++(* Copyright (c) 1998 by Lucent Technologies *)
++
++(* new comments from Satish Chandra, 6/21/99 *)
++(* Overriding design approach: 
++ *
++ * Accept all legal programs, but possibly some illegal ones at this stage. 
++ * Do not attempt to make a really tight grammar. Our tools are supposed to
++ * work on "correct" C programs (i.e. those that cc -ansi would compile without
++ * warnings). Of course, a type checker on the parse tree can report some errors
++ * as syntax errors.
++ *
++ * Note on MARK:
++ *
++ * externalDecl, statement, and expression are the non-terms that are marked.
++ * Compound statements are not separately marked.
++ * declarations eventually become either a statement or a externalDecl
++ *   if they are outside any function. They are marked accordingly.
++ *
++ * Note on function definitions:
++ *
++ * The order of the paramaters will always come from the FuncDecr.
++ * The types of the parameter may come from the second declaration list  
++ * (in K&R style)
++ *
++ * Note on the structure of the grammar:
++ *
++ * It is difficult to write a LALR(1) grammar based on the grammar given at
++ * the back of the K&R book. The basic difficulty is that both TYPE_NAME and
++ * ID are tokens that are strings, but it depends on the context whether
++ * a given string is to be treated as an ID or a TYPE_NAME.
++ * We have borrowed the solution used in GCC's parser specification. In this
++ * scheme, the lexer always return the token TYPE_NAME if a name has been 
++ * defined as a type name (via a typedef) in an applicable scope. The grammar 
++ * productions are heavily rearranged (from K&R's grammar) to do the right 
++ * thing. In this rearrangement, the basic idea is that a TYPE_NAME is  
++ * allowed to appear in a declaration as a plain identifier only after a type 
++ * specifier has previously appeared in the declaration. Also, a TYPE_NAME may 
++ * appear only once in a declaration as a type specifier.
++ *)
++
++(* old comments below *)
++(* Shortcomings *)
++(* 1. No floating-point whatsoever *)
++
++(* Notes on MARK:
++ * externalDecl and statement are the non-terms that are marked.
++ * Compound statements are not separately marked.
++ * expressions are not marked at all.
++ * declarations eventually become either a statement or a externalDecl
++ *   if they are outside any function. they are marked accordingly.
++ *)
++ 
++(* Overriding theme: accept all legal programs, but also some illegal ones at this
++ * stage. Do not attempt to make a really tight grammar. Our tools are supposed to
++ * work on "correct" C programs (i.e. those that cc -ansi would compile without
++ * warnings). Of course, a type checker on the parse tree can report some errors
++ * as syntax errors.
++ *)
++
++(* About function definitions:
++ * The order of the paramaters will always come from the FuncDecr thing 
++ * The types of the parameter may come from the second declaration list  (in K&R style)
++ *)
++
++open ParseTree (* PortingHelp *)
++
++fun markExternalDecl srcMap (d,left,right) = 
++    MARKexternalDecl(SourceMap.location srcMap (left,right), d)
++
++fun markDeclaration srcMap (d,left,right) = 
++    MARKdeclaration(SourceMap.location srcMap (left,right), d)
++
++fun markDeclarator srcMap (d,left,right) = 
++    MARKdeclarator(SourceMap.location srcMap (left,right), d)
++
++fun markStatement srcMap (s,left,right) = 
++    MARKstatement(SourceMap.location srcMap (left, right), s)
++
++fun markExpression srcMap (s,left,right) = 
++    MARKexpression(SourceMap.location srcMap (left, right), s)
++
++val unknown = {storage=[],qualifiers=[],specifiers=[]}:decltype
++
++(* this code duplicated in BuildAst in function processDeclarator *)
++fun ctypeDecrToTypeName (typ as {qualifiers, specifiers},decr) =
++      let fun mkTyp spc = {qualifiers=[], specifiers=[spc]}
++	  fun addQual q = {qualifiers=q::qualifiers, specifiers=specifiers}
++       in case decr
++	    of VarDecr x => (typ,SOME x)
++	     | PointerDecr x =>
++		ctypeDecrToTypeName (mkTyp (Pointer typ),x)
++	     | ArrayDecr (x,sz) =>
++		ctypeDecrToTypeName (mkTyp (Array (sz,typ)),x)
++	     | FuncDecr (x,lst) =>
++		ctypeDecrToTypeName (mkTyp (Function{retType=typ,params=lst}),x)
++	     | QualDecr (q,decr) =>
++		ctypeDecrToTypeName (addQual q, decr)
++	     | EmptyDecr => (typ, NONE)
++	     | EllipsesDecr => (mkTyp Ellipses, SOME("**ellipses**"))
++	     | DecrExt _ => (typ, NONE)  (* should call decr extension? *)
++	     | MARKdeclarator(loc, decr) => ctypeDecrToTypeName(typ, decr)
++      end
++
++fun dclr2str dcl = 
++  (case ctypeDecrToTypeName ({qualifiers=[],specifiers=[]}, dcl)
++     of (_,SOME s) => s
++      | (_,NONE) => "")
++
++fun combineDecltypes ( {qualifiers=q1,storage=st1,specifiers=sp1}
++	           , {qualifiers=q2,storage=st2,specifiers=sp2}
++	           ) =
++  {qualifiers=q1@q2,storage=st1@st2,specifiers=sp1@sp2}  (* @ ok *)
++
++fun applyPointer (PointerDecr x,rest) = PointerDecr (applyPointer (x,rest))
++  | applyPointer (QualDecr (q,x),rest) = QualDecr (q, applyPointer (x,rest))
++  | applyPointer (EmptyDecr, rest) = rest
++  | applyPointer (_, rest) = rest  
++    (* NCH/DBM[6/14/99]: this case can never occur  *)
++
++fun addStorage(st, {qualifiers,storage,specifiers}) =
++        {qualifiers=qualifiers,storage=st::storage,specifiers=specifiers}
++
++fun addQualifiers(qs, {qualifiers,storage,specifiers}) =
++	{qualifiers=qs@qualifiers,storage=storage,specifiers=specifiers} (* @ ok *)
++
++fun addQualifier(q, {qualifiers,storage,specifiers}) =
++	{qualifiers=q::qualifiers,storage=storage,specifiers=specifiers}
++
++fun addSpecifier(sp, {qualifiers,storage,specifiers}) =
++	{qualifiers=qualifiers,storage=storage,specifiers=sp::specifiers}
++
++val addAll = combineDecltypes
++
++fun loopQd (q::rst, acc) = loopQd(rst, QualDecr(q, acc))
++  | loopQd (nil, acc) = acc
++
++fun mkCtype typ = typ
++
++(* DBM: major kludge, using TYPEDEF as storage class *)
++fun insertDeclNames ({storage,...}: decltype, idl) =
++    case storage
++      of [TYPEDEF] =>  List.app (fn x as (dcl,_) => TypeDefs.addTdef (dclr2str dcl)) idl
++       | _ => List.app (fn x as (dcl,_) => TypeDefs.addNoTdef (dclr2str dcl)) idl
++
++fun insertFuncName dcl =
++  let
++    val name = dclr2str dcl
++  in
++    TypeDefs.addNoTdef name
++  end
++
++fun insertFuncParams (FuncDecr (_,params)) : unit = 
++     let
++       fun getName (ct, dclr) = dclr2str dclr
++       val names = map getName params
++     in
++       List.app TypeDefs.addNoTdef names
++     end
++  | insertFuncParams (ArrayDecr(dcl,_)) = insertFuncParams dcl
++  | insertFuncParams (PointerDecr dcl) = insertFuncParams dcl
++  | insertFuncParams _ = ()  (* this is actually an error, but it will be caught in
++		              * BuildAst when processing a PT.FunctionDef *)
++
++abstype 'a seq = SEQ of 'a list
++with val emptySeq = SEQ nil
++     fun singletonSeq x = SEQ[x]
++     fun addToSeq(x, SEQ yl) = SEQ(x :: yl)  (* add to end of sequence! *)
++  (* fun addListToEnd(xl, yl) = SEQ((List.rev xl) @ yl) *)
++     fun addOptToEnd(NONE, yl) = yl
++       | addOptToEnd(SOME x, SEQ yl) = SEQ(x :: yl)
++     fun seqToList(SEQ yl) = List.rev yl
++end
++
++
++end
++structure LrTable = Token.LrTable
++structure Token = Token
++local open LrTable in 
++val table=let val actionRows =
++"\
++\\001\000\001\000\000\000\000\000\
++\\001\000\002\000\169\000\004\000\070\000\022\000\042\000\026\000\041\000\
++\\089\000\069\000\000\000\
++\\001\000\002\000\174\000\004\000\043\000\022\000\042\000\026\000\041\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\089\000\021\000\000\000\
++\\001\000\002\000\226\000\000\000\
++\\001\000\002\000\075\001\011\000\178\000\000\000\
++\\001\000\002\000\115\001\011\000\178\000\000\000\
++\\001\000\003\000\083\002\006\000\130\002\011\000\083\002\027\000\139\000\
++\\052\000\130\002\053\000\130\002\054\000\130\002\055\000\130\002\
++\\056\000\130\002\057\000\130\002\071\000\130\002\072\000\130\002\
++\\073\000\130\002\074\000\130\002\075\000\130\002\076\000\130\002\
++\\077\000\130\002\080\000\130\002\081\000\130\002\082\000\130\002\
++\\083\000\130\002\084\000\130\002\086\000\130\002\089\000\130\002\000\000\
++\\001\000\003\000\087\002\006\000\131\002\011\000\087\002\027\000\135\000\
++\\052\000\131\002\053\000\131\002\054\000\131\002\055\000\131\002\
++\\056\000\131\002\057\000\131\002\071\000\131\002\072\000\131\002\
++\\073\000\131\002\074\000\131\002\075\000\131\002\076\000\131\002\
++\\077\000\131\002\080\000\131\002\081\000\131\002\082\000\131\002\
++\\083\000\131\002\084\000\131\002\086\000\131\002\089\000\131\002\000\000\
++\\001\000\003\000\048\000\000\000\
++\\001\000\003\000\127\000\004\000\126\000\006\000\054\000\007\000\194\001\
++\\014\000\125\000\016\000\124\000\018\000\123\000\019\000\122\000\
++\\021\000\121\000\022\000\120\000\023\000\119\000\024\000\118\000\
++\\026\000\117\000\048\000\116\000\049\000\115\000\050\000\114\000\
++\\051\000\113\000\052\000\156\002\053\000\156\002\054\000\156\002\
++\\055\000\156\002\056\000\156\002\057\000\156\002\058\000\112\000\
++\\061\000\111\000\062\000\110\000\063\000\109\000\064\000\108\000\
++\\065\000\107\000\066\000\106\000\067\000\105\000\068\000\104\000\
++\\069\000\103\000\070\000\102\000\071\000\156\002\072\000\156\002\
++\\073\000\156\002\074\000\156\002\075\000\156\002\076\000\156\002\
++\\077\000\156\002\080\000\156\002\081\000\156\002\082\000\156\002\
++\\083\000\156\002\084\000\156\002\085\000\101\000\086\000\156\002\
++\\089\000\156\002\000\000\
++\\001\000\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\058\000\112\000\061\000\111\000\062\000\110\000\063\000\109\000\
++\\064\000\108\000\065\000\107\000\066\000\106\000\067\000\105\000\
++\\068\000\104\000\069\000\103\000\070\000\102\000\085\000\101\000\000\000\
++\\001\000\003\000\179\000\011\000\178\000\000\000\
++\\001\000\003\000\221\000\000\000\
++\\001\000\003\000\222\000\000\000\
++\\001\000\003\000\021\001\011\000\020\001\000\000\
++\\001\000\003\000\025\001\011\000\024\001\000\000\
++\\001\000\003\000\071\001\000\000\
++\\001\000\003\000\072\001\000\000\
++\\001\000\003\000\124\001\000\000\
++\\001\000\003\000\159\001\000\000\
++\\001\000\003\000\161\001\000\000\
++\\001\000\004\000\043\000\022\000\042\000\026\000\041\000\000\000\
++\\001\000\004\000\043\000\022\000\042\000\026\000\041\000\052\000\040\000\
++\\053\000\039\000\054\000\038\000\055\000\037\000\056\000\036\000\
++\\057\000\035\000\071\000\034\000\072\000\033\000\073\000\032\000\
++\\074\000\031\000\075\000\030\000\076\000\029\000\077\000\028\000\
++\\080\000\027\000\081\000\026\000\082\000\025\000\083\000\024\000\
++\\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\043\000\026\000\041\000\000\000\
++\\001\000\004\000\070\000\022\000\042\000\026\000\041\000\089\000\069\000\000\000\
++\\001\000\004\000\070\000\026\000\041\000\089\000\069\000\000\000\
++\\001\000\004\000\126\000\005\000\069\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\006\000\242\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\145\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\245\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\098\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\130\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\009\000\137\001\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\085\000\101\000\089\000\021\000\000\000\
++\\001\000\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\252\000\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\088\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\133\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\153\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\215\000\008\000\214\000\009\000\155\001\010\000\213\000\
++\\012\000\212\000\013\000\211\000\014\000\210\000\015\000\209\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\020\000\205\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\027\000\200\000\028\000\199\000\029\000\198\000\030\000\197\000\
++\\031\000\196\000\032\000\195\000\033\000\194\000\034\000\193\000\
++\\035\000\192\000\036\000\191\000\037\000\190\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\001\000\004\000\219\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\001\000\004\000\225\000\000\000\
++\\001\000\004\000\228\000\000\000\
++\\001\000\004\000\230\000\000\000\
++\\001\000\004\000\231\000\000\000\
++\\001\000\004\000\006\001\005\000\101\001\008\000\005\001\022\000\042\000\
++\\026\000\041\000\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\004\000\006\001\008\000\005\001\022\000\042\000\026\000\041\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\083\001\005\000\101\001\008\000\005\001\022\000\042\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\004\000\123\001\000\000\
++\\001\000\005\000\153\000\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\161\000\000\000\
++\\001\000\005\000\248\000\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\251\000\000\000\
++\\001\000\005\000\253\000\000\000\
++\\001\000\005\000\000\001\011\000\255\000\000\000\
++\\001\000\005\000\084\001\000\000\
++\\001\000\005\000\085\001\011\000\178\000\000\000\
++\\001\000\005\000\089\001\000\000\
++\\001\000\005\000\090\001\011\000\255\000\000\000\
++\\001\000\005\000\118\001\011\000\117\001\000\000\
++\\001\000\005\000\119\001\000\000\
++\\001\000\005\000\120\001\011\000\178\000\000\000\
++\\001\000\005\000\122\001\011\000\178\000\000\000\
++\\001\000\005\000\125\001\011\000\178\000\000\000\
++\\001\000\005\000\132\001\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\005\000\134\001\000\000\
++\\001\000\005\000\135\001\000\000\
++\\001\000\005\000\140\001\026\000\152\000\052\000\040\000\053\000\039\000\
++\\054\000\038\000\055\000\037\000\056\000\036\000\057\000\035\000\
++\\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\086\000\022\000\089\000\021\000\000\000\
++\\001\000\005\000\154\001\000\000\
++\\001\000\005\000\156\001\000\000\
++\\001\000\005\000\157\001\011\000\255\000\000\000\
++\\001\000\005\000\158\001\011\000\178\000\000\000\
++\\001\000\005\000\164\001\000\000\
++\\001\000\006\000\047\000\026\000\046\000\089\000\045\000\000\000\
++\\001\000\006\000\054\000\052\000\040\000\053\000\039\000\054\000\038\000\
++\\055\000\037\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\086\000\022\000\
++\\089\000\021\000\000\000\
++\\001\000\006\000\076\000\026\000\075\000\089\000\074\000\000\000\
++\\001\000\007\000\165\000\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\217\000\000\000\
++\\001\000\007\000\018\001\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\019\001\056\000\036\000\057\000\035\000\071\000\034\000\
++\\072\000\033\000\073\000\032\000\074\000\031\000\075\000\030\000\
++\\076\000\029\000\077\000\028\000\080\000\027\000\081\000\026\000\
++\\082\000\025\000\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\007\000\107\001\000\000\
++\\001\000\007\000\141\001\000\000\
++\\001\000\007\000\142\001\000\000\
++\\001\000\007\000\143\001\000\000\
++\\001\000\007\000\151\001\000\000\
++\\001\000\009\000\116\001\011\000\178\000\000\000\
++\\001\000\026\000\158\000\000\000\
++\\001\000\026\000\220\000\000\000\
++\\001\000\026\000\054\001\089\000\053\001\000\000\
++\\001\000\026\000\065\001\089\000\064\001\000\000\
++\\001\000\026\000\093\001\000\000\
++\\001\000\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\088\000\092\001\
++\\089\000\021\000\000\000\
++\\001\000\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\001\000\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\089\000\021\000\000\000\
++\\001\000\066\000\077\001\000\000\
++\\001\000\071\000\034\000\072\000\033\000\073\000\032\000\074\000\031\000\
++\\075\000\030\000\076\000\029\000\077\000\028\000\080\000\027\000\
++\\081\000\026\000\082\000\025\000\083\000\024\000\084\000\023\000\
++\\089\000\021\000\000\000\
++\\167\001\003\000\044\000\004\000\043\000\022\000\042\000\026\000\041\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\089\000\021\000\000\000\
++\\168\001\000\000\
++\\169\001\000\000\
++\\170\001\000\000\
++\\171\001\000\000\
++\\172\001\000\000\
++\\173\001\000\000\
++\\174\001\000\000\
++\\175\001\000\000\
++\\176\001\000\000\
++\\177\001\000\000\
++\\178\001\000\000\
++\\179\001\000\000\
++\\180\001\000\000\
++\\181\001\000\000\
++\\182\001\000\000\
++\\183\001\000\000\
++\\184\001\000\000\
++\\185\001\060\000\160\001\000\000\
++\\186\001\000\000\
++\\187\001\000\000\
++\\188\001\000\000\
++\\189\001\000\000\
++\\190\001\004\000\070\000\022\000\042\000\026\000\041\000\089\000\069\000\000\000\
++\\191\001\011\000\141\000\000\000\
++\\192\001\011\000\136\000\000\000\
++\\193\001\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\058\000\112\000\061\000\111\000\062\000\110\000\063\000\109\000\
++\\064\000\108\000\065\000\107\000\066\000\106\000\067\000\105\000\
++\\068\000\104\000\069\000\103\000\070\000\102\000\085\000\101\000\000\000\
++\\194\001\003\000\127\000\004\000\126\000\006\000\054\000\014\000\125\000\
++\\016\000\124\000\018\000\123\000\019\000\122\000\021\000\121\000\
++\\022\000\120\000\023\000\119\000\024\000\118\000\026\000\117\000\
++\\048\000\116\000\049\000\115\000\050\000\114\000\051\000\113\000\
++\\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\058\000\112\000\061\000\111\000\
++\\062\000\110\000\063\000\109\000\064\000\108\000\065\000\107\000\
++\\066\000\106\000\067\000\105\000\068\000\104\000\069\000\103\000\
++\\070\000\102\000\071\000\034\000\072\000\033\000\073\000\032\000\
++\\074\000\031\000\075\000\030\000\076\000\029\000\077\000\028\000\
++\\080\000\027\000\081\000\026\000\082\000\025\000\083\000\024\000\
++\\084\000\023\000\085\000\101\000\086\000\022\000\089\000\021\000\000\000\
++\\195\001\000\000\
++\\196\001\000\000\
++\\197\001\000\000\
++\\198\001\000\000\
++\\199\001\000\000\
++\\200\001\000\000\
++\\201\001\000\000\
++\\202\001\000\000\
++\\203\001\000\000\
++\\204\001\000\000\
++\\205\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\044\000\183\000\045\000\182\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\206\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\207\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\208\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\209\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\210\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\211\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\212\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\213\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\214\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\215\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\216\001\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\217\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\015\000\209\000\017\000\208\000\018\000\207\000\
++\\019\000\206\000\020\000\205\000\022\000\204\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\218\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\015\000\209\000\017\000\208\000\018\000\207\000\
++\\019\000\206\000\020\000\205\000\022\000\204\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\046\000\181\000\047\000\180\000\000\000\
++\\219\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\017\000\208\000\018\000\207\000\019\000\206\000\
++\\020\000\205\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\038\000\189\000\039\000\188\000\040\000\187\000\
++\\041\000\186\000\042\000\185\000\043\000\184\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\220\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\014\000\210\000\017\000\208\000\018\000\207\000\019\000\206\000\
++\\022\000\204\000\023\000\203\000\024\000\202\000\025\000\201\000\
++\\038\000\189\000\039\000\188\000\040\000\187\000\041\000\186\000\
++\\042\000\185\000\043\000\184\000\046\000\181\000\047\000\180\000\000\000\
++\\221\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\042\000\185\000\
++\\043\000\184\000\046\000\181\000\047\000\180\000\000\000\
++\\222\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\223\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\038\000\189\000\
++\\039\000\188\000\040\000\187\000\041\000\186\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\224\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\225\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\226\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\227\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\046\000\181\000\
++\\047\000\180\000\000\000\
++\\228\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\000\000\
++\\229\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\018\000\207\000\019\000\206\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\000\000\
++\\230\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\000\000\
++\\231\001\004\000\215\000\008\000\214\000\010\000\213\000\013\000\211\000\
++\\017\000\208\000\022\000\204\000\023\000\203\000\024\000\202\000\
++\\025\000\201\000\000\000\
++\\232\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\233\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\234\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\235\001\000\000\
++\\236\001\000\000\
++\\237\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\238\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\239\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\240\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\241\001\004\000\215\000\008\000\214\000\010\000\213\000\023\000\203\000\
++\\024\000\202\000\025\000\201\000\000\000\
++\\242\001\004\000\126\000\016\000\124\000\021\000\121\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\243\001\000\000\
++\\244\001\000\000\
++\\245\001\000\000\
++\\246\001\000\000\
++\\247\001\000\000\
++\\248\001\000\000\
++\\249\001\000\000\
++\\250\001\000\000\
++\\251\001\000\000\
++\\252\001\000\000\
++\\253\001\000\000\
++\\254\001\000\000\
++\\254\001\002\000\233\000\000\000\
++\\255\001\000\000\
++\\000\002\050\000\114\000\000\000\
++\\001\002\000\000\
++\\002\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\003\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\004\002\004\000\126\000\014\000\125\000\016\000\124\000\018\000\123\000\
++\\019\000\122\000\021\000\121\000\022\000\120\000\023\000\119\000\
++\\024\000\118\000\026\000\144\000\048\000\116\000\049\000\115\000\
++\\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\005\002\011\000\178\000\000\000\
++\\006\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\007\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\008\002\004\000\083\001\008\000\005\001\022\000\042\000\000\000\
++\\009\002\000\000\
++\\010\002\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\000\000\
++\\011\002\052\000\040\000\053\000\039\000\054\000\038\000\055\000\037\000\
++\\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\086\000\022\000\000\000\
++\\012\002\000\000\
++\\013\002\000\000\
++\\014\002\000\000\
++\\015\002\000\000\
++\\016\002\000\000\
++\\017\002\000\000\
++\\018\002\000\000\
++\\019\002\000\000\
++\\020\002\000\000\
++\\021\002\000\000\
++\\022\002\000\000\
++\\023\002\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\000\000\
++\\024\002\056\000\036\000\057\000\035\000\071\000\034\000\072\000\033\000\
++\\073\000\032\000\074\000\031\000\075\000\030\000\076\000\029\000\
++\\077\000\028\000\080\000\027\000\081\000\026\000\082\000\025\000\
++\\083\000\024\000\084\000\023\000\000\000\
++\\025\002\000\000\
++\\026\002\000\000\
++\\027\002\056\000\036\000\057\000\035\000\000\000\
++\\028\002\000\000\
++\\029\002\000\000\
++\\030\002\000\000\
++\\031\002\000\000\
++\\032\002\000\000\
++\\033\002\000\000\
++\\034\002\000\000\
++\\035\002\000\000\
++\\036\002\000\000\
++\\037\002\000\000\
++\\038\002\000\000\
++\\039\002\000\000\
++\\040\002\000\000\
++\\041\002\000\000\
++\\042\002\000\000\
++\\043\002\000\000\
++\\044\002\000\000\
++\\045\002\006\000\082\000\000\000\
++\\046\002\006\000\081\000\000\000\
++\\047\002\000\000\
++\\048\002\000\000\
++\\049\002\000\000\
++\\050\002\000\000\
++\\051\002\000\000\
++\\052\002\000\000\
++\\053\002\000\000\
++\\054\002\000\000\
++\\055\002\000\000\
++\\056\002\000\000\
++\\057\002\002\000\022\001\000\000\
++\\058\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\059\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\060\002\002\000\027\001\000\000\
++\\061\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\062\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\063\002\000\000\
++\\064\002\000\000\
++\\065\002\000\000\
++\\066\002\000\000\
++\\067\002\000\000\
++\\068\002\006\000\155\000\000\000\
++\\069\002\006\000\154\000\000\000\
++\\070\002\000\000\
++\\071\002\000\000\
++\\072\002\027\000\017\001\000\000\
++\\073\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\074\002\000\000\
++\\075\002\000\000\
++\\076\002\000\000\
++\\077\002\000\000\
++\\078\002\000\000\
++\\079\002\011\000\016\001\000\000\
++\\079\002\011\000\128\001\000\000\
++\\080\002\004\000\126\000\006\000\242\000\014\000\125\000\016\000\124\000\
++\\018\000\123\000\019\000\122\000\021\000\121\000\022\000\120\000\
++\\023\000\119\000\024\000\118\000\026\000\144\000\048\000\116\000\
++\\049\000\115\000\050\000\114\000\051\000\113\000\085\000\101\000\000\000\
++\\080\002\026\000\158\000\000\000\
++\\081\002\000\000\
++\\082\002\000\000\
++\\083\002\027\000\139\000\000\000\
++\\084\002\000\000\
++\\085\002\000\000\
++\\086\002\000\000\
++\\087\002\027\000\135\000\000\000\
++\\088\002\000\000\
++\\089\002\000\000\
++\\090\002\000\000\
++\\091\002\004\000\138\000\008\000\137\000\000\000\
++\\092\002\004\000\138\000\008\000\137\000\000\000\
++\\093\002\004\000\072\000\008\000\071\000\000\000\
++\\094\002\004\000\072\000\008\000\071\000\000\000\
++\\095\002\004\000\103\001\008\000\102\001\000\000\
++\\096\002\004\000\103\001\008\000\102\001\000\000\
++\\097\002\022\000\042\000\056\000\036\000\057\000\035\000\000\000\
++\\098\002\022\000\042\000\000\000\
++\\099\002\000\000\
++\\100\002\000\000\
++\\101\002\000\000\
++\\102\002\000\000\
++\\103\002\000\000\
++\\104\002\000\000\
++\\105\002\000\000\
++\\106\002\000\000\
++\\107\002\000\000\
++\\108\002\000\000\
++\\109\002\000\000\
++\\110\002\000\000\
++\\111\002\000\000\
++\\112\002\000\000\
++\\113\002\000\000\
++\\114\002\000\000\
++\\115\002\000\000\
++\\116\002\000\000\
++\\117\002\000\000\
++\\118\002\000\000\
++\\119\002\000\000\
++\\120\002\000\000\
++\\121\002\004\000\215\000\008\000\214\000\010\000\213\000\012\000\212\000\
++\\013\000\211\000\014\000\210\000\015\000\209\000\017\000\208\000\
++\\018\000\207\000\019\000\206\000\020\000\205\000\022\000\204\000\
++\\023\000\203\000\024\000\202\000\025\000\201\000\027\000\200\000\
++\\028\000\199\000\029\000\198\000\030\000\197\000\031\000\196\000\
++\\032\000\195\000\033\000\194\000\034\000\193\000\035\000\192\000\
++\\036\000\191\000\037\000\190\000\038\000\189\000\039\000\188\000\
++\\040\000\187\000\041\000\186\000\042\000\185\000\043\000\184\000\
++\\044\000\183\000\045\000\182\000\046\000\181\000\047\000\180\000\000\000\
++\\122\002\000\000\
++\\123\002\000\000\
++\\124\002\000\000\
++\\125\002\000\000\
++\\126\002\000\000\
++\\127\002\000\000\
++\\128\002\000\000\
++\\129\002\000\000\
++\\132\002\000\000\
++\\133\002\000\000\
++\\134\002\004\000\006\001\008\000\005\001\026\000\041\000\000\000\
++\\134\002\004\000\006\001\008\000\005\001\026\000\041\000\089\000\012\001\000\000\
++\\134\002\004\000\083\001\008\000\005\001\000\000\
++\\135\002\004\000\096\001\008\000\095\001\000\000\
++\\136\002\004\000\096\001\008\000\095\001\000\000\
++\\137\002\000\000\
++\\138\002\000\000\
++\\139\002\000\000\
++\\140\002\000\000\
++\\141\002\000\000\
++\\142\002\000\000\
++\\143\002\000\000\
++\\144\002\000\000\
++\\145\002\000\000\
++\\146\002\011\000\254\000\000\000\
++\\147\002\000\000\
++\\148\002\000\000\
++\\149\002\000\000\
++\\150\002\000\000\
++\\151\002\000\000\
++\\152\002\004\000\006\001\008\000\005\001\022\000\042\000\026\000\041\000\
++\\089\000\012\001\000\000\
++\\153\002\000\000\
++\\154\002\000\000\
++\\155\002\000\000\
++\\157\002\000\000\
++\"
++val actionRowNumbers =
++"\097\000\096\000\073\000\098\000\
++\\008\000\099\000\101\000\074\000\
++\\216\000\217\000\207\000\215\000\
++\\198\000\205\000\022\000\119\000\
++\\025\001\061\001\023\000\218\000\
++\\008\001\219\000\226\000\227\000\
++\\234\000\233\000\221\000\223\000\
++\\222\000\224\000\075\000\225\000\
++\\220\000\250\000\249\000\007\001\
++\\005\001\006\001\004\001\040\001\
++\\029\001\021\000\100\000\232\000\
++\\231\000\093\000\118\000\057\001\
++\\074\000\022\000\119\000\062\001\
++\\009\000\196\000\208\000\198\000\
++\\206\000\007\000\121\000\017\001\
++\\023\001\022\001\021\001\006\000\
++\\025\000\120\000\013\001\033\001\
++\\024\000\028\000\049\000\026\001\
++\\255\000\254\000\086\000\030\001\
++\\213\000\031\001\050\000\093\000\
++\\093\000\235\000\076\000\001\000\
++\\002\000\211\000\058\001\063\001\
++\\019\001\015\001\185\000\092\000\
++\\034\000\011\000\188\000\110\000\
++\\122\000\077\000\124\000\040\000\
++\\087\000\012\000\013\000\190\000\
++\\041\000\003\000\034\000\042\000\
++\\010\000\043\000\044\000\182\000\
++\\186\000\181\000\180\000\184\000\
++\\034\000\034\000\129\000\133\000\
++\\131\000\130\000\132\000\128\000\
++\\033\000\117\000\203\000\204\000\
++\\202\000\201\000\200\000\199\000\
++\\197\000\027\000\024\000\029\000\
++\\051\000\027\000\024\001\024\000\
++\\052\000\035\000\183\000\042\001\
++\\080\001\053\000\078\001\054\000\
++\\046\000\084\001\059\001\044\001\
++\\086\000\086\000\001\001\009\001\
++\\002\001\032\001\214\000\041\001\
++\\078\000\079\000\236\000\228\000\
++\\014\000\239\000\243\000\034\000\
++\\015\000\241\000\211\000\246\000\
++\\034\000\209\000\123\000\168\000\
++\\034\000\116\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\088\000\
++\\165\000\164\000\034\000\034\000\
++\\034\000\034\000\034\000\034\000\
++\\034\000\034\000\034\000\089\000\
++\\034\000\026\000\125\000\127\000\
++\\169\000\033\000\016\000\107\000\
++\\106\000\191\000\017\000\034\000\
++\\010\000\004\000\034\000\094\000\
++\\190\000\034\000\187\000\010\000\
++\\167\000\166\000\194\000\095\000\
++\\055\000\056\000\020\001\053\001\
++\\027\000\018\001\036\000\035\001\
++\\057\000\058\000\037\001\016\001\
++\\014\001\034\001\043\001\045\001\
++\\091\000\090\000\046\001\086\001\
++\\064\001\067\001\087\001\030\000\
++\\045\000\027\001\083\001\082\001\
++\\065\001\085\001\047\001\009\001\
++\\009\001\080\000\012\001\034\000\
++\\230\000\229\000\001\000\237\000\
++\\034\000\244\000\001\000\238\000\
++\\210\000\034\000\247\000\212\000\
++\\088\001\189\000\158\000\157\000\
++\\147\000\146\000\152\000\151\000\
++\\154\000\153\000\156\000\155\000\
++\\144\000\143\000\142\000\141\000\
++\\138\000\137\000\139\000\140\000\
++\\136\000\135\000\145\000\178\000\
++\\176\000\161\000\149\000\160\000\
++\\159\000\162\000\148\000\150\000\
++\\163\000\005\000\177\000\175\000\
++\\085\000\059\000\192\000\173\000\
++\\060\000\109\000\108\000\061\000\
++\\112\000\010\000\062\000\048\000\
++\\018\000\063\000\111\000\066\001\
++\\195\000\047\000\034\000\179\000\
++\\010\001\055\001\036\001\038\001\
++\\039\001\081\001\079\001\060\001\
++\\068\001\031\000\064\000\037\000\
++\\070\001\065\000\066\000\074\001\
++\\032\000\067\000\028\001\081\000\
++\\082\000\251\000\000\001\003\001\
++\\240\000\245\000\242\000\248\000\
++\\083\000\034\000\172\000\034\000\
++\\174\000\171\000\010\000\113\000\
++\\010\000\034\000\190\000\010\000\
++\\170\000\084\000\011\001\038\000\
++\\072\001\068\000\076\001\071\001\
++\\075\001\069\001\039\000\048\001\
++\\069\000\070\000\050\001\253\000\
++\\252\000\126\000\134\000\193\000\
++\\103\000\104\000\071\000\019\000\
++\\114\000\054\001\056\001\073\001\
++\\077\001\049\001\051\001\052\001\
++\\020\000\190\000\010\000\105\000\
++\\072\000\115\000\010\000\102\000\
++\\000\000"
++val gotoT =
++"\
++\\001\000\164\001\002\000\001\000\000\000\
++\\021\000\018\000\024\000\017\000\027\000\016\000\029\000\015\000\
++\\030\000\014\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\045\000\007\000\
++\\048\000\006\000\049\000\005\000\050\000\004\000\051\000\003\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\006\000\051\000\029\000\050\000\030\000\049\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\046\000\048\000\049\000\047\000\050\000\004\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\031\000\053\000\000\000\
++\\000\000\
++\\018\000\059\000\020\000\058\000\021\000\018\000\024\000\057\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\017\000\066\000\019\000\065\000\021\000\064\000\022\000\063\000\
++\\023\000\062\000\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\021\000\077\000\040\000\076\000\041\000\075\000\000\000\
++\\021\000\018\000\024\000\078\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\082\000\061\000\081\000\000\000\
++\\000\000\
++\\000\000\
++\\006\000\087\000\029\000\050\000\030\000\049\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\049\000\086\000\050\000\004\000\055\000\002\000\000\000\
++\\018\000\059\000\020\000\058\000\021\000\018\000\024\000\088\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\017\000\066\000\019\000\065\000\021\000\064\000\022\000\089\000\
++\\023\000\062\000\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\003\000\098\000\004\000\097\000\005\000\096\000\006\000\095\000\
++\\007\000\094\000\009\000\093\000\010\000\092\000\062\000\091\000\
++\\064\000\090\000\000\000\
++\\032\000\131\000\036\000\130\000\039\000\129\000\040\000\128\000\
++\\043\000\127\000\044\000\126\000\055\000\002\000\000\000\
++\\000\000\
++\\031\000\132\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\026\000\138\000\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\021\000\064\000\023\000\140\000\024\000\078\000\026\000\060\000\
++\\027\000\016\000\000\000\
++\\007\000\141\000\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\147\000\052\000\146\000\053\000\145\000\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\013\000\155\000\014\000\154\000\000\000\
++\\021\000\157\000\000\000\
++\\040\000\076\000\041\000\158\000\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\160\000\061\000\081\000\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\060\000\161\000\061\000\081\000\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\165\000\058\000\164\000\000\000\
++\\021\000\018\000\024\000\171\000\027\000\016\000\038\000\170\000\
++\\039\000\011\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\057\000\169\000\059\000\168\000\000\000\
++\\033\000\173\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\029\000\050\000\030\000\049\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\046\000\174\000\049\000\047\000\050\000\004\000\055\000\002\000\000\000\
++\\007\000\175\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\214\000\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\216\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\008\000\222\000\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\225\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\227\000\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\064\000\230\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\232\000\010\000\092\000\064\000\090\000\000\000\
++\\007\000\233\000\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\237\000\010\000\092\000\037\000\236\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\235\000\
++\\042\000\234\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\032\000\131\000\036\000\130\000\039\000\129\000\040\000\128\000\
++\\043\000\127\000\044\000\126\000\055\000\002\000\000\000\
++\\007\000\239\000\010\000\092\000\034\000\238\000\064\000\090\000\000\000\
++\\017\000\241\000\021\000\064\000\022\000\089\000\023\000\062\000\
++\\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\007\000\242\000\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\245\000\052\000\146\000\053\000\244\000\054\000\144\000\
++\\055\000\002\000\000\000\
++\\007\000\239\000\010\000\092\000\034\000\247\000\064\000\090\000\000\000\
++\\000\000\
++\\017\000\248\000\021\000\064\000\022\000\089\000\023\000\062\000\
++\\024\000\061\000\026\000\060\000\027\000\016\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\015\000\002\001\016\000\001\001\021\000\000\001\024\000\255\000\
++\\027\000\016\000\036\000\056\000\038\000\055\000\039\000\011\000\
++\\040\000\054\000\043\000\009\000\044\000\008\000\055\000\002\000\000\000\
++\\015\000\009\001\016\000\001\001\021\000\008\001\024\000\007\001\
++\\025\000\006\001\027\000\016\000\028\000\005\001\000\000\
++\\000\000\
++\\000\000\
++\\013\000\011\001\014\000\154\000\000\000\
++\\013\000\012\001\014\000\154\000\000\000\
++\\000\000\
++\\012\000\013\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\084\000\
++\\042\000\083\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\061\000\162\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\021\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\033\000\024\001\000\000\
++\\000\000\
++\\007\000\026\001\010\000\092\000\064\000\090\000\000\000\
++\\032\000\027\001\039\000\129\000\040\000\128\000\043\000\127\000\
++\\044\000\126\000\055\000\002\000\000\000\
++\\003\000\098\000\004\000\028\001\005\000\096\000\006\000\095\000\
++\\007\000\094\000\009\000\093\000\010\000\092\000\029\000\050\000\
++\\030\000\049\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\049\000\086\000\
++\\050\000\004\000\055\000\002\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\029\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\030\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\031\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\032\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\033\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\034\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\035\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\036\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\037\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\038\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\039\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\040\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\041\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\042\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\043\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\044\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\045\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\046\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\047\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\048\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\049\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\050\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\053\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\054\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\055\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\056\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\057\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\058\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\059\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\060\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\009\000\061\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\009\000\064\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\066\001\010\000\092\000\011\000\065\001\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\237\000\010\000\092\000\037\000\068\001\
++\\038\000\085\000\039\000\011\000\040\000\076\000\041\000\235\000\
++\\042\000\234\000\043\000\009\000\044\000\008\000\055\000\002\000\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\009\000\071\001\010\000\092\000\064\000\090\000\000\000\
++\\003\000\072\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\009\000\074\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\094\000\008\000\076\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\007\000\094\000\009\000\077\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\078\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\015\000\080\001\016\000\001\001\021\000\079\001\000\000\
++\\038\000\170\000\039\000\011\000\043\000\009\000\044\000\008\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\239\000\010\000\092\000\034\000\085\001\035\000\084\001\
++\\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\054\000\089\001\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\027\000\071\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\095\001\010\000\092\000\064\000\090\000\000\000\
++\\015\000\098\001\016\000\001\001\021\000\000\001\024\000\078\000\
++\\027\000\016\000\029\000\149\000\030\000\148\000\036\000\013\000\
++\\038\000\012\000\039\000\011\000\040\000\010\000\043\000\009\000\
++\\044\000\008\000\052\000\146\000\053\000\097\001\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\027\000\071\000\028\000\102\001\000\000\
++\\000\000\
++\\000\000\
++\\012\000\103\001\000\000\
++\\012\000\104\001\000\000\
++\\000\000\
++\\014\000\106\001\000\000\
++\\007\000\107\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\108\001\000\000\
++\\000\000\
++\\007\000\109\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\021\000\064\000\022\000\166\000\023\000\062\000\024\000\061\000\
++\\026\000\060\000\027\000\016\000\056\000\110\001\000\000\
++\\000\000\
++\\032\000\027\001\039\000\129\000\040\000\128\000\043\000\127\000\
++\\044\000\126\000\055\000\002\000\000\000\
++\\007\000\111\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\063\000\112\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\119\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\016\000\092\001\000\000\
++\\000\000\
++\\015\000\098\001\016\000\001\001\021\000\079\001\029\000\149\000\
++\\030\000\148\000\036\000\013\000\038\000\012\000\039\000\011\000\
++\\040\000\010\000\043\000\009\000\044\000\008\000\052\000\146\000\
++\\053\000\097\001\054\000\144\000\055\000\002\000\000\000\
++\\007\000\124\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\012\000\125\001\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\127\001\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\052\000\146\000\053\000\129\001\054\000\144\000\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\134\001\010\000\092\000\064\000\090\000\000\000\
++\\029\000\149\000\030\000\148\000\036\000\013\000\038\000\012\000\
++\\039\000\011\000\040\000\010\000\043\000\009\000\044\000\008\000\
++\\047\000\137\001\052\000\146\000\053\000\136\001\054\000\144\000\
++\\055\000\002\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\142\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\143\001\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\007\000\124\001\010\000\092\000\064\000\090\000\000\000\
++\\003\000\144\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\003\000\145\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\009\000\146\001\010\000\092\000\064\000\090\000\000\000\
++\\007\000\094\000\008\000\147\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\003\000\148\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\007\000\239\000\010\000\092\000\034\000\150\001\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\007\000\094\000\008\000\160\001\009\000\221\000\010\000\092\000\
++\\064\000\090\000\000\000\
++\\003\000\161\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\\000\000\
++\\003\000\163\001\006\000\095\000\007\000\094\000\009\000\093\000\
++\\010\000\092\000\064\000\090\000\000\000\
++\\000\000\
++\\000\000\
++\"
++val numstates = 421
++val numrules = 247
++val s = ref "" and index = ref 0
++val string_to_int = fn () => 
++let val i = !index
++in index := i+2; Char.ord(String.sub(!s,i)) + Char.ord(String.sub(!s,i+1)) * 256
++end
++val string_to_list = fn s' =>
++    let val len = String.size s'
++        fun f () =
++           if !index < len then string_to_int() :: f()
++           else nil
++   in index := 0; s := s'; f ()
++   end
++val string_to_pairlist = fn (conv_key,conv_entry) =>
++     let fun f () =
++         case string_to_int()
++         of 0 => EMPTY
++          | n => PAIR(conv_key (n-1),conv_entry (string_to_int()),f())
++     in f
++     end
++val string_to_pairlist_default = fn (conv_key,conv_entry) =>
++    let val conv_row = string_to_pairlist(conv_key,conv_entry)
++    in fn () =>
++       let val default = conv_entry(string_to_int())
++           val row = conv_row()
++       in (row,default)
++       end
++   end
++val string_to_table = fn (convert_row,s') =>
++    let val len = String.size s'
++        fun f ()=
++           if !index < len then convert_row() :: f()
++           else nil
++     in (s := s'; index := 0; f ())
++     end
++local
++  val memo = Array.array(numstates+numrules,ERROR)
++  val _ =let fun g i=(Array.update(memo,i,REDUCE(i-numstates)); g(i+1))
++       fun f i =
++            if i=numstates then g i
++            else (Array.update(memo,i,SHIFT (STATE i)); f (i+1))
++          in f 0 handle Subscript => ()
++          end
++in
++val entry_to_action = fn 0 => ACCEPT | 1 => ERROR | j => Array.sub(memo,(j-2))
++end
++val gotoT=Array.fromList(string_to_table(string_to_pairlist(NT,STATE),gotoT))
++val actionRows=string_to_table(string_to_pairlist_default(T,entry_to_action),actionRows)
++val actionRowNumbers = string_to_list actionRowNumbers
++val actionT = let val actionRowLookUp=
++let val a=Array.fromList(actionRows) in fn i=>Array.sub(a,i) end
++in Array.fromList(map actionRowLookUp actionRowNumbers)
++end
++in LrTable.mkLrTable {actions=actionT,gotos=gotoT,numRules=numrules,
++numStates=numstates,initialState=STATE 0}
++end
++end
++local open Header in
++type pos = int
++type arg = SourceMap.sourcemap
++structure MlyValue = 
++struct
++datatype svalue = VOID' | ntVOID of unit | TYPE_NAME of  (string)
++ | CCONST of  (LargeInt.int) | STRING of  (string)
++ | REALNUM of  (real) | DECNUM of  (LargeInt.int) | ID of  (string)
++ | strings of  (string) | popScope of  (unit) | pushScope of  (unit)
++ | structDeclaration of  ( ( ctype * (declarator * expression) list ) )
++ | structDeclarationList of  ( ( ctype * (declarator * expression) list )  seq)
++ | notypeStructDeclaratorList of  ( ( declarator * expression )  seq)
++ | structDeclaratorList of  ( ( declarator * expression )  seq)
++ | notypeStructDeclarator of  ( ( declarator * expression ) )
++ | structDeclarator of  ( ( declarator * expression ) )
++ | structOrUnion of  (bool)
++ | parameterDeclaration of  ( ( decltype * declarator ) )
++ | parameterTypeList of  ( ( decltype * declarator )  list)
++ | parameterList of  ( ( decltype * declarator )  seq)
++ | externalDeclaration of  (externalDecl option)
++ | declaration1 of  (declaration) | declaration of  (declaration)
++ | functionDefinition of  (externalDecl)
++ | identlist of  ( ( string * int * int )  seq)
++ | declarationList of  (declaration seq)
++ | fDefDeclaration of  ( ( decltype * declarator ) )
++ | structOrUnionSpecifier of  (specifier)
++ | enumSpecifier of  (specifier) | specifierQualifierList of  (ctype)
++ | typeQualifierList of  (qualifier list)
++ | typeQualifier of  (qualifier)
++ | typeSpecifierReserved of  (specifier)
++ | typeSpecifier of  (specifier) | typeName of  (ctype)
++ | storageClassSpecifier of  (storage)
++ | initializerList of  (expression seq) | initializer of  (expression)
++ | reservedSpecifierQualifiers of  (ctype)
++ | specifierQualifierReserved of  (ctype)
++ | reservedDeclarationSpecifier of  (decltype)
++ | declarationModifiers of  (decltype)
++ | declarationSpecifiers of  (decltype)
++ | parmDirectDeclarator of  (declarator)
++ | notypeDirectDeclarator of  (declarator)
++ | aftertypeDirectDeclarator of  (declarator)
++ | parmDeclarator of  (declarator) | notypeDeclarator of  (declarator)
++ | aftertypeDeclarator of  (declarator) | declarator of  (declarator)
++ | pointer of  (declarator)
++ | notypeInitDeclaratorList of  ( ( declarator * expression )  seq)
++ | initDeclaratorList of  ( ( declarator * expression )  seq)
++ | notypeInitDeclarator of  ( ( declarator * expression ) )
++ | initDeclarator of  ( ( declarator * expression ) )
++ | directAbstractDeclarator of  (declarator)
++ | abstractDeclarator of  (declarator)
++ | enumerator of  ( ( string * expression ) )
++ | enumeratorList of  ( ( string * expression )  seq)
++ | trailingComma of  (bool) | argumentExprList of  (expression seq)
++ | unaryOperator of  (operator) | exprWComma of  (expression)
++ | opExpr of  (expression) | expr of  (expression)
++ | compoundStatement of  (statement)
++ | statementlist of  (statement seq)
++ | ostatementlist of  (statement list) | statement of  (statement)
++ | tu of  (externalDecl seq) | translationUnit of  (externalDecl list)
++end
++type svalue = MlyValue.svalue
++type result = externalDecl list
++end
++structure EC=
++struct
++open LrTable
++infix 5 $$
++fun x $$ y = y::x
++val is_keyword =
++fn (T 11) => true | (T 57) => true | (T 58) => true | (T 59) => true
++ | (T 60) => true | (T 61) => true | (T 62) => true | (T 63) => true
++ | (T 64) => true | (T 65) => true | (T 66) => true | (T 67) => true
++ | (T 68) => true | (T 69) => true | _ => false
++val preferred_change : (term list * term list) list = 
++(nil
++ $$ (T 25),nil
++ $$ (T 88))::
++nil
++val noShift = 
++fn (T 0) => true | _ => false
++val showTerminal =
++fn (T 0) => "EOF"
++  | (T 1) => "COLON"
++  | (T 2) => "SEMICOLON"
++  | (T 3) => "LPAREN"
++  | (T 4) => "RPAREN"
++  | (T 5) => "LCURLY"
++  | (T 6) => "RCURLY"
++  | (T 7) => "LBRACE"
++  | (T 8) => "RBRACE"
++  | (T 9) => "DOT"
++  | (T 10) => "COMMA"
++  | (T 11) => "QUESTION"
++  | (T 12) => "PERCENT"
++  | (T 13) => "AMP"
++  | (T 14) => "BAR"
++  | (T 15) => "TILDE"
++  | (T 16) => "DIVIDE"
++  | (T 17) => "PLUS"
++  | (T 18) => "MINUS"
++  | (T 19) => "HAT"
++  | (T 20) => "BANG"
++  | (T 21) => "TIMES"
++  | (T 22) => "INC"
++  | (T 23) => "DEC"
++  | (T 24) => "ARROW"
++  | (T 25) => "ID"
++  | (T 26) => "EQUALS"
++  | (T 27) => "PLUSEQUALS"
++  | (T 28) => "MINUSEQUALS"
++  | (T 29) => "XOREQUALS"
++  | (T 30) => "MODEQUALS"
++  | (T 31) => "TIMESEQUALS"
++  | (T 32) => "DIVEQUALS"
++  | (T 33) => "OREQUALS"
++  | (T 34) => "ANDEQUALS"
++  | (T 35) => "LSHIFTEQUALS"
++  | (T 36) => "RSHIFTEQUALS"
++  | (T 37) => "LTE"
++  | (T 38) => "GTE"
++  | (T 39) => "LT"
++  | (T 40) => "GT"
++  | (T 41) => "EQ"
++  | (T 42) => "NEQ"
++  | (T 43) => "OR"
++  | (T 44) => "AND"
++  | (T 45) => "LSHIFT"
++  | (T 46) => "RSHIFT"
++  | (T 47) => "DECNUM"
++  | (T 48) => "REALNUM"
++  | (T 49) => "STRING"
++  | (T 50) => "CCONST"
++  | (T 51) => "EXTERN"
++  | (T 52) => "AUTO"
++  | (T 53) => "STATIC"
++  | (T 54) => "REGISTER"
++  | (T 55) => "CONST"
++  | (T 56) => "VOLATILE"
++  | (T 57) => "IF"
++  | (T 58) => "THEN"
++  | (T 59) => "ELSE"
++  | (T 60) => "FOR"
++  | (T 61) => "DO"
++  | (T 62) => "SWITCH"
++  | (T 63) => "CASE"
++  | (T 64) => "DEFAULT"
++  | (T 65) => "WHILE"
++  | (T 66) => "RETURN"
++  | (T 67) => "BREAK"
++  | (T 68) => "CONTINUE"
++  | (T 69) => "GOTO"
++  | (T 70) => "CHAR"
++  | (T 71) => "DOUBLE"
++  | (T 72) => "ENUM"
++  | (T 73) => "FLOAT"
++  | (T 74) => "INT"
++  | (T 75) => "LONG"
++  | (T 76) => "SHORT"
++  | (T 77) => "FRACTIONAL"
++  | (T 78) => "SATURATE"
++  | (T 79) => "STRUCT"
++  | (T 80) => "UNION"
++  | (T 81) => "UNSIGNED"
++  | (T 82) => "SIGNED"
++  | (T 83) => "VOID"
++  | (T 84) => "SIZEOF"
++  | (T 85) => "TYPEDEF"
++  | (T 86) => "UNARY"
++  | (T 87) => "ELIPSIS"
++  | (T 88) => "TYPE_NAME"
++  | _ => "bogus-term"
++local open Header in
++val errtermvalue=
++fn (T 88) => MlyValue.TYPE_NAME((
++Error.hint "Likely cause: missing typedef declaration.\n"; "bogus")) | 
++_ => MlyValue.VOID'
++end
++val terms : term list = nil
++ $$ (T 87) $$ (T 86) $$ (T 85) $$ (T 84) $$ (T 83) $$ (T 82) $$ (T 81)
++ $$ (T 80) $$ (T 79) $$ (T 78) $$ (T 77) $$ (T 76) $$ (T 75) $$ (T 74)
++ $$ (T 73) $$ (T 72) $$ (T 71) $$ (T 70) $$ (T 69) $$ (T 68) $$ (T 67)
++ $$ (T 66) $$ (T 65) $$ (T 64) $$ (T 63) $$ (T 62) $$ (T 61) $$ (T 60)
++ $$ (T 59) $$ (T 58) $$ (T 57) $$ (T 56) $$ (T 55) $$ (T 54) $$ (T 53)
++ $$ (T 52) $$ (T 51) $$ (T 46) $$ (T 45) $$ (T 44) $$ (T 43) $$ (T 42)
++ $$ (T 41) $$ (T 40) $$ (T 39) $$ (T 38) $$ (T 37) $$ (T 36) $$ (T 35)
++ $$ (T 34) $$ (T 33) $$ (T 32) $$ (T 31) $$ (T 30) $$ (T 29) $$ (T 28)
++ $$ (T 27) $$ (T 26) $$ (T 24) $$ (T 23) $$ (T 22) $$ (T 21) $$ (T 20)
++ $$ (T 19) $$ (T 18) $$ (T 17) $$ (T 16) $$ (T 15) $$ (T 14) $$ (T 13)
++ $$ (T 12) $$ (T 11) $$ (T 10) $$ (T 9) $$ (T 8) $$ (T 7) $$ (T 6) $$ 
++(T 5) $$ (T 4) $$ (T 3) $$ (T 2) $$ (T 1) $$ (T 0)end
++structure Actions =
++struct 
++exception mlyAction of int
++local open Header in
++val actions = 
++fn (i392,defaultPos,stack,
++    (srcMap):arg) =>
++case (i392,stack)
++of (0,(_,(MlyValue.tu tu,tu1left,tu1right))::rest671) => let val 
++result=MlyValue.translationUnit((seqToList tu))
++ in (LrTable.NT 0,(result,tu1left,tu1right),rest671) end
++| (1,rest671) => let val result=MlyValue.tu((emptySeq))
++ in (LrTable.NT 1,(result,defaultPos,defaultPos),rest671) end
++| (2,(_,(MlyValue.externalDeclaration externalDeclaration,_,
++externalDeclaration1right))::(_,(MlyValue.tu tu,tu1left,_))::rest671)
++ => let val result=MlyValue.tu((addOptToEnd(externalDeclaration, tu)))
++ in (LrTable.NT 1,(result,tu1left,externalDeclaration1right),rest671)
++ end
++| (3,(_,(MlyValue.declaration declaration,declarationleft as 
++declaration1left,declarationright as declaration1right))::rest671) => 
++let val result=MlyValue.externalDeclaration((
++SOME(markExternalDecl srcMap (ExternalDecl declaration,
++						                       declarationleft,
++								       declarationright))
++))
++ in (LrTable.NT 50,(result,declaration1left,declaration1right),rest671
++) end
++| (4,(_,(_,SEMICOLON1left,SEMICOLON1right))::rest671) => let val 
++result=MlyValue.externalDeclaration((NONE))
++ in (LrTable.NT 50,(result,SEMICOLON1left,SEMICOLON1right),rest671)
++ end
++| (5,(_,(MlyValue.functionDefinition functionDefinition,
++functionDefinitionleft as functionDefinition1left,
++functionDefinitionright as functionDefinition1right))::rest671) => 
++let val result=MlyValue.externalDeclaration((
++SOME(markExternalDecl srcMap (functionDefinition,
++						   	               functionDefinitionleft,
++							               functionDefinitionright))
++))
++ in (LrTable.NT 50,(result,functionDefinition1left,
++functionDefinition1right),rest671) end
++| (6,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.opExpr opExpr3,_,_))::_::(_,(
++MlyValue.opExpr opExpr2,_,_))::_::(_,(MlyValue.opExpr opExpr1,_,_))::_
++::(_,(_,FORleft as FOR1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (For(opExpr1,opExpr2,opExpr3,statement),
++							FORleft, statementright)
++))
++ in (LrTable.NT 2,(result,FOR1left,statement1right),rest671) end
++| (7,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.exprWComma exprWComma,_,_))::_::(_,
++(_,WHILEleft as WHILE1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (While(exprWComma,statement),
++							WHILEleft, statementright)
++))
++ in (LrTable.NT 2,(result,WHILE1left,statement1right),rest671) end
++| (8,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.exprWComma exprWComma,_,_))::_::(_,
++(_,SWITCHleft as SWITCH1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (Switch(exprWComma,statement),
++							SWITCHleft, statementright)
++))
++ in (LrTable.NT 2,(result,SWITCH1left,statement1right),rest671) end
++| (9,(_,(_,_,SEMICOLONright as SEMICOLON1right))::_::(_,(
++MlyValue.exprWComma exprWComma,_,_))::_::_::(_,(MlyValue.statement 
++statement,_,_))::(_,(_,DOleft as DO1left,_))::rest671) => let val 
++result=MlyValue.statement((
++markStatement srcMap (Do(exprWComma,statement),
++							DOleft, SEMICOLONright)
++))
++ in (LrTable.NT 2,(result,DO1left,SEMICOLON1right),rest671) end
++| (10,(_,(_,_,SEMICOLONright as SEMICOLON1right))::(_,(_,BREAKleft as 
++BREAK1left,_))::rest671) => let val result=MlyValue.statement((
++markStatement srcMap (Break, 
++							BREAKleft, SEMICOLONright)))
++ in (LrTable.NT 2,(result,BREAK1left,SEMICOLON1right),rest671) end
++| (11,(_,(_,_,SEMICOLONright as SEMICOLON1right))::(_,(_,CONTINUEleft
++ as CONTINUE1left,_))::rest671) => let val result=MlyValue.statement((
++markStatement srcMap (Continue, 
++							CONTINUEleft, SEMICOLONright))
++)
++ in (LrTable.NT 2,(result,CONTINUE1left,SEMICOLON1right),rest671) end
++| (12,(_,(_,_,SEMICOLONright as SEMICOLON1right))::(_,(MlyValue.opExpr
++ opExpr,_,_))::(_,(_,RETURNleft as RETURN1left,_))::rest671) => let 
++val result=MlyValue.statement((
++markStatement srcMap (Return(opExpr), 
++							RETURNleft, SEMICOLONright)
++))
++ in (LrTable.NT 2,(result,RETURN1left,SEMICOLON1right),rest671) end
++| (13,(_,(_,_,SEMICOLONright as SEMICOLON1right))::(_,(MlyValue.ID ID,
++_,_))::(_,(_,GOTOleft as GOTO1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (Goto(ID), 
++							GOTOleft, SEMICOLONright)))
++ in (LrTable.NT 2,(result,GOTO1left,SEMICOLON1right),rest671) end
++| (14,(_,(MlyValue.compoundStatement compoundStatement,
++compoundStatement1left,compoundStatement1right))::rest671) => let val 
++result=MlyValue.statement((compoundStatement))
++ in (LrTable.NT 2,(result,compoundStatement1left,
++compoundStatement1right),rest671) end
++| (15,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.ID ID,IDleft as ID1left,_))::
++rest671) => let val result=MlyValue.statement((
++markStatement srcMap (Labeled(ID,statement),
++							IDleft,statementright)
++))
++ in (LrTable.NT 2,(result,ID1left,statement1right),rest671) end
++| (16,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(_,DEFAULTleft as DEFAULT1left,_))::rest671)
++ => let val result=MlyValue.statement((
++markStatement srcMap (DefaultLabel(statement),
++							DEFAULTleft, statementright)
++))
++ in (LrTable.NT 2,(result,DEFAULT1left,statement1right),rest671) end
++| (17,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.exprWComma exprWComma,_,_))::(_,(_,
++CASEleft as CASE1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (CaseLabel(exprWComma,statement),
++							CASEleft, statementright)
++))
++ in (LrTable.NT 2,(result,CASE1left,statement1right),rest671) end
++| (18,(_,(MlyValue.statement statement,_,statementright as 
++statement1right))::_::(_,(MlyValue.exprWComma exprWComma,_,_))::_::(_,
++(_,IFleft as IF1left,_))::rest671) => let val result=
++MlyValue.statement((
++markStatement srcMap (IfThen(exprWComma,statement),
++							IFleft, statementright)
++))
++ in (LrTable.NT 2,(result,IF1left,statement1right),rest671) end
++| (19,(_,(MlyValue.statement statement2,_,statement2right))::_::(_,(
++MlyValue.statement statement1,_,_))::_::(_,(MlyValue.exprWComma 
++exprWComma,_,_))::_::(_,(_,IFleft as IF1left,_))::rest671) => let val 
++result=MlyValue.statement((
++markStatement srcMap (IfThenElse(exprWComma,statement1,statement2),
++							IFleft,
++							statement2right)
++))
++ in (LrTable.NT 2,(result,IF1left,statement2right),rest671) end
++| (20,(_,(_,_,SEMICOLONright as SEMICOLON1right))::(_,(
++MlyValue.exprWComma exprWComma,exprWCommaleft as exprWComma1left,_))::
++rest671) => let val result=MlyValue.statement((
++markStatement srcMap (Expr(exprWComma),
++							exprWCommaleft, SEMICOLONright)
++))
++ in (LrTable.NT 2,(result,exprWComma1left,SEMICOLON1right),rest671)
++ end
++| (21,(_,(_,SEMICOLONleft as SEMICOLON1left,SEMICOLONright as 
++SEMICOLON1right))::rest671) => let val result=MlyValue.statement((
++markStatement srcMap (Expr(EmptyExpr),
++							SEMICOLONleft, SEMICOLONright)
++))
++ in (LrTable.NT 2,(result,SEMICOLON1left,SEMICOLON1right),rest671) end
++| (22,(_,(_,_,SEMICOLON1right))::(_,(MlyValue.declaration1 
++declaration1,declaration11left,_))::rest671) => let val result=
++MlyValue.declaration((declaration1))
++ in (LrTable.NT 48,(result,declaration11left,SEMICOLON1right),rest671)
++ end
++| (23,(_,(MlyValue.declarationSpecifiers declarationSpecifiers,
++declarationSpecifiersleft as declarationSpecifiers1left,
++declarationSpecifiersright as declarationSpecifiers1right))::rest671)
++ => let val result=MlyValue.declaration1((
++insertDeclNames (declarationSpecifiers, []);
++		 markDeclaration srcMap
++		   (Declaration(declarationSpecifiers, []), 
++		    declarationSpecifiersleft, declarationSpecifiersright)
++))
++ in (LrTable.NT 49,(result,declarationSpecifiers1left,
++declarationSpecifiers1right),rest671) end
++| (24,(_,(MlyValue.initDeclaratorList initDeclaratorList,_,
++initDeclaratorListright as initDeclaratorList1right))::(_,(
++MlyValue.declarationSpecifiers declarationSpecifiers,
++declarationSpecifiersleft as declarationSpecifiers1left,_))::rest671)
++ => let val result=MlyValue.declaration1((
++let val decl = (declarationSpecifiers, seqToList initDeclaratorList)
++		  in insertDeclNames decl;
++		     markDeclaration srcMap
++		       (Declaration decl, declarationSpecifiersleft, initDeclaratorListright)
++	         end
++))
++ in (LrTable.NT 49,(result,declarationSpecifiers1left,
++initDeclaratorList1right),rest671) end
++| (25,(_,(MlyValue.notypeInitDeclaratorList notypeInitDeclaratorList,_
++,notypeInitDeclaratorListright as notypeInitDeclaratorList1right))::(_
++,(MlyValue.declarationModifiers declarationModifiers,
++declarationModifiersleft as declarationModifiers1left,_))::rest671)
++ => let val result=MlyValue.declaration1((
++let val decl = (declarationModifiers, seqToList notypeInitDeclaratorList)
++		  in insertDeclNames decl;
++		     markDeclaration srcMap
++		       (Declaration decl, declarationModifiersleft, notypeInitDeclaratorListright)
++	         end
++))
++ in (LrTable.NT 49,(result,declarationModifiers1left,
++notypeInitDeclaratorList1right),rest671) end
++| (26,(_,(MlyValue.statementlist statementlist,statementlist1left,
++statementlist1right))::rest671) => let val result=
++MlyValue.ostatementlist((seqToList statementlist))
++ in (LrTable.NT 3,(result,statementlist1left,statementlist1right),
++rest671) end
++| (27,rest671) => let val result=MlyValue.ostatementlist(([]))
++ in (LrTable.NT 3,(result,defaultPos,defaultPos),rest671) end
++| (28,(_,(MlyValue.statement statement,statement1left,statement1right)
++)::rest671) => let val result=MlyValue.statementlist((
++singletonSeq statement))
++ in (LrTable.NT 4,(result,statement1left,statement1right),rest671) end
++| (29,(_,(MlyValue.statement statement,_,statement1right))::(_,(
++MlyValue.statementlist statementlist,statementlist1left,_))::rest671)
++ => let val result=MlyValue.statementlist((
++addToSeq(statement, statementlist)))
++ in (LrTable.NT 4,(result,statementlist1left,statement1right),rest671)
++ end
++| (30,(_,(_,_,RCURLYright as RCURLY1right))::_::(_,(
++MlyValue.ostatementlist ostatementlist,_,_))::(_,(
++MlyValue.declarationList declarationList,_,_))::_::(_,(_,LCURLYleft
++ as LCURLY1left,_))::rest671) => let val result=
++MlyValue.compoundStatement((
++markStatement srcMap (Compound ((map Decl (seqToList declarationList)) @ ostatementlist), LCURLYleft, RCURLYright)
++))
++ in (LrTable.NT 5,(result,LCURLY1left,RCURLY1right),rest671) end
++| (31,(_,(_,_,RCURLYright as RCURLY1right))::(_,(
++MlyValue.ostatementlist ostatementlist,_,_))::(_,(_,LCURLYleft as 
++LCURLY1left,_))::rest671) => let val result=MlyValue.compoundStatement
++((
++markStatement srcMap (Compound (ostatementlist), LCURLYleft, RCURLYright)
++))
++ in (LrTable.NT 5,(result,LCURLY1left,RCURLY1right),rest671) end
++| (32,(_,(_,AMP1left,AMP1right))::rest671) => let val result=
++MlyValue.unaryOperator((AddrOf))
++ in (LrTable.NT 9,(result,AMP1left,AMP1right),rest671) end
++| (33,(_,(_,TIMES1left,TIMES1right))::rest671) => let val result=
++MlyValue.unaryOperator((Star))
++ in (LrTable.NT 9,(result,TIMES1left,TIMES1right),rest671) end
++| (34,(_,(_,PLUS1left,PLUS1right))::rest671) => let val result=
++MlyValue.unaryOperator((Uplus))
++ in (LrTable.NT 9,(result,PLUS1left,PLUS1right),rest671) end
++| (35,(_,(_,MINUS1left,MINUS1right))::rest671) => let val result=
++MlyValue.unaryOperator((Negate))
++ in (LrTable.NT 9,(result,MINUS1left,MINUS1right),rest671) end
++| (36,(_,(_,TILDE1left,TILDE1right))::rest671) => let val result=
++MlyValue.unaryOperator((BitNot))
++ in (LrTable.NT 9,(result,TILDE1left,TILDE1right),rest671) end
++| (37,(_,(_,BANG1left,BANG1right))::rest671) => let val result=
++MlyValue.unaryOperator((Not))
++ in (LrTable.NT 9,(result,BANG1left,BANG1right),rest671) end
++| (38,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(
++MlyValue.exprWComma exprWComma1,_,_))::_::(_,(MlyValue.expr expr1,
++expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (QuestionColon(expr1,exprWComma1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (39,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(PlusAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (40,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(MinusAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (41,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(TimesAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (42,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(DivAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (43,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(ModAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (44,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(XorAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (45,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(OrAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (46,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(AndAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (47,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(LshiftAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (48,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(RshiftAssign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (49,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Assign,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (50,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Or,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (51,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(And,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (52,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(BitOr,expr1,expr2),expr1left,expr2right))
++)
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (53,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(BitXor,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (54,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(BitAnd,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (55,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Eq,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (56,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Neq,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (57,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Lt,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (58,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Gt,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (59,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Lte,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (60,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Gte,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (61,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Lshift,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (62,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Rshift,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (63,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Plus,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (64,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Minus,expr1,expr2),expr1left,expr2right))
++)
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (65,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Times,expr1,expr2),expr1left,expr2right))
++)
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (66,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Divide,expr1,expr2),expr1left,expr2right)
++))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (67,(_,(MlyValue.expr expr2,_,expr2right))::_::(_,(MlyValue.expr 
++expr1,expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Mod,expr1,expr2),expr1left,expr2right)))
++ in (LrTable.NT 6,(result,expr1left,expr2right),rest671) end
++| (68,(_,(_,_,INCright as INC1right))::(_,(MlyValue.expr expr,exprleft
++ as expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Unop(PostInc,expr),exprleft,INCright)))
++ in (LrTable.NT 6,(result,expr1left,INC1right),rest671) end
++| (69,(_,(_,_,DECright as DEC1right))::(_,(MlyValue.expr expr,exprleft
++ as expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Unop(PostDec,expr),exprleft,DECright)))
++ in (LrTable.NT 6,(result,expr1left,DEC1right),rest671) end
++| (70,(_,(MlyValue.expr expr,_,exprright as expr1right))::(_,(_,
++INCleft as INC1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Unop(PreInc,expr),INCleft,exprright)))
++ in (LrTable.NT 6,(result,INC1left,expr1right),rest671) end
++| (71,(_,(MlyValue.expr expr,_,exprright as expr1right))::(_,(_,
++DECleft as DEC1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Unop(PreDec,expr),DECleft,exprright)))
++ in (LrTable.NT 6,(result,DEC1left,expr1right),rest671) end
++| (72,(_,(MlyValue.expr expr,_,exprright as expr1right))::(_,(
++MlyValue.unaryOperator unaryOperator,unaryOperatorleft as 
++unaryOperator1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Unop(unaryOperator,expr),unaryOperatorleft,exprright)
++))
++ in (LrTable.NT 6,(result,unaryOperator1left,expr1right),rest671) end
++| (73,(_,(MlyValue.expr expr,_,exprright as expr1right))::(_,(_,
++SIZEOFleft as SIZEOF1left,_))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (Unop(Sizeof,expr),SIZEOFleft,exprright)))
++ in (LrTable.NT 6,(result,SIZEOF1left,expr1right),rest671) end
++| (74,(_,(MlyValue.expr expr,_,exprright as expr1right))::_::(_,(
++MlyValue.typeName typeName,_,_))::(_,(_,LPARENleft as LPAREN1left,_))
++::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Cast (typeName,expr),LPARENleft,exprright)))
++ in (LrTable.NT 6,(result,LPAREN1left,expr1right),rest671) end
++| (75,(_,(_,_,RPARENright as RPAREN1right))::(_,(MlyValue.typeName 
++typeName,_,_))::_::(_,(_,SIZEOFleft as SIZEOF1left,_))::rest671) => 
++let val result=MlyValue.expr((
++markExpression srcMap (Unop(SizeofType typeName,EmptyExpr),SIZEOFleft,RPARENright)
++))
++ in (LrTable.NT 6,(result,SIZEOF1left,RPAREN1right),rest671) end
++| (76,(_,(_,_,RBRACEright as RBRACE1right))::(_,(MlyValue.exprWComma 
++exprWComma,_,_))::_::(_,(MlyValue.expr expr,exprleft as expr1left,_))
++::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Sub,expr,exprWComma),exprleft,RBRACEright)
++))
++ in (LrTable.NT 6,(result,expr1left,RBRACE1right),rest671) end
++| (77,(_,(_,_,RPARENright as RPAREN1right))::_::(_,(MlyValue.expr expr
++,exprleft as expr1left,_))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Call(expr,[]),exprleft,RPARENright)))
++ in (LrTable.NT 6,(result,expr1left,RPAREN1right),rest671) end
++| (78,(_,(_,_,RPARENright as RPAREN1right))::(_,(
++MlyValue.argumentExprList argumentExprList,_,_))::_::(_,(MlyValue.expr
++ expr,exprleft as expr1left,_))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (Call(expr, seqToList argumentExprList),exprleft,RPARENright)
++))
++ in (LrTable.NT 6,(result,expr1left,RPAREN1right),rest671) end
++| (79,(_,(MlyValue.ID ID,_,IDright as ID1right))::_::(_,(MlyValue.expr
++ expr,exprleft as expr1left,_))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (Binop(Dot,expr,Id(ID)),exprleft,IDright)))
++ in (LrTable.NT 6,(result,expr1left,ID1right),rest671) end
++| (80,(_,(MlyValue.ID ID,_,IDright as ID1right))::_::(_,(MlyValue.expr
++ expr,exprleft as expr1left,_))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (Binop(Arrow,expr,Id(ID)),exprleft,IDright)))
++ in (LrTable.NT 6,(result,expr1left,ID1right),rest671) end
++| (81,(_,(MlyValue.TYPE_NAME TYPE_NAME,_,TYPE_NAMEright as 
++TYPE_NAME1right))::_::(_,(MlyValue.expr expr,exprleft as expr1left,_))
++::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Dot,expr,Id(TYPE_NAME)),exprleft,TYPE_NAMEright)
++))
++ in (LrTable.NT 6,(result,expr1left,TYPE_NAME1right),rest671) end
++| (82,(_,(MlyValue.TYPE_NAME TYPE_NAME,_,TYPE_NAMEright as 
++TYPE_NAME1right))::_::(_,(MlyValue.expr expr,exprleft as expr1left,_))
++::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Binop(Arrow,expr,Id(TYPE_NAME)),exprleft,TYPE_NAMEright)
++))
++ in (LrTable.NT 6,(result,expr1left,TYPE_NAME1right),rest671) end
++| (83,(_,(_,_,RPARENright as RPAREN1right))::(_,(MlyValue.exprWComma 
++exprWComma,_,_))::(_,(_,LPARENleft as LPAREN1left,_))::rest671) => 
++let val result=MlyValue.expr((
++markExpression srcMap (exprWComma,LPARENleft,RPARENright)))
++ in (LrTable.NT 6,(result,LPAREN1left,RPAREN1right),rest671) end
++| (84,(_,(MlyValue.DECNUM DECNUM,DECNUMleft as DECNUM1left,DECNUMright
++ as DECNUM1right))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (IntConst DECNUM,DECNUMleft,DECNUMright)))
++ in (LrTable.NT 6,(result,DECNUM1left,DECNUM1right),rest671) end
++| (85,(_,(MlyValue.REALNUM REALNUM,REALNUMleft as REALNUM1left,
++REALNUMright as REALNUM1right))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (RealConst REALNUM, REALNUMleft,REALNUMright)))
++ in (LrTable.NT 6,(result,REALNUM1left,REALNUM1right),rest671) end
++| (86,(_,(MlyValue.CCONST CCONST,CCONSTleft as CCONST1left,CCONSTright
++ as CCONST1right))::rest671) => let val result=MlyValue.expr((
++markExpression srcMap (IntConst CCONST, CCONSTleft,CCONSTright)))
++ in (LrTable.NT 6,(result,CCONST1left,CCONST1right),rest671) end
++| (87,(_,(MlyValue.ID ID,IDleft as ID1left,IDright as ID1right))::
++rest671) => let val result=MlyValue.expr((
++markExpression srcMap (Id(ID), IDleft, IDright)))
++ in (LrTable.NT 6,(result,ID1left,ID1right),rest671) end
++| (88,(_,(MlyValue.strings strings,stringsleft as strings1left,
++stringsright as strings1right))::rest671) => let val result=
++MlyValue.expr((
++markExpression srcMap (String(strings),stringsleft,stringsright)))
++ in (LrTable.NT 6,(result,strings1left,strings1right),rest671) end
++| (89,(_,(MlyValue.STRING STRING,STRING1left,STRING1right))::rest671)
++ => let val result=MlyValue.strings((STRING))
++ in (LrTable.NT 63,(result,STRING1left,STRING1right),rest671) end
++| (90,(_,(MlyValue.strings strings,_,strings1right))::(_,(
++MlyValue.STRING STRING,STRING1left,_))::rest671) => let val result=
++MlyValue.strings((STRING ^ strings))
++ in (LrTable.NT 63,(result,STRING1left,strings1right),rest671) end
++| (91,(_,(MlyValue.expr expr,expr1left,expr1right))::rest671) => let 
++val result=MlyValue.exprWComma((expr))
++ in (LrTable.NT 8,(result,expr1left,expr1right),rest671) end
++| (92,(_,(MlyValue.expr expr,_,exprright as expr1right))::_::(_,(
++MlyValue.exprWComma exprWComma,exprWCommaleft as exprWComma1left,_))::
++rest671) => let val result=MlyValue.exprWComma((
++markExpression srcMap (Binop(Comma,exprWComma,expr),exprWCommaleft,exprright)
++))
++ in (LrTable.NT 8,(result,exprWComma1left,expr1right),rest671) end
++| (93,rest671) => let val result=MlyValue.opExpr((EmptyExpr))
++ in (LrTable.NT 7,(result,defaultPos,defaultPos),rest671) end
++| (94,(_,(MlyValue.exprWComma exprWComma,exprWComma1left,
++exprWComma1right))::rest671) => let val result=MlyValue.opExpr((
++exprWComma))
++ in (LrTable.NT 7,(result,exprWComma1left,exprWComma1right),rest671)
++ end
++| (95,(_,(MlyValue.expr expr,expr1left,expr1right))::rest671) => let 
++val result=MlyValue.argumentExprList((singletonSeq expr))
++ in (LrTable.NT 10,(result,expr1left,expr1right),rest671) end
++| (96,(_,(MlyValue.expr expr,_,expr1right))::_::(_,(
++MlyValue.argumentExprList argumentExprList,argumentExprList1left,_))::
++rest671) => let val result=MlyValue.argumentExprList((
++addToSeq(expr, argumentExprList)))
++ in (LrTable.NT 10,(result,argumentExprList1left,expr1right),rest671)
++ end
++| (97,(_,(MlyValue.specifierQualifierList specifierQualifierList,
++specifierQualifierList1left,specifierQualifierList1right))::rest671)
++ => let val result=MlyValue.typeName((specifierQualifierList))
++ in (LrTable.NT 36,(result,specifierQualifierList1left,
++specifierQualifierList1right),rest671) end
++| (98,(_,(MlyValue.abstractDeclarator abstractDeclarator,_,
++abstractDeclarator1right))::(_,(MlyValue.specifierQualifierList 
++specifierQualifierList,specifierQualifierList1left,_))::rest671) => 
++let val result=MlyValue.typeName((
++#1 (ctypeDecrToTypeName (specifierQualifierList, abstractDeclarator)))
++)
++ in (LrTable.NT 36,(result,specifierQualifierList1left,
++abstractDeclarator1right),rest671) end
++| (99,(_,(MlyValue.reservedDeclarationSpecifier 
++reservedDeclarationSpecifier,_,reservedDeclarationSpecifier1right))::(
++_,(MlyValue.typeSpecifier typeSpecifier,typeSpecifier1left,_))::
++rest671) => let val result=MlyValue.declarationSpecifiers((
++addSpecifier (typeSpecifier,
++						        reservedDeclarationSpecifier)
++))
++ in (LrTable.NT 28,(result,typeSpecifier1left,
++reservedDeclarationSpecifier1right),rest671) end
++| (100,(_,(MlyValue.reservedDeclarationSpecifier 
++reservedDeclarationSpecifier,_,reservedDeclarationSpecifier1right))::(
++_,(MlyValue.typeSpecifier typeSpecifier,_,_))::(_,(
++MlyValue.declarationModifiers declarationModifiers,
++declarationModifiers1left,_))::rest671) => let val result=
++MlyValue.declarationSpecifiers((
++addAll (declarationModifiers,
++                                                  addSpecifier (typeSpecifier,
++							         reservedDeclarationSpecifier))
++))
++ in (LrTable.NT 28,(result,declarationModifiers1left,
++reservedDeclarationSpecifier1right),rest671) end
++| (101,rest671) => let val result=
++MlyValue.reservedDeclarationSpecifier((unknown))
++ in (LrTable.NT 30,(result,defaultPos,defaultPos),rest671) end
++| (102,(_,(MlyValue.specifierQualifierReserved 
++specifierQualifierReserved,_,specifierQualifierReserved1right))::(_,(
++MlyValue.reservedDeclarationSpecifier reservedDeclarationSpecifier,
++reservedDeclarationSpecifier1left,_))::rest671) => let val result=
++MlyValue.reservedDeclarationSpecifier((
++let val {qualifiers,specifiers} = specifierQualifierReserved
++					     val decltype = {qualifiers=qualifiers,specifiers=specifiers,storage=[]}
++	   				 in addAll (decltype, reservedDeclarationSpecifier) end 
++))
++ in (LrTable.NT 30,(result,reservedDeclarationSpecifier1left,
++specifierQualifierReserved1right),rest671) end
++| (103,(_,(MlyValue.storageClassSpecifier storageClassSpecifier,_,
++storageClassSpecifier1right))::(_,(
++MlyValue.reservedDeclarationSpecifier reservedDeclarationSpecifier,
++reservedDeclarationSpecifier1left,_))::rest671) => let val result=
++MlyValue.reservedDeclarationSpecifier((
++addStorage (storageClassSpecifier,
++                                                      reservedDeclarationSpecifier)
++))
++ in (LrTable.NT 30,(result,reservedDeclarationSpecifier1left,
++storageClassSpecifier1right),rest671) end
++| (104,(_,(MlyValue.typeSpecifierReserved typeSpecifierReserved,
++typeSpecifierReserved1left,typeSpecifierReserved1right))::rest671) => 
++let val result=MlyValue.specifierQualifierReserved((
++{qualifiers=[],specifiers=[typeSpecifierReserved]}))
++ in (LrTable.NT 31,(result,typeSpecifierReserved1left,
++typeSpecifierReserved1right),rest671) end
++| (105,(_,(MlyValue.typeQualifier typeQualifier,typeQualifier1left,
++typeQualifier1right))::rest671) => let val result=
++MlyValue.specifierQualifierReserved((
++{qualifiers=[typeQualifier],specifiers=[]}))
++ in (LrTable.NT 31,(result,typeQualifier1left,typeQualifier1right),
++rest671) end
++| (106,(_,(MlyValue.structOrUnionSpecifier structOrUnionSpecifier,
++structOrUnionSpecifier1left,structOrUnionSpecifier1right))::rest671)
++ => let val result=MlyValue.specifierQualifierReserved((
++{qualifiers=[],specifiers=[structOrUnionSpecifier]}))
++ in (LrTable.NT 31,(result,structOrUnionSpecifier1left,
++structOrUnionSpecifier1right),rest671) end
++| (107,(_,(MlyValue.enumSpecifier enumSpecifier,enumSpecifier1left,
++enumSpecifier1right))::rest671) => let val result=
++MlyValue.specifierQualifierReserved((
++{qualifiers=[],specifiers=[enumSpecifier]}))
++ in (LrTable.NT 31,(result,enumSpecifier1left,enumSpecifier1right),
++rest671) end
++| (108,(_,(MlyValue.storageClassSpecifier storageClassSpecifier,
++storageClassSpecifier1left,storageClassSpecifier1right))::rest671) => 
++let val result=MlyValue.declarationModifiers((
++{storage = [storageClassSpecifier],
++					  qualifiers = [],
++					  specifiers = []}
++))
++ in (LrTable.NT 29,(result,storageClassSpecifier1left,
++storageClassSpecifier1right),rest671) end
++| (109,(_,(MlyValue.storageClassSpecifier storageClassSpecifier,_,
++storageClassSpecifier1right))::(_,(MlyValue.declarationModifiers 
++declarationModifiers,declarationModifiers1left,_))::rest671) => let 
++val result=MlyValue.declarationModifiers((
++addStorage(storageClassSpecifier,declarationModifiers)))
++ in (LrTable.NT 29,(result,declarationModifiers1left,
++storageClassSpecifier1right),rest671) end
++| (110,(_,(MlyValue.typeQualifier typeQualifier,typeQualifier1left,
++typeQualifier1right))::rest671) => let val result=
++MlyValue.declarationModifiers((
++{specifiers = [],
++	 				  storage = [], 
++					  qualifiers = [typeQualifier]}
++))
++ in (LrTable.NT 29,(result,typeQualifier1left,typeQualifier1right),
++rest671) end
++| (111,(_,(MlyValue.typeQualifier typeQualifier,_,typeQualifier1right)
++)::(_,(MlyValue.declarationModifiers declarationModifiers,
++declarationModifiers1left,_))::rest671) => let val result=
++MlyValue.declarationModifiers((
++addQualifier(typeQualifier, declarationModifiers)))
++ in (LrTable.NT 29,(result,declarationModifiers1left,
++typeQualifier1right),rest671) end
++| (112,(_,(MlyValue.reservedSpecifierQualifiers 
++reservedSpecifierQualifiers,_,reservedSpecifierQualifiers1right))::(_,
++(MlyValue.typeSpecifier typeSpecifier,typeSpecifier1left,_))::rest671)
++ => let val result=MlyValue.specifierQualifierList((
++let val {specifiers, qualifiers} = reservedSpecifierQualifiers
++	                                 in {specifiers=typeSpecifier::specifiers,qualifiers=qualifiers} end
++))
++ in (LrTable.NT 41,(result,typeSpecifier1left,
++reservedSpecifierQualifiers1right),rest671) end
++| (113,(_,(MlyValue.reservedSpecifierQualifiers 
++reservedSpecifierQualifiers,_,reservedSpecifierQualifiers1right))::(_,
++(MlyValue.typeSpecifier typeSpecifier,_,_))::(_,(
++MlyValue.typeQualifierList typeQualifierList,typeQualifierList1left,_)
++)::rest671) => let val result=MlyValue.specifierQualifierList((
++let val {specifiers, qualifiers} = reservedSpecifierQualifiers
++	                                 in {specifiers=typeSpecifier::specifiers
++					    ,qualifiers=typeQualifierList@qualifiers
++                                            }
++                                         end
++))
++ in (LrTable.NT 41,(result,typeQualifierList1left,
++reservedSpecifierQualifiers1right),rest671) end
++| (114,rest671) => let val result=MlyValue.reservedSpecifierQualifiers
++(({qualifiers=[],specifiers=[]}))
++ in (LrTable.NT 32,(result,defaultPos,defaultPos),rest671) end
++| (115,(_,(MlyValue.specifierQualifierReserved 
++specifierQualifierReserved,_,specifierQualifierReserved1right))::(_,(
++MlyValue.reservedSpecifierQualifiers reservedSpecifierQualifiers,
++reservedSpecifierQualifiers1left,_))::rest671) => let val result=
++MlyValue.reservedSpecifierQualifiers((
++let val {specifiers=s1, qualifiers=q1} = reservedSpecifierQualifiers
++					     val {specifiers=s2, qualifiers=q2} = specifierQualifierReserved
++	                                 in {specifiers=s1@s2, qualifiers=q1@q2} end
++))
++ in (LrTable.NT 32,(result,reservedSpecifierQualifiers1left,
++specifierQualifierReserved1right),rest671) end
++| (116,(_,(MlyValue.typeQualifier typeQualifier,typeQualifier1left,
++typeQualifier1right))::rest671) => let val result=
++MlyValue.typeQualifierList(([typeQualifier]))
++ in (LrTable.NT 40,(result,typeQualifier1left,typeQualifier1right),
++rest671) end
++| (117,(_,(MlyValue.typeQualifierList typeQualifierList,_,
++typeQualifierList1right))::(_,(MlyValue.typeQualifier typeQualifier,
++typeQualifier1left,_))::rest671) => let val result=
++MlyValue.typeQualifierList((typeQualifier::typeQualifierList))
++ in (LrTable.NT 40,(result,typeQualifier1left,typeQualifierList1right)
++,rest671) end
++| (118,(_,(MlyValue.typeSpecifierReserved typeSpecifierReserved,
++typeSpecifierReserved1left,typeSpecifierReserved1right))::rest671) => 
++let val result=MlyValue.typeSpecifier((typeSpecifierReserved))
++ in (LrTable.NT 37,(result,typeSpecifierReserved1left,
++typeSpecifierReserved1right),rest671) end
++| (119,(_,(MlyValue.structOrUnionSpecifier structOrUnionSpecifier,
++structOrUnionSpecifier1left,structOrUnionSpecifier1right))::rest671)
++ => let val result=MlyValue.typeSpecifier((structOrUnionSpecifier))
++ in (LrTable.NT 37,(result,structOrUnionSpecifier1left,
++structOrUnionSpecifier1right),rest671) end
++| (120,(_,(MlyValue.enumSpecifier enumSpecifier,enumSpecifier1left,
++enumSpecifier1right))::rest671) => let val result=
++MlyValue.typeSpecifier((enumSpecifier))
++ in (LrTable.NT 37,(result,enumSpecifier1left,enumSpecifier1right),
++rest671) end
++| (121,(_,(MlyValue.TYPE_NAME TYPE_NAME,TYPE_NAME1left,TYPE_NAME1right
++))::rest671) => let val result=MlyValue.typeSpecifier((
++TypedefName TYPE_NAME))
++ in (LrTable.NT 37,(result,TYPE_NAME1left,TYPE_NAME1right),rest671)
++ end
++| (122,(_,(_,VOID1left,VOID1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Void))
++ in (LrTable.NT 38,(result,VOID1left,VOID1right),rest671) end
++| (123,(_,(_,CHAR1left,CHAR1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Char))
++ in (LrTable.NT 38,(result,CHAR1left,CHAR1right),rest671) end
++| (124,(_,(_,SHORT1left,SHORT1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Short))
++ in (LrTable.NT 38,(result,SHORT1left,SHORT1right),rest671) end
++| (125,(_,(_,INT1left,INT1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Int))
++ in (LrTable.NT 38,(result,INT1left,INT1right),rest671) end
++| (126,(_,(_,LONG1left,LONG1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Long))
++ in (LrTable.NT 38,(result,LONG1left,LONG1right),rest671) end
++| (127,(_,(_,FLOAT1left,FLOAT1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Float))
++ in (LrTable.NT 38,(result,FLOAT1left,FLOAT1right),rest671) end
++| (128,(_,(_,DOUBLE1left,DOUBLE1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Double))
++ in (LrTable.NT 38,(result,DOUBLE1left,DOUBLE1right),rest671) end
++| (129,(_,(_,SIGNED1left,SIGNED1right))::rest671) => let val result=
++MlyValue.typeSpecifierReserved((Signed))
++ in (LrTable.NT 38,(result,SIGNED1left,SIGNED1right),rest671) end
++| (130,(_,(_,UNSIGNED1left,UNSIGNED1right))::rest671) => let val 
++result=MlyValue.typeSpecifierReserved((Unsigned))
++ in (LrTable.NT 38,(result,UNSIGNED1left,UNSIGNED1right),rest671) end
++| (131,(_,(_,_,RCURLY1right))::(_,(MlyValue.structDeclarationList 
++structDeclarationList,_,_))::_::(_,(MlyValue.structOrUnion 
++structOrUnion,structOrUnion1left,_))::rest671) => let val result=
++MlyValue.structOrUnionSpecifier((
++Struct{isStruct=structOrUnion, tagOpt=NONE, members=seqToList structDeclarationList}
++))
++ in (LrTable.NT 43,(result,structOrUnion1left,RCURLY1right),rest671)
++ end
++| (132,(_,(_,_,RCURLY1right))::(_,(MlyValue.structDeclarationList 
++structDeclarationList,_,_))::_::(_,(MlyValue.ID ID,_,_))::(_,(
++MlyValue.structOrUnion structOrUnion,structOrUnion1left,_))::rest671)
++ => let val result=MlyValue.structOrUnionSpecifier((
++Struct{isStruct=structOrUnion, tagOpt=SOME ID, members=seqToList structDeclarationList}
++))
++ in (LrTable.NT 43,(result,structOrUnion1left,RCURLY1right),rest671)
++ end
++| (133,(_,(_,_,RCURLY1right))::(_,(MlyValue.structDeclarationList 
++structDeclarationList,_,_))::_::(_,(MlyValue.TYPE_NAME TYPE_NAME,_,_))
++::(_,(MlyValue.structOrUnion structOrUnion,structOrUnion1left,_))::
++rest671) => let val result=MlyValue.structOrUnionSpecifier((
++Struct{isStruct=structOrUnion, tagOpt=SOME TYPE_NAME, members=seqToList structDeclarationList}
++))
++ in (LrTable.NT 43,(result,structOrUnion1left,RCURLY1right),rest671)
++ end
++| (134,(_,(MlyValue.ID ID,_,ID1right))::(_,(MlyValue.structOrUnion 
++structOrUnion,structOrUnion1left,_))::rest671) => let val result=
++MlyValue.structOrUnionSpecifier((
++StructTag {isStruct=structOrUnion, name=ID}))
++ in (LrTable.NT 43,(result,structOrUnion1left,ID1right),rest671) end
++| (135,(_,(MlyValue.TYPE_NAME TYPE_NAME,_,TYPE_NAME1right))::(_,(
++MlyValue.structOrUnion structOrUnion,structOrUnion1left,_))::rest671)
++ => let val result=MlyValue.structOrUnionSpecifier((
++StructTag {isStruct=structOrUnion, name=TYPE_NAME}))
++ in (LrTable.NT 43,(result,structOrUnion1left,TYPE_NAME1right),rest671
++) end
++| (136,(_,(_,STRUCT1left,STRUCT1right))::rest671) => let val result=
++MlyValue.structOrUnion((true))
++ in (LrTable.NT 54,(result,STRUCT1left,STRUCT1right),rest671) end
++| (137,(_,(_,UNION1left,UNION1right))::rest671) => let val result=
++MlyValue.structOrUnion((false))
++ in (LrTable.NT 54,(result,UNION1left,UNION1right),rest671) end
++| (138,(_,(MlyValue.structDeclaration structDeclaration,
++structDeclaration1left,structDeclaration1right))::rest671) => let val 
++result=MlyValue.structDeclarationList((singletonSeq structDeclaration)
++)
++ in (LrTable.NT 59,(result,structDeclaration1left,
++structDeclaration1right),rest671) end
++| (139,(_,(MlyValue.structDeclaration structDeclaration,_,
++structDeclaration1right))::(_,(MlyValue.structDeclarationList 
++structDeclarationList,structDeclarationList1left,_))::rest671) => let 
++val result=MlyValue.structDeclarationList((
++addToSeq(structDeclaration, structDeclarationList)))
++ in (LrTable.NT 59,(result,structDeclarationList1left,
++structDeclaration1right),rest671) end
++| (140,(_,(_,_,SEMICOLON1right))::(_,(MlyValue.structDeclaratorList 
++structDeclaratorList,_,_))::(_,(MlyValue.specifierQualifierList 
++specifierQualifierList,specifierQualifierList1left,_))::rest671) => 
++let val result=MlyValue.structDeclaration((
++(specifierQualifierList, seqToList structDeclaratorList)))
++ in (LrTable.NT 60,(result,specifierQualifierList1left,SEMICOLON1right
++),rest671) end
++| (141,(_,(_,_,SEMICOLON1right))::(_,(
++MlyValue.notypeStructDeclaratorList notypeStructDeclaratorList,_,_))::
++(_,(MlyValue.typeQualifierList typeQualifierList,
++typeQualifierList1left,_))::rest671) => let val result=
++MlyValue.structDeclaration((
++let
++					    val ct = {qualifiers=typeQualifierList, specifiers=[]}
++					 in
++					   (ct, seqToList notypeStructDeclaratorList)
++					 end
++))
++ in (LrTable.NT 60,(result,typeQualifierList1left,SEMICOLON1right),
++rest671) end
++| (142,(_,(MlyValue.structDeclarator structDeclarator,
++structDeclarator1left,structDeclarator1right))::rest671) => let val 
++result=MlyValue.structDeclaratorList((singletonSeq structDeclarator))
++ in (LrTable.NT 57,(result,structDeclarator1left,
++structDeclarator1right),rest671) end
++| (143,(_,(MlyValue.structDeclarator structDeclarator,_,
++structDeclarator1right))::_::(_,(MlyValue.structDeclaratorList 
++structDeclaratorList,structDeclaratorList1left,_))::rest671) => let 
++val result=MlyValue.structDeclaratorList((
++addToSeq(structDeclarator, structDeclaratorList)))
++ in (LrTable.NT 57,(result,structDeclaratorList1left,
++structDeclarator1right),rest671) end
++| (144,(_,(MlyValue.notypeStructDeclarator notypeStructDeclarator,
++notypeStructDeclarator1left,notypeStructDeclarator1right))::rest671)
++ => let val result=MlyValue.notypeStructDeclaratorList((
++singletonSeq notypeStructDeclarator))
++ in (LrTable.NT 58,(result,notypeStructDeclarator1left,
++notypeStructDeclarator1right),rest671) end
++| (145,(_,(MlyValue.structDeclarator structDeclarator,_,
++structDeclarator1right))::_::(_,(MlyValue.notypeStructDeclaratorList 
++notypeStructDeclaratorList,notypeStructDeclaratorList1left,_))::
++rest671) => let val result=MlyValue.notypeStructDeclaratorList((
++addToSeq(structDeclarator, notypeStructDeclaratorList)))
++ in (LrTable.NT 58,(result,notypeStructDeclaratorList1left,
++structDeclarator1right),rest671) end
++| (146,(_,(MlyValue.declarator declarator,declarator1left,
++declarator1right))::rest671) => let val result=
++MlyValue.structDeclarator((declarator, EmptyExpr))
++ in (LrTable.NT 55,(result,declarator1left,declarator1right),rest671)
++ end
++| (147,(_,(MlyValue.expr expr,_,expr1right))::(_,(_,COLON1left,_))::
++rest671) => let val result=MlyValue.structDeclarator((EmptyDecr, expr)
++)
++ in (LrTable.NT 55,(result,COLON1left,expr1right),rest671) end
++| (148,(_,(MlyValue.expr expr,_,expr1right))::_::(_,(
++MlyValue.declarator declarator,declarator1left,_))::rest671) => let 
++val result=MlyValue.structDeclarator((declarator, expr))
++ in (LrTable.NT 55,(result,declarator1left,expr1right),rest671) end
++| (149,(_,(MlyValue.notypeDeclarator notypeDeclarator,
++notypeDeclarator1left,notypeDeclarator1right))::rest671) => let val 
++result=MlyValue.notypeStructDeclarator((notypeDeclarator, EmptyExpr))
++ in (LrTable.NT 56,(result,notypeDeclarator1left,
++notypeDeclarator1right),rest671) end
++| (150,(_,(MlyValue.expr expr,_,expr1right))::(_,(_,COLON1left,_))::
++rest671) => let val result=MlyValue.notypeStructDeclarator((
++EmptyDecr, expr))
++ in (LrTable.NT 56,(result,COLON1left,expr1right),rest671) end
++| (151,(_,(MlyValue.expr expr,_,expr1right))::_::(_,(
++MlyValue.notypeDeclarator notypeDeclarator,notypeDeclarator1left,_))::
++rest671) => let val result=MlyValue.notypeStructDeclarator((
++notypeDeclarator, expr))
++ in (LrTable.NT 56,(result,notypeDeclarator1left,expr1right),rest671)
++ end
++| (152,(_,(_,CONST1left,CONST1right))::rest671) => let val result=
++MlyValue.typeQualifier((CONST))
++ in (LrTable.NT 39,(result,CONST1left,CONST1right),rest671) end
++| (153,(_,(_,VOLATILE1left,VOLATILE1right))::rest671) => let val 
++result=MlyValue.typeQualifier((VOLATILE))
++ in (LrTable.NT 39,(result,VOLATILE1left,VOLATILE1right),rest671) end
++| (154,(_,(_,_,RCURLY1right))::(_,(MlyValue.trailingComma 
++trailingComma,_,_))::(_,(MlyValue.enumeratorList enumeratorList,_,_))
++::_::(_,(_,ENUM1left,_))::rest671) => let val result=
++MlyValue.enumSpecifier((
++Enum{tagOpt=NONE, enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++))
++ in (LrTable.NT 42,(result,ENUM1left,RCURLY1right),rest671) end
++| (155,(_,(_,_,RCURLY1right))::(_,(MlyValue.trailingComma 
++trailingComma,_,_))::(_,(MlyValue.enumeratorList enumeratorList,_,_))
++::_::(_,(MlyValue.ID ID,_,_))::(_,(_,ENUM1left,_))::rest671) => let 
++val result=MlyValue.enumSpecifier((
++Enum{tagOpt=SOME(ID), enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++))
++ in (LrTable.NT 42,(result,ENUM1left,RCURLY1right),rest671) end
++| (156,(_,(_,_,RCURLY1right))::(_,(MlyValue.trailingComma 
++trailingComma,_,_))::(_,(MlyValue.enumeratorList enumeratorList,_,_))
++::_::(_,(MlyValue.TYPE_NAME TYPE_NAME,_,_))::(_,(_,ENUM1left,_))::
++rest671) => let val result=MlyValue.enumSpecifier((
++Enum{tagOpt=SOME(TYPE_NAME), enumerators=seqToList enumeratorList, trailingComma=trailingComma}
++))
++ in (LrTable.NT 42,(result,ENUM1left,RCURLY1right),rest671) end
++| (157,(_,(MlyValue.ID ID,_,ID1right))::(_,(_,ENUM1left,_))::rest671)
++ => let val result=MlyValue.enumSpecifier((EnumTag(ID)))
++ in (LrTable.NT 42,(result,ENUM1left,ID1right),rest671) end
++| (158,(_,(MlyValue.TYPE_NAME TYPE_NAME,_,TYPE_NAME1right))::(_,(_,
++ENUM1left,_))::rest671) => let val result=MlyValue.enumSpecifier((
++EnumTag(TYPE_NAME)))
++ in (LrTable.NT 42,(result,ENUM1left,TYPE_NAME1right),rest671) end
++| (159,(_,(MlyValue.enumerator enumerator,_,enumerator1right))::_::(_,
++(MlyValue.enumeratorList enumeratorList,enumeratorList1left,_))::
++rest671) => let val result=MlyValue.enumeratorList((
++addToSeq(enumerator, enumeratorList)))
++ in (LrTable.NT 12,(result,enumeratorList1left,enumerator1right),
++rest671) end
++| (160,(_,(MlyValue.enumerator enumerator,enumerator1left,
++enumerator1right))::rest671) => let val result=MlyValue.enumeratorList
++(((TypeDefs.addNoTdef(#1(enumerator)));
++					 singletonSeq enumerator)
++)
++ in (LrTable.NT 12,(result,enumerator1left,enumerator1right),rest671)
++ end
++| (161,(_,(MlyValue.ID ID,ID1left,ID1right))::rest671) => let val 
++result=MlyValue.enumerator(((ID,ParseTree.EmptyExpr)))
++ in (LrTable.NT 13,(result,ID1left,ID1right),rest671) end
++| (162,(_,(MlyValue.expr expr,_,expr1right))::_::(_,(MlyValue.ID ID,
++ID1left,_))::rest671) => let val result=MlyValue.enumerator((ID,expr))
++ in (LrTable.NT 13,(result,ID1left,expr1right),rest671) end
++| (163,(_,(_,EXTERN1left,EXTERN1right))::rest671) => let val result=
++MlyValue.storageClassSpecifier((EXTERN))
++ in (LrTable.NT 35,(result,EXTERN1left,EXTERN1right),rest671) end
++| (164,(_,(_,STATIC1left,STATIC1right))::rest671) => let val result=
++MlyValue.storageClassSpecifier((STATIC))
++ in (LrTable.NT 35,(result,STATIC1left,STATIC1right),rest671) end
++| (165,(_,(_,AUTO1left,AUTO1right))::rest671) => let val result=
++MlyValue.storageClassSpecifier((AUTO))
++ in (LrTable.NT 35,(result,AUTO1left,AUTO1right),rest671) end
++| (166,(_,(_,REGISTER1left,REGISTER1right))::rest671) => let val 
++result=MlyValue.storageClassSpecifier((REGISTER))
++ in (LrTable.NT 35,(result,REGISTER1left,REGISTER1right),rest671) end
++| (167,(_,(_,TYPEDEF1left,TYPEDEF1right))::rest671) => let val result=
++MlyValue.storageClassSpecifier((TYPEDEF))
++ in (LrTable.NT 35,(result,TYPEDEF1left,TYPEDEF1right),rest671) end
++| (168,rest671) => let val result=MlyValue.trailingComma((false))
++ in (LrTable.NT 11,(result,defaultPos,defaultPos),rest671) end
++| (169,(_,(_,COMMA1left,COMMA1right))::rest671) => let val result=
++MlyValue.trailingComma((true))
++ in (LrTable.NT 11,(result,COMMA1left,COMMA1right),rest671) end
++| (170,(_,(MlyValue.initDeclarator initDeclarator,initDeclarator1left,
++initDeclarator1right))::rest671) => let val result=
++MlyValue.initDeclaratorList((singletonSeq initDeclarator))
++ in (LrTable.NT 18,(result,initDeclarator1left,initDeclarator1right),
++rest671) end
++| (171,(_,(MlyValue.initDeclarator initDeclarator,_,
++initDeclarator1right))::_::(_,(MlyValue.initDeclaratorList 
++initDeclaratorList,initDeclaratorList1left,_))::rest671) => let val 
++result=MlyValue.initDeclaratorList((
++addToSeq(initDeclarator, initDeclaratorList)))
++ in (LrTable.NT 18,(result,initDeclaratorList1left,
++initDeclarator1right),rest671) end
++| (172,(_,(MlyValue.declarator declarator,declarator1left,
++declarator1right))::rest671) => let val result=MlyValue.initDeclarator
++(((declarator,EmptyExpr)))
++ in (LrTable.NT 16,(result,declarator1left,declarator1right),rest671)
++ end
++| (173,(_,(MlyValue.initializer initializer,_,initializer1right))::_::
++(_,(MlyValue.declarator declarator,declarator1left,_))::rest671) => 
++let val result=MlyValue.initDeclarator((declarator,initializer))
++ in (LrTable.NT 16,(result,declarator1left,initializer1right),rest671)
++ end
++| (174,(_,(MlyValue.notypeInitDeclarator notypeInitDeclarator,
++notypeInitDeclarator1left,notypeInitDeclarator1right))::rest671) => 
++let val result=MlyValue.notypeInitDeclaratorList((
++singletonSeq notypeInitDeclarator))
++ in (LrTable.NT 19,(result,notypeInitDeclarator1left,
++notypeInitDeclarator1right),rest671) end
++| (175,(_,(MlyValue.initDeclarator initDeclarator,_,
++initDeclarator1right))::_::(_,(MlyValue.notypeInitDeclaratorList 
++notypeInitDeclaratorList,notypeInitDeclaratorList1left,_))::rest671)
++ => let val result=MlyValue.notypeInitDeclaratorList((
++addToSeq(initDeclarator, notypeInitDeclaratorList)))
++ in (LrTable.NT 19,(result,notypeInitDeclaratorList1left,
++initDeclarator1right),rest671) end
++| (176,(_,(MlyValue.notypeDeclarator notypeDeclarator,
++notypeDeclarator1left,notypeDeclarator1right))::rest671) => let val 
++result=MlyValue.notypeInitDeclarator(((notypeDeclarator,EmptyExpr)))
++ in (LrTable.NT 17,(result,notypeDeclarator1left,
++notypeDeclarator1right),rest671) end
++| (177,(_,(MlyValue.initializer initializer,_,initializer1right))::_::
++(_,(MlyValue.notypeDeclarator notypeDeclarator,notypeDeclarator1left,_
++))::rest671) => let val result=MlyValue.notypeInitDeclarator((
++notypeDeclarator,initializer))
++ in (LrTable.NT 17,(result,notypeDeclarator1left,initializer1right),
++rest671) end
++| (178,(_,(MlyValue.aftertypeDeclarator aftertypeDeclarator,
++aftertypeDeclarator1left,aftertypeDeclarator1right))::rest671) => let 
++val result=MlyValue.declarator((aftertypeDeclarator))
++ in (LrTable.NT 21,(result,aftertypeDeclarator1left,
++aftertypeDeclarator1right),rest671) end
++| (179,(_,(MlyValue.notypeDeclarator notypeDeclarator,
++notypeDeclarator1left,notypeDeclarator1right))::rest671) => let val 
++result=MlyValue.declarator((notypeDeclarator))
++ in (LrTable.NT 21,(result,notypeDeclarator1left,
++notypeDeclarator1right),rest671) end
++| (180,(_,(MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator,aftertypeDirectDeclarator1left,
++aftertypeDirectDeclarator1right))::rest671) => let val result=
++MlyValue.aftertypeDeclarator((aftertypeDirectDeclarator))
++ in (LrTable.NT 22,(result,aftertypeDirectDeclarator1left,
++aftertypeDirectDeclarator1right),rest671) end
++| (181,(_,(MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator,_,aftertypeDirectDeclarator1right))::(_,(
++MlyValue.pointer pointer,pointer1left,_))::rest671) => let val result=
++MlyValue.aftertypeDeclarator((
++applyPointer(pointer,aftertypeDirectDeclarator)))
++ in (LrTable.NT 22,(result,pointer1left,
++aftertypeDirectDeclarator1right),rest671) end
++| (182,(_,(MlyValue.notypeDirectDeclarator notypeDirectDeclarator,
++notypeDirectDeclarator1left,notypeDirectDeclarator1right))::rest671)
++ => let val result=MlyValue.notypeDeclarator((notypeDirectDeclarator))
++ in (LrTable.NT 23,(result,notypeDirectDeclarator1left,
++notypeDirectDeclarator1right),rest671) end
++| (183,(_,(MlyValue.notypeDirectDeclarator notypeDirectDeclarator,_,
++notypeDirectDeclarator1right))::(_,(MlyValue.pointer pointer,
++pointer1left,_))::rest671) => let val result=MlyValue.notypeDeclarator
++((applyPointer(pointer, notypeDirectDeclarator)))
++ in (LrTable.NT 23,(result,pointer1left,notypeDirectDeclarator1right),
++rest671) end
++| (184,(_,(MlyValue.parmDirectDeclarator parmDirectDeclarator,
++parmDirectDeclarator1left,parmDirectDeclarator1right))::rest671) => 
++let val result=MlyValue.parmDeclarator((parmDirectDeclarator))
++ in (LrTable.NT 24,(result,parmDirectDeclarator1left,
++parmDirectDeclarator1right),rest671) end
++| (185,(_,(MlyValue.parmDirectDeclarator parmDirectDeclarator,_,
++parmDirectDeclarator1right))::(_,(MlyValue.pointer pointer,
++pointer1left,_))::rest671) => let val result=MlyValue.parmDeclarator((
++applyPointer(pointer, parmDirectDeclarator)))
++ in (LrTable.NT 24,(result,pointer1left,parmDirectDeclarator1right),
++rest671) end
++| (186,(_,(_,TIMES1left,TIMES1right))::rest671) => let val result=
++MlyValue.pointer((PointerDecr(EmptyDecr)))
++ in (LrTable.NT 20,(result,TIMES1left,TIMES1right),rest671) end
++| (187,(_,(MlyValue.typeQualifierList typeQualifierList,_,
++typeQualifierList1right))::(_,(_,TIMES1left,_))::rest671) => let val 
++result=MlyValue.pointer((
++PointerDecr(loopQd(typeQualifierList,EmptyDecr))))
++ in (LrTable.NT 20,(result,TIMES1left,typeQualifierList1right),rest671
++) end
++| (188,(_,(MlyValue.pointer pointer,_,pointer1right))::(_,(_,
++TIMES1left,_))::rest671) => let val result=MlyValue.pointer((
++PointerDecr(pointer)))
++ in (LrTable.NT 20,(result,TIMES1left,pointer1right),rest671) end
++| (189,(_,(MlyValue.pointer pointer,_,pointer1right))::(_,(
++MlyValue.typeQualifierList typeQualifierList,_,_))::(_,(_,TIMES1left,_
++))::rest671) => let val result=MlyValue.pointer((
++PointerDecr(loopQd(typeQualifierList,pointer))))
++ in (LrTable.NT 20,(result,TIMES1left,pointer1right),rest671) end
++| (190,(_,(MlyValue.TYPE_NAME TYPE_NAME,TYPE_NAMEleft as 
++TYPE_NAME1left,TYPE_NAMEright as TYPE_NAME1right))::rest671) => let 
++val result=MlyValue.aftertypeDirectDeclarator((
++markDeclarator srcMap (VarDecr TYPE_NAME,TYPE_NAMEleft,TYPE_NAMEright)
++))
++ in (LrTable.NT 25,(result,TYPE_NAME1left,TYPE_NAME1right),rest671)
++ end
++| (191,(_,(_,_,RPAREN1right))::(_,(MlyValue.aftertypeDeclarator 
++aftertypeDeclarator,_,_))::(_,(_,LPAREN1left,_))::rest671) => let val 
++result=MlyValue.aftertypeDirectDeclarator((aftertypeDeclarator))
++ in (LrTable.NT 25,(result,LPAREN1left,RPAREN1right),rest671) end
++| (192,(_,(_,_,RBRACE1right))::_::(_,(
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator,
++aftertypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.aftertypeDirectDeclarator((
++ArrayDecr (aftertypeDirectDeclarator,EmptyExpr)))
++ in (LrTable.NT 25,(result,aftertypeDirectDeclarator1left,RBRACE1right
++),rest671) end
++| (193,(_,(_,_,RBRACE1right))::(_,(MlyValue.expr expr,_,_))::_::(_,(
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator,
++aftertypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.aftertypeDirectDeclarator((
++ArrayDecr (aftertypeDirectDeclarator,expr)))
++ in (LrTable.NT 25,(result,aftertypeDirectDeclarator1left,RBRACE1right
++),rest671) end
++| (194,(_,(_,_,RPAREN1right))::_::(_,(
++MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator,
++aftertypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.aftertypeDirectDeclarator((
++FuncDecr (aftertypeDirectDeclarator,nil)))
++ in (LrTable.NT 25,(result,aftertypeDirectDeclarator1left,RPAREN1right
++),rest671) end
++| (195,(_,(_,_,RPAREN1right))::(_,(MlyValue.parameterTypeList 
++parameterTypeList,_,_))::_::(_,(MlyValue.aftertypeDirectDeclarator 
++aftertypeDirectDeclarator,aftertypeDirectDeclarator1left,_))::rest671)
++ => let val result=MlyValue.aftertypeDirectDeclarator((
++FuncDecr (aftertypeDirectDeclarator,parameterTypeList)))
++ in (LrTable.NT 25,(result,aftertypeDirectDeclarator1left,RPAREN1right
++),rest671) end
++| (196,(_,(_,_,RPAREN1right))::(_,(MlyValue.identlist identlist,_,_))
++::_::(_,(MlyValue.aftertypeDirectDeclarator aftertypeDirectDeclarator,
++aftertypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.aftertypeDirectDeclarator((
++FuncDecr (aftertypeDirectDeclarator,
++					    map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++))
++ in (LrTable.NT 25,(result,aftertypeDirectDeclarator1left,RPAREN1right
++),rest671) end
++| (197,(_,(MlyValue.ID ID,IDleft as ID1left,IDright as ID1right))::
++rest671) => let val result=MlyValue.notypeDirectDeclarator((
++markDeclarator srcMap (VarDecr ID,IDleft,IDright)))
++ in (LrTable.NT 26,(result,ID1left,ID1right),rest671) end
++| (198,(_,(_,_,RPAREN1right))::(_,(MlyValue.notypeDeclarator 
++notypeDeclarator,_,_))::(_,(_,LPAREN1left,_))::rest671) => let val 
++result=MlyValue.notypeDirectDeclarator((notypeDeclarator))
++ in (LrTable.NT 26,(result,LPAREN1left,RPAREN1right),rest671) end
++| (199,(_,(_,_,RBRACE1right))::_::(_,(MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator,notypeDirectDeclarator1left,_))::rest671) => 
++let val result=MlyValue.notypeDirectDeclarator((
++ArrayDecr (notypeDirectDeclarator,EmptyExpr)))
++ in (LrTable.NT 26,(result,notypeDirectDeclarator1left,RBRACE1right),
++rest671) end
++| (200,(_,(_,_,RBRACE1right))::(_,(MlyValue.expr expr,_,_))::_::(_,(
++MlyValue.notypeDirectDeclarator notypeDirectDeclarator,
++notypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.notypeDirectDeclarator((
++ArrayDecr (notypeDirectDeclarator,expr)))
++ in (LrTable.NT 26,(result,notypeDirectDeclarator1left,RBRACE1right),
++rest671) end
++| (201,(_,(_,_,RPAREN1right))::_::(_,(MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator,notypeDirectDeclarator1left,_))::rest671) => 
++let val result=MlyValue.notypeDirectDeclarator((
++FuncDecr (notypeDirectDeclarator,nil)))
++ in (LrTable.NT 26,(result,notypeDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (202,(_,(_,_,RPAREN1right))::(_,(MlyValue.parameterTypeList 
++parameterTypeList,_,_))::_::(_,(MlyValue.notypeDirectDeclarator 
++notypeDirectDeclarator,notypeDirectDeclarator1left,_))::rest671) => 
++let val result=MlyValue.notypeDirectDeclarator((
++FuncDecr (notypeDirectDeclarator,parameterTypeList)))
++ in (LrTable.NT 26,(result,notypeDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (203,(_,(_,_,RPAREN1right))::(_,(MlyValue.identlist identlist,_,_))
++::_::(_,(MlyValue.notypeDirectDeclarator notypeDirectDeclarator,
++notypeDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.notypeDirectDeclarator((
++FuncDecr (notypeDirectDeclarator,
++ 						   map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++))
++ in (LrTable.NT 26,(result,notypeDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (204,(_,(MlyValue.TYPE_NAME TYPE_NAME,TYPE_NAMEleft as 
++TYPE_NAME1left,TYPE_NAMEright as TYPE_NAME1right))::rest671) => let 
++val result=MlyValue.parmDirectDeclarator((
++markDeclarator srcMap (VarDecr TYPE_NAME,TYPE_NAMEleft,TYPE_NAMEright)
++))
++ in (LrTable.NT 27,(result,TYPE_NAME1left,TYPE_NAME1right),rest671)
++ end
++| (205,(_,(_,_,RBRACE1right))::_::(_,(MlyValue.parmDirectDeclarator 
++parmDirectDeclarator,parmDirectDeclarator1left,_))::rest671) => let 
++val result=MlyValue.parmDirectDeclarator((
++ArrayDecr (parmDirectDeclarator,EmptyExpr)))
++ in (LrTable.NT 27,(result,parmDirectDeclarator1left,RBRACE1right),
++rest671) end
++| (206,(_,(_,_,RBRACE1right))::(_,(MlyValue.expr expr,_,_))::_::(_,(
++MlyValue.parmDirectDeclarator parmDirectDeclarator,
++parmDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.parmDirectDeclarator((ArrayDecr (parmDirectDeclarator,expr)))
++ in (LrTable.NT 27,(result,parmDirectDeclarator1left,RBRACE1right),
++rest671) end
++| (207,(_,(_,_,RPAREN1right))::_::(_,(MlyValue.parmDirectDeclarator 
++parmDirectDeclarator,parmDirectDeclarator1left,_))::rest671) => let 
++val result=MlyValue.parmDirectDeclarator((
++FuncDecr (parmDirectDeclarator,nil)))
++ in (LrTable.NT 27,(result,parmDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (208,(_,(_,_,RPAREN1right))::(_,(MlyValue.parameterTypeList 
++parameterTypeList,_,_))::_::(_,(MlyValue.parmDirectDeclarator 
++parmDirectDeclarator,parmDirectDeclarator1left,_))::rest671) => let 
++val result=MlyValue.parmDirectDeclarator((
++FuncDecr (parmDirectDeclarator,parameterTypeList)))
++ in (LrTable.NT 27,(result,parmDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (209,(_,(_,_,RPAREN1right))::(_,(MlyValue.identlist identlist,_,_))
++::_::(_,(MlyValue.parmDirectDeclarator parmDirectDeclarator,
++parmDirectDeclarator1left,_))::rest671) => let val result=
++MlyValue.parmDirectDeclarator((
++FuncDecr (parmDirectDeclarator,
++						    map (fn (x,y,z) => (unknown,markDeclarator srcMap (VarDecr x,y,z))) (seqToList identlist))
++))
++ in (LrTable.NT 27,(result,parmDirectDeclarator1left,RPAREN1right),
++rest671) end
++| (210,(_,(MlyValue.expr expr,expr1left,expr1right))::rest671) => let 
++val result=MlyValue.initializer((expr))
++ in (LrTable.NT 33,(result,expr1left,expr1right),rest671) end
++| (211,(_,(_,_,RCURLYright as RCURLY1right))::_::(_,(
++MlyValue.initializerList initializerList,_,_))::(_,(_,LCURLYleft as 
++LCURLY1left,_))::rest671) => let val result=MlyValue.initializer((
++markExpression srcMap (InitList(seqToList initializerList),LCURLYleft,RCURLYright)
++))
++ in (LrTable.NT 33,(result,LCURLY1left,RCURLY1right),rest671) end
++| (212,(_,(MlyValue.initializer initializer,initializer1left,
++initializer1right))::rest671) => let val result=
++MlyValue.initializerList((singletonSeq initializer))
++ in (LrTable.NT 34,(result,initializer1left,initializer1right),rest671
++) end
++| (213,(_,(MlyValue.initializer initializer,_,initializer1right))::_::
++(_,(MlyValue.initializerList initializerList,initializerList1left,_))
++::rest671) => let val result=MlyValue.initializerList((
++addToSeq(initializer, initializerList)))
++ in (LrTable.NT 34,(result,initializerList1left,initializer1right),
++rest671) end
++| (214,(_,(MlyValue.declaration declaration,declarationleft as 
++declaration1left,declarationright as declaration1right))::rest671) => 
++let val result=MlyValue.declarationList((
++singletonSeq(markDeclaration srcMap (declaration,
++									      declarationleft,
++								              declarationright))
++))
++ in (LrTable.NT 45,(result,declaration1left,declaration1right),rest671
++) end
++| (215,(_,(MlyValue.declaration declaration,declarationleft,
++declarationright as declaration1right))::(_,(MlyValue.declarationList 
++declarationList,declarationList1left,_))::rest671) => let val result=
++MlyValue.declarationList((
++addToSeq(markDeclaration srcMap (declaration,
++							            	  declarationleft,
++									  declarationright),
++						  declarationList)
++))
++ in (LrTable.NT 45,(result,declarationList1left,declaration1right),
++rest671) end
++| (216,(_,(MlyValue.ID ID,IDleft as ID1left,IDright as ID1right))::
++rest671) => let val result=MlyValue.identlist((
++singletonSeq (ID,IDleft,IDright)))
++ in (LrTable.NT 46,(result,ID1left,ID1right),rest671) end
++| (217,(_,(MlyValue.ID ID,IDleft,IDright as ID1right))::_::(_,(
++MlyValue.identlist identlist,identlist1left,_))::rest671) => let val 
++result=MlyValue.identlist((addToSeq((ID,IDleft,IDright),identlist)))
++ in (LrTable.NT 46,(result,identlist1left,ID1right),rest671) end
++| (218,(_,(MlyValue.notypeDeclarator notypeDeclarator,
++notypeDeclarator1left,notypeDeclarator1right))::rest671) => let val 
++result=MlyValue.fDefDeclaration((
++insertFuncName(notypeDeclarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(notypeDeclarator);
++					 (unknown, notypeDeclarator)
++))
++ in (LrTable.NT 44,(result,notypeDeclarator1left,
++notypeDeclarator1right),rest671) end
++| (219,(_,(MlyValue.declarator declarator,_,declarator1right))::(_,(
++MlyValue.declarationSpecifiers declarationSpecifiers,
++declarationSpecifiers1left,_))::rest671) => let val result=
++MlyValue.fDefDeclaration((
++insertFuncName(declarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(declarator);
++					 (declarationSpecifiers, declarator)
++))
++ in (LrTable.NT 44,(result,declarationSpecifiers1left,declarator1right
++),rest671) end
++| (220,(_,(MlyValue.notypeDeclarator notypeDeclarator,_,
++notypeDeclarator1right))::(_,(MlyValue.declarationModifiers 
++declarationModifiers,declarationModifiers1left,_))::rest671) => let 
++val result=MlyValue.fDefDeclaration((
++insertFuncName(notypeDeclarator);
++					 TypeDefs.pushScope();
++					 insertFuncParams(notypeDeclarator);
++					 (declarationModifiers, notypeDeclarator)
++))
++ in (LrTable.NT 44,(result,declarationModifiers1left,
++notypeDeclarator1right),rest671) end
++| (221,(_,(MlyValue.compoundStatement compoundStatement,_,
++compoundStatement1right))::(_,(MlyValue.fDefDeclaration 
++fDefDeclaration,fDefDeclaration1left,_))::rest671) => let val result=
++MlyValue.functionDefinition((
++TypeDefs.popScope();
++					 FunctionDef
++					    {retType = #1 fDefDeclaration,
++					     funDecr = #2 fDefDeclaration,
++                                             krParams = [],
++                                             body = compoundStatement}
++))
++ in (LrTable.NT 47,(result,fDefDeclaration1left,
++compoundStatement1right),rest671) end
++| (222,(_,(MlyValue.compoundStatement compoundStatement,_,
++compoundStatement1right))::(_,(MlyValue.declarationList 
++declarationList,_,_))::(_,(MlyValue.fDefDeclaration fDefDeclaration,
++fDefDeclaration1left,_))::rest671) => let val result=
++MlyValue.functionDefinition((
++TypeDefs.popScope();
++					 FunctionDef 
++					    {retType = #1 fDefDeclaration,
++					     funDecr = #2 fDefDeclaration,
++                                             krParams = seqToList declarationList,
++                                             body = compoundStatement}
++))
++ in (LrTable.NT 47,(result,fDefDeclaration1left,
++compoundStatement1right),rest671) end
++| (223,(_,(MlyValue.pointer pointer,pointer1left,pointer1right))::
++rest671) => let val result=MlyValue.abstractDeclarator((
++applyPointer (pointer, EmptyDecr)))
++ in (LrTable.NT 14,(result,pointer1left,pointer1right),rest671) end
++| (224,(_,(MlyValue.directAbstractDeclarator directAbstractDeclarator,
++directAbstractDeclarator1left,directAbstractDeclarator1right))::
++rest671) => let val result=MlyValue.abstractDeclarator((
++directAbstractDeclarator))
++ in (LrTable.NT 14,(result,directAbstractDeclarator1left,
++directAbstractDeclarator1right),rest671) end
++| (225,(_,(MlyValue.directAbstractDeclarator directAbstractDeclarator,
++_,directAbstractDeclarator1right))::(_,(MlyValue.pointer pointer,
++pointer1left,_))::rest671) => let val result=
++MlyValue.abstractDeclarator((
++applyPointer(pointer, directAbstractDeclarator)))
++ in (LrTable.NT 14,(result,pointer1left,directAbstractDeclarator1right
++),rest671) end
++| (226,(_,(_,_,RPAREN1right))::(_,(MlyValue.abstractDeclarator 
++abstractDeclarator,_,_))::(_,(_,LPAREN1left,_))::rest671) => let val 
++result=MlyValue.directAbstractDeclarator((abstractDeclarator))
++ in (LrTable.NT 15,(result,LPAREN1left,RPAREN1right),rest671) end
++| (227,(_,(_,_,RBRACE1right))::(_,(_,LBRACE1left,_))::rest671) => let 
++val result=MlyValue.directAbstractDeclarator((
++ArrayDecr(EmptyDecr, EmptyExpr)))
++ in (LrTable.NT 15,(result,LBRACE1left,RBRACE1right),rest671) end
++| (228,(_,(_,_,RBRACE1right))::(_,(MlyValue.expr expr,_,_))::(_,(_,
++LBRACE1left,_))::rest671) => let val result=
++MlyValue.directAbstractDeclarator((ArrayDecr(EmptyDecr, expr)))
++ in (LrTable.NT 15,(result,LBRACE1left,RBRACE1right),rest671) end
++| (229,(_,(_,_,RBRACE1right))::_::(_,(
++MlyValue.directAbstractDeclarator directAbstractDeclarator,
++directAbstractDeclarator1left,_))::rest671) => let val result=
++MlyValue.directAbstractDeclarator((
++ArrayDecr (directAbstractDeclarator,EmptyExpr)))
++ in (LrTable.NT 15,(result,directAbstractDeclarator1left,RBRACE1right)
++,rest671) end
++| (230,(_,(_,_,RBRACE1right))::(_,(MlyValue.expr expr,_,_))::_::(_,(
++MlyValue.directAbstractDeclarator directAbstractDeclarator,
++directAbstractDeclarator1left,_))::rest671) => let val result=
++MlyValue.directAbstractDeclarator((
++ArrayDecr (directAbstractDeclarator,expr)))
++ in (LrTable.NT 15,(result,directAbstractDeclarator1left,RBRACE1right)
++,rest671) end
++| (231,(_,(_,_,RPAREN1right))::(_,(_,LPAREN1left,_))::rest671) => let 
++val result=MlyValue.directAbstractDeclarator((
++FuncDecr (EmptyDecr ,nil)))
++ in (LrTable.NT 15,(result,LPAREN1left,RPAREN1right),rest671) end
++| (232,(_,(_,_,RPAREN1right))::(_,(MlyValue.parameterTypeList 
++parameterTypeList,_,_))::(_,(_,LPAREN1left,_))::rest671) => let val 
++result=MlyValue.directAbstractDeclarator((
++FuncDecr (EmptyDecr, parameterTypeList)))
++ in (LrTable.NT 15,(result,LPAREN1left,RPAREN1right),rest671) end
++| (233,(_,(_,_,RPAREN1right))::_::(_,(
++MlyValue.directAbstractDeclarator directAbstractDeclarator,
++directAbstractDeclarator1left,_))::rest671) => let val result=
++MlyValue.directAbstractDeclarator((
++FuncDecr (directAbstractDeclarator,nil)))
++ in (LrTable.NT 15,(result,directAbstractDeclarator1left,RPAREN1right)
++,rest671) end
++| (234,(_,(_,_,RPAREN1right))::(_,(MlyValue.parameterTypeList 
++parameterTypeList,_,_))::_::(_,(MlyValue.directAbstractDeclarator 
++directAbstractDeclarator,directAbstractDeclarator1left,_))::rest671)
++ => let val result=MlyValue.directAbstractDeclarator((
++FuncDecr (directAbstractDeclarator, parameterTypeList)))
++ in (LrTable.NT 15,(result,directAbstractDeclarator1left,RPAREN1right)
++,rest671) end
++| (235,(_,(MlyValue.parameterList parameterList,parameterList1left,
++parameterList1right))::rest671) => let val result=
++MlyValue.parameterTypeList((seqToList parameterList))
++ in (LrTable.NT 52,(result,parameterList1left,parameterList1right),
++rest671) end
++| (236,(_,(_,_,ELIPSIS1right))::_::(_,(MlyValue.parameterList 
++parameterList,parameterList1left,_))::rest671) => let val result=
++MlyValue.parameterTypeList((
++let val decltype = {specifiers=[Ellipses],qualifiers=[],storage=[]}
++	        		 in (seqToList parameterList) @ [(decltype, EllipsesDecr)] end
++))
++ in (LrTable.NT 52,(result,parameterList1left,ELIPSIS1right),rest671)
++ end
++| (237,(_,(MlyValue.parameterDeclaration parameterDeclaration,
++parameterDeclarationleft as parameterDeclaration1left,
++parameterDeclarationright as parameterDeclaration1right))::rest671)
++ => let val result=MlyValue.parameterList((
++singletonSeq(#1 parameterDeclaration,
++                                              markDeclarator srcMap (#2 parameterDeclaration,
++							             parameterDeclarationleft,
++								     parameterDeclarationright))
++))
++ in (LrTable.NT 51,(result,parameterDeclaration1left,
++parameterDeclaration1right),rest671) end
++| (238,(_,(MlyValue.parameterDeclaration parameterDeclaration,
++parameterDeclarationleft,parameterDeclarationright as 
++parameterDeclaration1right))::_::(_,(MlyValue.parameterList 
++parameterList,parameterList1left,_))::rest671) => let val result=
++MlyValue.parameterList((
++addToSeq((#1 parameterDeclaration,
++	                                           markDeclarator
++	                                            srcMap 
++                                                     (#2 parameterDeclaration,
++						      parameterDeclarationleft,
++						      parameterDeclarationright)),
++					  parameterList)
++))
++ in (LrTable.NT 51,(result,parameterList1left,
++parameterDeclaration1right),rest671) end
++| (239,(_,(MlyValue.notypeDeclarator notypeDeclarator,_,
++notypeDeclarator1right))::(_,(MlyValue.declarationSpecifiers 
++declarationSpecifiers,declarationSpecifiers1left,_))::rest671) => let 
++val result=MlyValue.parameterDeclaration((
++(declarationSpecifiers, notypeDeclarator)))
++ in (LrTable.NT 53,(result,declarationSpecifiers1left,
++notypeDeclarator1right),rest671) end
++| (240,(_,(MlyValue.parmDeclarator parmDeclarator,_,
++parmDeclarator1right))::(_,(MlyValue.declarationSpecifiers 
++declarationSpecifiers,declarationSpecifiers1left,_))::rest671) => let 
++val result=MlyValue.parameterDeclaration((
++(declarationSpecifiers, parmDeclarator)))
++ in (LrTable.NT 53,(result,declarationSpecifiers1left,
++parmDeclarator1right),rest671) end
++| (241,(_,(MlyValue.declarationSpecifiers declarationSpecifiers,
++declarationSpecifiers1left,declarationSpecifiers1right))::rest671) => 
++let val result=MlyValue.parameterDeclaration((
++(declarationSpecifiers, EmptyDecr)))
++ in (LrTable.NT 53,(result,declarationSpecifiers1left,
++declarationSpecifiers1right),rest671) end
++| (242,(_,(MlyValue.abstractDeclarator abstractDeclarator,_,
++abstractDeclarator1right))::(_,(MlyValue.declarationSpecifiers 
++declarationSpecifiers,declarationSpecifiers1left,_))::rest671) => let 
++val result=MlyValue.parameterDeclaration((
++(declarationSpecifiers, abstractDeclarator)))
++ in (LrTable.NT 53,(result,declarationSpecifiers1left,
++abstractDeclarator1right),rest671) end
++| (243,(_,(MlyValue.notypeDeclarator notypeDeclarator,_,
++notypeDeclarator1right))::(_,(MlyValue.declarationModifiers 
++declarationModifiers,declarationModifiers1left,_))::rest671) => let 
++val result=MlyValue.parameterDeclaration((
++(declarationModifiers, notypeDeclarator)))
++ in (LrTable.NT 53,(result,declarationModifiers1left,
++notypeDeclarator1right),rest671) end
++| (244,(_,(MlyValue.abstractDeclarator abstractDeclarator,_,
++abstractDeclarator1right))::(_,(MlyValue.declarationModifiers 
++declarationModifiers,declarationModifiers1left,_))::rest671) => let 
++val result=MlyValue.parameterDeclaration((
++(declarationModifiers, abstractDeclarator)))
++ in (LrTable.NT 53,(result,declarationModifiers1left,
++abstractDeclarator1right),rest671) end
++| (245,rest671) => let val result=MlyValue.pushScope((
++TypeDefs.pushScope()))
++ in (LrTable.NT 61,(result,defaultPos,defaultPos),rest671) end
++| (246,rest671) => let val result=MlyValue.popScope((
++TypeDefs.popScope()))
++ in (LrTable.NT 62,(result,defaultPos,defaultPos),rest671) end
++| _ => raise (mlyAction i392)
++end
++val void = MlyValue.VOID'
++val extract = fn a => (fn MlyValue.translationUnit x => x
++| _ => let exception ParseInternal
++	in raise ParseInternal end) a 
++end
++end
++structure Tokens : C_TOKENS =
++struct
++type svalue = ParserData.svalue
++type ('a,'b) token = ('a,'b) Token.token
++fun EOF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 0,(
++ParserData.MlyValue.VOID',p1,p2))
++fun COLON (p1,p2) = Token.TOKEN (ParserData.LrTable.T 1,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SEMICOLON (p1,p2) = Token.TOKEN (ParserData.LrTable.T 2,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LPAREN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 3,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RPAREN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 4,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LCURLY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 5,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RCURLY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 6,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LBRACE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 7,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RBRACE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 8,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DOT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 9,(
++ParserData.MlyValue.VOID',p1,p2))
++fun COMMA (p1,p2) = Token.TOKEN (ParserData.LrTable.T 10,(
++ParserData.MlyValue.VOID',p1,p2))
++fun QUESTION (p1,p2) = Token.TOKEN (ParserData.LrTable.T 11,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PERCENT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 12,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AMP (p1,p2) = Token.TOKEN (ParserData.LrTable.T 13,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BAR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 14,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TILDE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 15,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DIVIDE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 16,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PLUS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 17,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MINUS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 18,(
++ParserData.MlyValue.VOID',p1,p2))
++fun HAT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 19,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BANG (p1,p2) = Token.TOKEN (ParserData.LrTable.T 20,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TIMES (p1,p2) = Token.TOKEN (ParserData.LrTable.T 21,(
++ParserData.MlyValue.VOID',p1,p2))
++fun INC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 22,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DEC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 23,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ARROW (p1,p2) = Token.TOKEN (ParserData.LrTable.T 24,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ID (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 25,(
++ParserData.MlyValue.ID i,p1,p2))
++fun EQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 26,(
++ParserData.MlyValue.VOID',p1,p2))
++fun PLUSEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 27,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MINUSEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 28,(
++ParserData.MlyValue.VOID',p1,p2))
++fun XOREQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 29,(
++ParserData.MlyValue.VOID',p1,p2))
++fun MODEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 30,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TIMESEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 31,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DIVEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 32,(
++ParserData.MlyValue.VOID',p1,p2))
++fun OREQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 33,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ANDEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 34,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LSHIFTEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 35,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RSHIFTEQUALS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 36,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LTE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 37,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GTE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 38,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 39,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 40,(
++ParserData.MlyValue.VOID',p1,p2))
++fun EQ (p1,p2) = Token.TOKEN (ParserData.LrTable.T 41,(
++ParserData.MlyValue.VOID',p1,p2))
++fun NEQ (p1,p2) = Token.TOKEN (ParserData.LrTable.T 42,(
++ParserData.MlyValue.VOID',p1,p2))
++fun OR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 43,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AND (p1,p2) = Token.TOKEN (ParserData.LrTable.T 44,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LSHIFT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 45,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RSHIFT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 46,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DECNUM (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 47,(
++ParserData.MlyValue.DECNUM i,p1,p2))
++fun REALNUM (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 48,(
++ParserData.MlyValue.REALNUM i,p1,p2))
++fun STRING (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 49,(
++ParserData.MlyValue.STRING i,p1,p2))
++fun CCONST (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 50,(
++ParserData.MlyValue.CCONST i,p1,p2))
++fun EXTERN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 51,(
++ParserData.MlyValue.VOID',p1,p2))
++fun AUTO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 52,(
++ParserData.MlyValue.VOID',p1,p2))
++fun STATIC (p1,p2) = Token.TOKEN (ParserData.LrTable.T 53,(
++ParserData.MlyValue.VOID',p1,p2))
++fun REGISTER (p1,p2) = Token.TOKEN (ParserData.LrTable.T 54,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CONST (p1,p2) = Token.TOKEN (ParserData.LrTable.T 55,(
++ParserData.MlyValue.VOID',p1,p2))
++fun VOLATILE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 56,(
++ParserData.MlyValue.VOID',p1,p2))
++fun IF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 57,(
++ParserData.MlyValue.VOID',p1,p2))
++fun THEN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 58,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ELSE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 59,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FOR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 60,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 61,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SWITCH (p1,p2) = Token.TOKEN (ParserData.LrTable.T 62,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CASE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 63,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DEFAULT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 64,(
++ParserData.MlyValue.VOID',p1,p2))
++fun WHILE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 65,(
++ParserData.MlyValue.VOID',p1,p2))
++fun RETURN (p1,p2) = Token.TOKEN (ParserData.LrTable.T 66,(
++ParserData.MlyValue.VOID',p1,p2))
++fun BREAK (p1,p2) = Token.TOKEN (ParserData.LrTable.T 67,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CONTINUE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 68,(
++ParserData.MlyValue.VOID',p1,p2))
++fun GOTO (p1,p2) = Token.TOKEN (ParserData.LrTable.T 69,(
++ParserData.MlyValue.VOID',p1,p2))
++fun CHAR (p1,p2) = Token.TOKEN (ParserData.LrTable.T 70,(
++ParserData.MlyValue.VOID',p1,p2))
++fun DOUBLE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 71,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ENUM (p1,p2) = Token.TOKEN (ParserData.LrTable.T 72,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FLOAT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 73,(
++ParserData.MlyValue.VOID',p1,p2))
++fun INT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 74,(
++ParserData.MlyValue.VOID',p1,p2))
++fun LONG (p1,p2) = Token.TOKEN (ParserData.LrTable.T 75,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SHORT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 76,(
++ParserData.MlyValue.VOID',p1,p2))
++fun FRACTIONAL (p1,p2) = Token.TOKEN (ParserData.LrTable.T 77,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SATURATE (p1,p2) = Token.TOKEN (ParserData.LrTable.T 78,(
++ParserData.MlyValue.VOID',p1,p2))
++fun STRUCT (p1,p2) = Token.TOKEN (ParserData.LrTable.T 79,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNION (p1,p2) = Token.TOKEN (ParserData.LrTable.T 80,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNSIGNED (p1,p2) = Token.TOKEN (ParserData.LrTable.T 81,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SIGNED (p1,p2) = Token.TOKEN (ParserData.LrTable.T 82,(
++ParserData.MlyValue.VOID',p1,p2))
++fun VOID (p1,p2) = Token.TOKEN (ParserData.LrTable.T 83,(
++ParserData.MlyValue.VOID',p1,p2))
++fun SIZEOF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 84,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TYPEDEF (p1,p2) = Token.TOKEN (ParserData.LrTable.T 85,(
++ParserData.MlyValue.VOID',p1,p2))
++fun UNARY (p1,p2) = Token.TOKEN (ParserData.LrTable.T 86,(
++ParserData.MlyValue.VOID',p1,p2))
++fun ELIPSIS (p1,p2) = Token.TOKEN (ParserData.LrTable.T 87,(
++ParserData.MlyValue.VOID',p1,p2))
++fun TYPE_NAME (i,p1,p2) = Token.TOKEN (ParserData.LrTable.T 88,(
++ParserData.MlyValue.TYPE_NAME i,p1,p2))
++end
++end
 diff -Naur ckit/src/parser/grammar/c.lex.sml ckit-mlton/src/parser/grammar/c.lex.sml
---- ckit/src/parser/grammar/c.lex.sml	2005-11-21 11:29:21.000000000 -0500
-+++ ckit-mlton/src/parser/grammar/c.lex.sml	2005-11-21 11:29:21.000000000 -0500
-@@ -1,3 +1,4 @@
+--- ckit/src/parser/grammar/c.lex.sml	1969-12-31 19:00:00.000000000 -0500
++++ ckit-mlton/src/parser/grammar/c.lex.sml	2006-05-02 23:00:53.000000000 -0400
+@@ -0,0 +1,1053 @@
 +type int = Int.int
- functor CLexFun(structure Tokens : C_TOKENS 
- 			 structure TokTable : TOKENTABLE 
- 			 sharing TokTable.Tokens = Tokens)=
-@@ -758,7 +759,7 @@
- fun f x = x 
- val s = map f (rev (tl (rev s))) 
- exception LexHackingError 
--fun look ((j,x)::r, i: int) = if i = j then x else look(r, i) 
++functor CLexFun(structure Tokens : C_TOKENS 
++			 structure TokTable : TOKENTABLE 
++			 sharing TokTable.Tokens = Tokens)=
++   struct
++    structure UserDeclarations =
++      struct
++(* Copyright (c) 1998 by Lucent Technologies *)
++
++(*
++ * The following replacement for c.lex should give correct (ANSI)
++ * In particular, we don't allow
++ * 
++ * char *t = "abd
++ * lkj";
++ * 
++ * GCC accepts this, but SGI cc does not. This program is not ANSI
++ * compliant.
++ *)
++
++type svalue = Tokens.svalue
++type pos = int
++type lexresult = (svalue,pos) Tokens.token
++type errWarn = {err: pos*pos*string->unit, warn: pos*pos*string->unit}
++type lexarg =  {comLevel : int ref, 
++                sourceMap : SourceMap.sourcemap,
++		charlist : string list ref,
++		stringstart : int ref,  (* start of current string or comment*)
++	        errWarn: errWarn}
++
++type arg = lexarg
++type ('a,'b) token = ('a,'b) Tokens.token
++
++fun ordof (s, i) = Char.ord (String.sub (s, i))
++fun dec (iRef : int ref) = iRef := (!iRef) - 1
++fun inc (iRef : int ref) = iRef := (!iRef) + 1
++fun chr i = String.str(Char.chr i)
++fun ord s = Char.ord(String.sub(s, 0))
++fun explode s = CharVector.foldr (fn (c, l) => str c :: l) [] s
++fun implode strList = String.concat strList
++fun hd [] = (print "c.lex: hd of empty\n";
++	     raise Empty)
++  | hd (h :: l)	= h
++
++val eof = fn ({comLevel,errWarn,sourceMap,stringstart,charlist}:lexarg) => 
++	   let val pos = Int.max(!stringstart+2, SourceMap.currPos sourceMap)
++	    in if !comLevel>0 then (#err errWarn) (!stringstart,pos, "unclosed comment" )
++		  	      else ();
++	       Tokens.EOF(pos,pos)
++	   end	
++fun addString (charlist,s:string) = charlist := s :: (!charlist)
++fun makeString charlist = (implode(rev(!charlist)) before charlist := nil)
++
++fun mkHexInt (s,a,b,errWarn:errWarn)=((case (StringCvt.scanString (LargeInt.scan StringCvt.HEX) s) of
++		  SOME i => i
++		| _ => ((#err errWarn)(a,b,"trouble in parsing int");Int.toLarge(0)))
++			handle OverFlow => ((#err errWarn)(a,b,"large int const");Int.toLarge(0)))
++
++fun mkHexChar (args as (s, a, b, errWarn:errWarn)) : int (* returns a character sized integer *) = 
++	let val i = mkHexInt args
++	in
++	  if (i>255) then 
++	    ((#warn errWarn) (a,b,"overflow in hexadecimal escape sequence");
++	    IntInf.toInt(i mod 256))
++	  else
++       	    IntInf.toInt i
++        end	
++
++fun mkOctInt (s,a,b,errWarn:errWarn)
++	= ((case (StringCvt.scanString (LargeInt.scan StringCvt.OCT) s) of
++		  SOME i => i
++		| _ => ((#err errWarn)(a,b,"trouble in parsing int");Int.toLarge(0)))
++			handle OverFlow => ((#err errWarn)(a,b,"large int const");Int.toLarge(0)))
++
++
++fun mkOctChar (args as (s, a, b, errWarn:errWarn)) (* returns a character sized integer *) = 
++	let val i = mkOctInt args
++	in
++	  if (i>255) then 
++	    ((#warn errWarn) (a,b,"overflow in octal escape sequence");
++	    IntInf.toInt(i mod 256))
++	  else
++       	    IntInf.toInt i
++        end	
++
++fun mkInt (s,a,b,errWarn:errWarn) = ((case (StringCvt.scanString (LargeInt.scan StringCvt.DEC) s) of
++		  SOME i => i
++		| _ => ((#err errWarn)(a,b,"trouble in parsing int");Int.toLarge(0)))
++			handle OverFlow => ((#err errWarn)(a,b,"large int const");Int.toLarge(0)))
++
++fun mkRealNum (s,a,b,errWarn:errWarn) = ((case (StringCvt.scanString Real.scan s) of
++		   SOME r => r
++		 | _ => ((#err errWarn)(a,b,"trouble in parsing real");0.0))
++			handle OverFlow => ((#err errWarn)(a,b,"large real const"); 0.0))
++
++val backslasha = 7
++
++fun special_char(c,fst,last,errWarn:errWarn) =
++		(case c of
++			"\\a" => 7
++		      | "\\b" => 8
++		      | "\\f" => 12
++		      | "\\n" => 10
++		      | "\\r" => 13
++		      | "\\t" => 9
++		      | "\\v" => 11
++	              | _ => ordof(c,1)
++	                      (* strictly speaking, should only handle
++                                \?, \\, \", \', but it is common
++                                to simply ignore slash, and just use next char *)
++		)
++
++
++(* Notes on lexer states:
++   INITIAL -- predefined start state and the default token state
++   S -- inside a string (entered from INTITAL with ")
++   C -- inside a comment (entered from INITIAL with /* )
++ *)
++
++
++end (* end of user routines *)
++exception LexError (* raised if illegal leaf action tried *)
++structure Internal =
++	struct
++
++datatype yyfinstate = N of int
++type statedata = {fin : yyfinstate list, trans: string}
++(* transition & final state table *)
++val tab = let
++val s = [ 
++ (0, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (1, 
++"\007\007\007\007\007\007\007\007\007\095\097\007\095\007\007\007\
++\\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
++\\095\093\092\007\007\090\087\073\072\071\069\066\065\061\057\054\
++\\044\033\033\033\033\033\033\033\033\033\032\031\027\025\021\020\
++\\007\014\014\014\014\014\014\014\014\014\014\014\014\014\014\014\
++\\014\014\014\014\014\014\014\014\014\014\014\019\007\018\016\014\
++\\007\014\014\014\014\014\014\014\014\014\014\014\014\014\014\014\
++\\014\014\014\014\014\014\014\014\014\014\014\013\010\009\008\007\
++\\007"
++),
++ (2, 
++"\007\007\007\007\007\007\007\007\007\101\097\007\101\007\007\007\
++\\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\007\
++\\101\093\092\098\007\090\087\073\072\071\069\066\065\061\057\054\
++\\044\033\033\033\033\033\033\033\033\033\032\031\027\025\021\020\
++\\007\014\014\014\014\014\014\014\014\014\014\014\014\014\014\014\
++\\014\014\014\014\014\014\014\014\014\014\014\019\007\018\016\014\
++\\007\014\014\014\014\014\014\014\014\014\014\014\014\014\014\014\
++\\014\014\014\014\014\014\014\014\014\014\014\013\010\009\008\007\
++\\007"
++),
++ (3, 
++"\103\103\103\103\103\103\103\103\103\106\097\103\106\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\106\103\103\103\103\103\103\103\103\103\104\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103"
++),
++ (4, 
++"\103\103\103\103\103\103\103\103\103\108\097\103\108\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\108\103\103\107\103\103\103\103\103\103\104\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\103\
++\\103"
++),
++ (5, 
++"\109\109\109\109\109\109\109\109\109\109\122\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\121\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\110\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109"
++),
++ (10, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\012\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\011\000\000\000\
++\\000"
++),
++ (14, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\015\015\015\015\015\015\015\015\015\015\000\000\000\000\000\000\
++\\000\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\
++\\015\015\015\015\015\015\015\015\015\015\015\000\000\000\000\015\
++\\000\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\
++\\015\015\015\015\015\015\015\015\015\015\015\000\000\000\000\000\
++\\000"
++),
++ (16, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\017\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (21, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\024\022\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (22, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\023\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (25, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\026\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (27, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\029\028\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (29, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\030\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (33, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\042\000\
++\\041\041\041\041\041\041\041\041\041\041\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\036\000\000\000\
++\\000\000\000\000\000\034\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\036\000\000\000\
++\\000\000\000\000\000\034\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (34, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\035\000\000\000\
++\\000\000\000\000\000\035\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\035\000\000\000\
++\\000\000\000\000\000\035\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (37, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\040\000\040\000\000\
++\\038\038\038\038\038\038\038\038\038\038\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (38, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\038\038\038\038\038\038\038\038\038\038\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (40, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\038\038\038\038\038\038\038\038\038\038\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (42, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\043\043\043\043\043\043\043\043\043\043\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (43, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\043\043\043\043\043\043\043\043\043\043\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (44, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\042\000\
++\\050\050\050\050\050\050\050\050\049\049\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\036\000\000\000\
++\\000\000\000\000\000\034\000\000\045\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\036\000\000\000\
++\\000\000\000\000\000\034\000\000\045\000\000\000\000\000\000\000\
++\\000"
++),
++ (45, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\046\046\046\046\046\046\046\046\046\046\000\000\000\000\000\000\
++\\000\046\046\046\046\046\046\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\046\046\046\046\046\046\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (46, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\046\046\046\046\046\046\046\046\046\046\000\000\000\000\000\000\
++\\000\046\046\046\046\046\046\000\000\000\000\000\047\000\000\000\
++\\000\000\000\000\000\047\000\000\000\000\000\000\000\000\000\000\
++\\000\046\046\046\046\046\046\000\000\000\000\000\047\000\000\000\
++\\000\000\000\000\000\047\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (47, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\048\000\000\000\
++\\000\000\000\000\000\048\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\048\000\000\000\
++\\000\000\000\000\000\048\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (49, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\042\000\
++\\049\049\049\049\049\049\049\049\049\049\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (50, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\042\000\
++\\050\050\050\050\050\050\050\050\049\049\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\053\000\000\000\
++\\000\000\000\000\000\051\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\053\000\000\000\
++\\000\000\000\000\000\051\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (51, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\052\000\000\000\
++\\000\000\000\000\000\052\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\052\000\000\000\
++\\000\000\000\000\000\052\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (54, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\056\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\055\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (57, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\059\000\
++\\058\058\058\058\058\058\058\058\058\058\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (58, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\058\058\058\058\058\058\058\058\058\058\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\037\000\000\000\000\000\000\039\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (59, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\060\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (61, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\064\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\063\062\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (66, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\068\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\067\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (69, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\070\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (73, 
++"\074\074\074\074\074\074\074\074\074\074\000\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\076\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\074\
++\\074"
++),
++ (74, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\075\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (76, 
++"\077\077\077\077\077\077\077\077\077\077\000\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\
++\\082\082\082\082\082\082\082\082\077\077\077\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\077\
++\\077\077\077\077\077\077\077\077\079\077\077\077\077\077\077\077\
++\\077"
++),
++ (77, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\078\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (79, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\078\000\000\000\000\000\000\000\000\
++\\080\080\080\080\080\080\080\080\080\080\000\000\000\000\000\000\
++\\000\080\080\080\080\080\080\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\080\080\080\080\080\080\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (80, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\081\000\000\000\000\000\000\000\000\
++\\080\080\080\080\080\080\080\080\080\080\000\000\000\000\000\000\
++\\000\080\080\080\080\080\080\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\080\080\080\080\080\080\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (82, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\086\000\000\000\000\000\000\000\000\
++\\083\083\083\083\083\083\083\083\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (83, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\085\000\000\000\000\000\000\000\000\
++\\084\084\084\084\084\084\084\084\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (84, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\085\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (87, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\089\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\088\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (90, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\091\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (93, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\094\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (95, 
++"\000\000\000\000\000\000\000\000\000\096\000\000\096\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\096\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (98, 
++"\099\099\099\099\099\099\099\099\099\099\100\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\099\
++\\099"
++),
++ (101, 
++"\000\000\000\000\000\000\000\000\000\102\000\000\102\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\102\000\000\099\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (104, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\105\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (109, 
++"\109\109\109\109\109\109\109\109\109\109\000\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\000\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\000\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\109\
++\\109"
++),
++ (110, 
++"\111\111\111\111\111\111\111\111\111\111\120\111\111\111\111\111\
++\\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\
++\\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\
++\\119\116\116\116\116\116\116\116\111\111\111\111\111\111\111\111\
++\\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\
++\\111\111\111\111\111\111\111\111\111\111\111\111\111\111\114\111\
++\\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\111\
++\\111\111\111\111\111\111\111\111\112\111\111\111\111\111\111\111\
++\\111"
++),
++ (112, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\113\113\113\113\113\113\113\113\113\113\000\000\000\000\000\000\
++\\000\113\113\113\113\113\113\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\113\113\113\113\113\113\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (114, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\
++\\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\115\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (116, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\117\117\117\117\117\117\117\117\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++ (117, 
++"\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\118\118\118\118\118\118\118\118\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\
++\\000"
++),
++(0, "")]
++fun f x = x 
++val s = map f (rev (tl (rev s))) 
++exception LexHackingError 
 +fun look ((j,x)::r, i) = if i = j then x else look(r, i) 
-   | look ([], i) = raise LexHackingError
- fun g {fin=x, trans=i} = {fin=x, trans=look(s,i)} 
- in Vector.fromList(map g 
-@@ -901,28 +902,29 @@
- 	exception LexerError (* raised if illegal leaf action tried *)
- end
- 
--fun makeLexer yyinput =
--let	val yygone0=1
++  | look ([], i) = raise LexHackingError
++fun g {fin=x, trans=i} = {fin=x, trans=look(s,i)} 
++in Vector.fromList(map g 
++[{fin = [], trans = 0},
++{fin = [(N 10)], trans = 1},
++{fin = [(N 10)], trans = 2},
++{fin = [(N 10)], trans = 3},
++{fin = [(N 10)], trans = 4},
++{fin = [(N 26)], trans = 5},
++{fin = [(N 26)], trans = 5},
++{fin = [(N 227)], trans = 0},
++{fin = [(N 96),(N 227)], trans = 0},
++{fin = [(N 65),(N 227)], trans = 0},
++{fin = [(N 100),(N 227)], trans = 10},
++{fin = [(N 157)], trans = 0},
++{fin = [(N 136)], trans = 0},
++{fin = [(N 63),(N 227)], trans = 0},
++{fin = [(N 225),(N 227)], trans = 14},
++{fin = [(N 225)], trans = 14},
++{fin = [(N 79),(N 227)], trans = 16},
++{fin = [(N 124)], trans = 0},
++{fin = [(N 61),(N 227)], trans = 0},
++{fin = [(N 59),(N 227)], trans = 0},
++{fin = [(N 98),(N 227)], trans = 0},
++{fin = [(N 151),(N 227)], trans = 21},
++{fin = [(N 166)], trans = 22},
++{fin = [(N 147)], trans = 0},
++{fin = [(N 110)], trans = 0},
++{fin = [(N 115),(N 227)], trans = 25},
++{fin = [(N 113)], trans = 0},
++{fin = [(N 149),(N 227)], trans = 27},
++{fin = [(N 107)], trans = 0},
++{fin = [(N 163)], trans = 29},
++{fin = [(N 143)], trans = 0},
++{fin = [(N 53),(N 227)], trans = 0},
++{fin = [(N 51),(N 227)], trans = 0},
++{fin = [(N 185),(N 199),(N 227)], trans = 33},
++{fin = [(N 185)], trans = 34},
++{fin = [(N 185)], trans = 0},
++{fin = [(N 185),(N 199)], trans = 34},
++{fin = [], trans = 37},
++{fin = [(N 199)], trans = 38},
++{fin = [(N 199)], trans = 0},
++{fin = [], trans = 40},
++{fin = [(N 185),(N 199)], trans = 33},
++{fin = [], trans = 42},
++{fin = [(N 199)], trans = 43},
++{fin = [(N 185),(N 199),(N 227)], trans = 44},
++{fin = [], trans = 45},
++{fin = [(N 179)], trans = 46},
++{fin = [(N 179)], trans = 47},
++{fin = [(N 179)], trans = 0},
++{fin = [(N 199)], trans = 49},
++{fin = [(N 172),(N 199)], trans = 50},
++{fin = [(N 172)], trans = 51},
++{fin = [(N 172)], trans = 0},
++{fin = [(N 172),(N 199)], trans = 51},
++{fin = [(N 94),(N 227)], trans = 54},
++{fin = [(N 133)], trans = 0},
++{fin = [(N 13)], trans = 0},
++{fin = [(N 67),(N 227)], trans = 57},
++{fin = [(N 199)], trans = 58},
++{fin = [], trans = 59},
++{fin = [(N 71)], trans = 0},
++{fin = [(N 83),(N 227)], trans = 61},
++{fin = [(N 92)], trans = 0},
++{fin = [(N 121)], trans = 0},
++{fin = [(N 89)], trans = 0},
++{fin = [(N 73),(N 227)], trans = 0},
++{fin = [(N 81),(N 227)], trans = 66},
++{fin = [(N 118)], trans = 0},
++{fin = [(N 86)], trans = 0},
++{fin = [(N 75),(N 227)], trans = 69},
++{fin = [(N 130)], trans = 0},
++{fin = [(N 57),(N 227)], trans = 0},
++{fin = [(N 55),(N 227)], trans = 0},
++{fin = [(N 227)], trans = 73},
++{fin = [], trans = 74},
++{fin = [(N 217)], trans = 0},
++{fin = [], trans = 76},
++{fin = [], trans = 77},
++{fin = [(N 222)], trans = 0},
++{fin = [], trans = 79},
++{fin = [], trans = 80},
++{fin = [(N 213)], trans = 0},
++{fin = [], trans = 82},
++{fin = [], trans = 83},
++{fin = [], trans = 84},
++{fin = [(N 206)], trans = 0},
++{fin = [(N 206),(N 222)], trans = 0},
++{fin = [(N 102),(N 227)], trans = 87},
++{fin = [(N 139)], trans = 0},
++{fin = [(N 160)], trans = 0},
++{fin = [(N 104),(N 227)], trans = 90},
++{fin = [(N 127)], trans = 0},
++{fin = [(N 20),(N 227)], trans = 0},
++{fin = [(N 77),(N 227)], trans = 93},
++{fin = [(N 154)], trans = 0},
++{fin = [(N 10),(N 227)], trans = 95},
++{fin = [(N 10)], trans = 95},
++{fin = [(N 7)], trans = 0},
++{fin = [(N 227)], trans = 98},
++{fin = [], trans = 98},
++{fin = [(N 5)], trans = 0},
++{fin = [(N 10),(N 227)], trans = 101},
++{fin = [(N 10)], trans = 101},
++{fin = [(N 18)], trans = 0},
++{fin = [(N 18)], trans = 104},
++{fin = [(N 16)], trans = 0},
++{fin = [(N 10),(N 18)], trans = 95},
++{fin = [(N 18)], trans = 98},
++{fin = [(N 10),(N 18)], trans = 101},
++{fin = [(N 26)], trans = 109},
++{fin = [], trans = 110},
++{fin = [(N 49)], trans = 0},
++{fin = [(N 49)], trans = 112},
++{fin = [(N 42)], trans = 112},
++{fin = [(N 49)], trans = 114},
++{fin = [(N 46)], trans = 0},
++{fin = [(N 49)], trans = 116},
++{fin = [], trans = 117},
++{fin = [(N 37)], trans = 0},
++{fin = [(N 32),(N 49)], trans = 116},
++{fin = [(N 29)], trans = 0},
++{fin = [(N 22)], trans = 0},
++{fin = [(N 24)], trans = 0}])
++end
++structure StartStates =
++	struct
++	datatype yystartstate = STARTSTATE of int
++
++(* start state definitions *)
++
++val C = STARTSTATE 3;
++val INITIAL = STARTSTATE 1;
++val S = STARTSTATE 5;
++
++end
++type result = UserDeclarations.lexresult
++	exception LexerError (* raised if illegal leaf action tried *)
++end
++
 +type int = Int.int
 +fun makeLexer (yyinput: int -> string) =
 +let	val yygone0:int= ~1
- 	val yyb = ref "\n" 		(* buffer *)
--	val yybl = ref 1		(*buffer length *)
--	val yybufpos = ref 1		(* location of next character to use *)
--	val yygone = ref yygone0	(* position in file of beginning of buffer *)
++	val yyb = ref "\n" 		(* buffer *)
 +	val yybl: int ref = ref 1		(*buffer length *)
 +	val yybufpos: int ref = ref 1		(* location of next character to use *)
 +	val yygone: int ref = ref yygone0	(* position in file of beginning of buffer *)
- 	val yydone = ref false		(* eof found yet? *)
--	val yybegin = ref 1		(*Current 'start state' for lexer *)
++	val yydone = ref false		(* eof found yet? *)
 +	val yybegin: int ref = ref 1		(*Current 'start state' for lexer *)
- 
- 	val YYBEGIN = fn (Internal.StartStates.STARTSTATE x) =>
- 		 yybegin := x
- 
- fun lex (yyarg as ({comLevel,errWarn,sourceMap,charlist,stringstart})) =
- let fun continue() : Internal.result = 
--  let fun scan (s,AcceptingLeaves : Internal.yyfinstate list list,l,i0) =
--	let fun action (i,nil) = raise LexError
++
++	val YYBEGIN = fn (Internal.StartStates.STARTSTATE x) =>
++		 yybegin := x
++
++fun lex (yyarg as ({comLevel,errWarn,sourceMap,charlist,stringstart})) =
++let fun continue() : Internal.result = 
 +  let fun scan (s,AcceptingLeaves : Internal.yyfinstate list list,l,i0: int) =
 +	let fun action (i: int,nil) = raise LexError
- 	| action (i,nil::l) = action (i-1,l)
- 	| action (i,(node::acts)::l) =
- 		case node of
- 		    Internal.N yyk => 
--			(let fun yymktext() = substring(!yyb,i0,i-i0)
--			     val yypos = i0+ !yygone
++	| action (i,nil::l) = action (i-1,l)
++	| action (i,(node::acts)::l) =
++		case node of
++		    Internal.N yyk => 
 +			(let fun yymktext() = String.substring(!yyb,i0,i-i0)
 +			     val yypos: int = i0+ !yygone
- 			open UserDeclarations Internal.StartStates
-  in (yybufpos := i; case yyk of 
- 
-@@ -1018,30 +1020,30 @@
- 
- 		) end )
- 
--	val {fin,trans} = Unsafe.Vector.sub(Internal.tab, s)
++			open UserDeclarations Internal.StartStates
++ in (yybufpos := i; case yyk of 
++
++			(* Application actions *)
++
++  10 => (continue())
++| 100 => (Tokens.BAR(yypos,yypos+1))
++| 102 => (Tokens.AMP(yypos,yypos+1))
++| 104 => (Tokens.PERCENT(yypos,yypos+1))
++| 107 => (Tokens.LTE(yypos,yypos+2))
++| 110 => (Tokens.GTE(yypos,yypos+2))
++| 113 => (Tokens.EQ(yypos,yypos+2))
++| 115 => (Tokens.EQUALS(yypos,yypos+1))
++| 118 => (Tokens.PLUSEQUALS(yypos,yypos+2))
++| 121 => (Tokens.MINUSEQUALS(yypos,yypos+2))
++| 124 => (Tokens.XOREQUALS(yypos,yypos+2))
++| 127 => (Tokens.MODEQUALS(yypos,yypos+2))
++| 13 => (YYBEGIN C; continue())
++| 130 => (Tokens.TIMESEQUALS(yypos,yypos+2))
++| 133 => (Tokens.DIVEQUALS(yypos,yypos+2))
++| 136 => (Tokens.OREQUALS(yypos,yypos+2))
++| 139 => (Tokens.ANDEQUALS(yypos,yypos+2))
++| 143 => (Tokens.LSHIFTEQUALS(yypos,yypos+3))
++| 147 => (Tokens.RSHIFTEQUALS(yypos,yypos+3))
++| 149 => (Tokens.LT(yypos,yypos+1))
++| 151 => (Tokens.GT(yypos,yypos+1))
++| 154 => (Tokens.NEQ(yypos,yypos+2))
++| 157 => (Tokens.OR(yypos,yypos+2))
++| 16 => (YYBEGIN INITIAL; continue())
++| 160 => (Tokens.AND(yypos,yypos+2))
++| 163 => (Tokens.LSHIFT(yypos,yypos+2))
++| 166 => (Tokens.RSHIFT(yypos,yypos+2))
++| 172 => let val yytext=yymktext() in Tokens.DECNUM(mkOctInt(yytext,yypos,yypos+size(yytext),errWarn),yypos, yypos+size(yytext)) end
++| 179 => let val yytext=yymktext() in Tokens.DECNUM(mkHexInt(yytext,yypos,yypos+size(yytext),errWarn),yypos, yypos+size(yytext)) end
++| 18 => (continue())
++| 185 => let val yytext=yymktext() in Tokens.DECNUM(mkInt (yytext,yypos,yypos+size(yytext),errWarn), yypos,yypos+size(yytext)) end
++| 199 => let val yytext=yymktext() in Tokens.REALNUM(mkRealNum(yytext,yypos,yypos+size(yytext),errWarn), yypos, yypos
+++ size(yytext)) end
++| 20 => (charlist := [""]; stringstart := yypos; YYBEGIN S; continue())
++| 206 => let val yytext=yymktext() in let val s = substring(yytext, 2, size(yytext)-3)
++				     in Tokens.CCONST(IntInf.fromInt (mkOctChar(s,yypos,yypos+size(yytext),errWarn)),
++						      yypos,
++					      yypos+size(yytext))
++	                             end end
++| 213 => let val yytext=yymktext() in let val s = substring(yytext, 3, size(yytext)-4)
++				     in Tokens.CCONST(IntInf.fromInt (mkHexChar(s,yypos,yypos+size(yytext),errWarn)),
++						      yypos,
++						      yypos+size(yytext))
++	                             end end
++| 217 => let val yytext=yymktext() in let val cval = ordof(yytext,1)
++	                            in Tokens.CCONST(Int.toLarge cval,yypos,yypos+size(yytext))
++                                    end end
++| 22 => (YYBEGIN INITIAL;Tokens.STRING(makeString charlist,!stringstart,yypos+1))
++| 222 => let val yytext=yymktext() in Tokens.CCONST(IntInf.fromInt(special_char(substring(yytext,1,size(yytext)-2),yypos,yypos+size(yytext),errWarn)), yypos, yypos+size(yytext)) end
++| 225 => let val yytext=yymktext() in TokTable.checkToken(yytext,yypos) end
++| 227 => (continue())
++| 24 => ((#err errWarn) (!stringstart,yypos,"unclosed string");
++		    SourceMap.newline sourceMap yypos;
++		    YYBEGIN INITIAL; Tokens.STRING(makeString charlist,!stringstart,yypos))
++| 26 => let val yytext=yymktext() in addString(charlist,yytext); continue() end
++| 29 => (SourceMap.newline sourceMap yypos; continue())
++| 32 => (addString(charlist,chr 0);continue())
++| 37 => let val yytext=yymktext() in addString(charlist, chr(mkOctChar(substring(yytext, 1, size(yytext)-1), yypos, yypos+size(yytext), errWarn))); continue() end
++| 42 => let val yytext=yymktext() in addString(charlist, chr(mkHexChar(substring(yytext, 2, size(yytext)-2), yypos, yypos+size(yytext), errWarn))); continue() end
++| 46 => let val yytext=yymktext() in addString(charlist,chr(ordof(yytext,2)-ord("@"))); continue() end
++| 49 => let val yytext=yymktext() in addString(charlist, chr(special_char(yytext, yypos, yypos+size(yytext), errWarn))); continue() end
++| 5 => let val yytext=yymktext() in SourceMap.parseDirective sourceMap 
++                         (yypos,yytext); continue() end
++| 51 => (Tokens.COLON(yypos,yypos+1))
++| 53 => (Tokens.SEMICOLON(yypos,yypos+1))
++| 55 => (Tokens.LPAREN(yypos,yypos+1))
++| 57 => (Tokens.RPAREN(yypos,yypos+1))
++| 59 => (Tokens.LBRACE(yypos,yypos+1))
++| 61 => (Tokens.RBRACE(yypos,yypos+1))
++| 63 => (Tokens.LCURLY(yypos,yypos+1))
++| 65 => (Tokens.RCURLY(yypos,yypos+1))
++| 67 => (Tokens.DOT(yypos,yypos+1))
++| 7 => (SourceMap.newline sourceMap yypos; continue())
++| 71 => (Tokens.ELIPSIS(yypos,yypos+3))
++| 73 => (Tokens.COMMA(yypos,yypos+1))
++| 75 => (Tokens.TIMES(yypos,yypos+1))
++| 77 => (Tokens.BANG(yypos,yypos+1))
++| 79 => (Tokens.HAT(yypos,yypos+1))
++| 81 => (Tokens.PLUS(yypos,yypos+1))
++| 83 => (Tokens.MINUS(yypos,yypos+1))
++| 86 => (Tokens.INC(yypos,yypos+2))
++| 89 => (Tokens.DEC(yypos,yypos+2))
++| 92 => (Tokens.ARROW(yypos,yypos+1))
++| 94 => (Tokens.DIVIDE(yypos,yypos+1))
++| 96 => (Tokens.TILDE(yypos,yypos+1))
++| 98 => (Tokens.QUESTION(yypos,yypos+1))
++| _ => raise Internal.LexerError
++
++		) end )
++
 +	val {fin,trans} = Vector.sub (Internal.tab, s)
- 	val NewAcceptingLeaves = fin::AcceptingLeaves
- 	in if l = !yybl then
- 	     if trans = #trans(Vector.sub(Internal.tab,0))
- 	       then action(l,NewAcceptingLeaves
- ) else	    let val newchars= if !yydone then "" else yyinput 1024
--	    in if (size newchars)=0
++	val NewAcceptingLeaves = fin::AcceptingLeaves
++	in if l = !yybl then
++	     if trans = #trans(Vector.sub(Internal.tab,0))
++	       then action(l,NewAcceptingLeaves
++) else	    let val newchars= if !yydone then "" else yyinput 1024
 +	    in if (String.size newchars)=0
- 		  then (yydone := true;
- 		        if (l=i0) then UserDeclarations.eof yyarg
- 		                  else action(l,NewAcceptingLeaves))
- 		  else (if i0=l then yyb := newchars
--		     else yyb := substring(!yyb,i0,l-i0)^newchars;
++		  then (yydone := true;
++		        if (l=i0) then UserDeclarations.eof yyarg
++		                  else action(l,NewAcceptingLeaves))
++		  else (if i0=l then yyb := newchars
 +		     else yyb := String.substring(!yyb,i0,l-i0)^newchars;
- 		     yygone := !yygone+i0;
--		     yybl := size (!yyb);
++		     yygone := !yygone+i0;
 +		     yybl := String.size (!yyb);
- 		     scan (s,AcceptingLeaves,l-i0,0))
- 	    end
--	  else let val NewChar = Char.ord(Unsafe.CharVector.sub(!yyb,l))
++		     scan (s,AcceptingLeaves,l-i0,0))
++	    end
 +	  else let val NewChar = Char.ord (CharVector.sub (!yyb,l))
- 		val NewChar = if NewChar<128 then NewChar else 128
--		val NewState = Char.ord(Unsafe.CharVector.sub(trans,NewChar))
++		val NewChar = if NewChar<128 then NewChar else 128
 +		val NewState = Char.ord (CharVector.sub (trans,NewChar))
- 		in if NewState=0 then action(l,NewAcceptingLeaves)
- 		else scan(NewState,NewAcceptingLeaves,l+1,i0)
- 	end
- 	end
--	val start= if substring(!yyb,!yybufpos-1,1)="\n"
++		in if NewState=0 then action(l,NewAcceptingLeaves)
++		else scan(NewState,NewAcceptingLeaves,l+1,i0)
++	end
++	end
 +	val start= if String.substring(!yyb,!yybufpos-1,1)="\n"
- then !yybegin+1 else !yybegin
- 	in scan(start,nil,!yybufpos,!yybufpos)
-     end
++then !yybegin+1 else !yybegin
++	in scan(start,nil,!yybufpos,!yybufpos)
++    end
++in continue end
++  in lex
++  end
++end
 diff -Naur ckit/src/parser/parse-tree-sig.sml ckit-mlton/src/parser/parse-tree-sig.sml
 --- ckit/src/parser/parse-tree-sig.sml	2000-04-05 14:35:01.000000000 -0400
-+++ ckit-mlton/src/parser/parse-tree-sig.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/parser/parse-tree-sig.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -27,8 +27,10 @@
      | ModAssign | XorAssign | OrAssign | AndAssign
      | LshiftAssign | RshiftAssign 
@@ -1543,7 +19964,7 @@
    and declarationExt = 
 diff -Naur ckit/src/parser/parse-tree.sml ckit-mlton/src/parser/parse-tree.sml
 --- ckit/src/parser/parse-tree.sml	2000-04-05 14:35:01.000000000 -0400
-+++ ckit-mlton/src/parser/parse-tree.sml	2005-08-17 19:41:36.000000000 -0400
++++ ckit-mlton/src/parser/parse-tree.sml	2006-05-02 22:38:21.000000000 -0400
 @@ -23,8 +23,10 @@
      | ModAssign | XorAssign | OrAssign | AndAssign
      | LshiftAssign | RshiftAssign 

Modified: mlton/trunk/lib/ckit-lib/ckit.tgz
===================================================================
(Binary files differ)

Modified: mlton/trunk/lib/mlrisc-lib/MLRISC.patch
===================================================================
--- mlton/trunk/lib/mlrisc-lib/MLRISC.patch	2006-05-03 02:58:44 UTC (rev 4438)
+++ mlton/trunk/lib/mlrisc-lib/MLRISC.patch	2006-05-03 03:03:50 UTC (rev 4439)
@@ -2179,7 +2179,7 @@
    val divu : {rs:CB.cell, rt:CB.cell, rd:CB.cell} -> I.instruction list
    val mulo : {rs:CB.cell, rt:CB.cell, rd:CB.cell} -> I.instruction list
 diff -Naur MLRISC/hppa/mltree/hppa.sml MLRISC-mlton/hppa/mltree/hppa.sml
---- MLRISC/hppa/mltree/hppa.sml	2004-11-20 09:01:41.000000000 -0500
+--- MLRISC/hppa/mltree/hppa.sml	2004-11-17 16:07:34.000000000 -0500
 +++ MLRISC-mlton/hppa/mltree/hppa.sml	2006-03-04 11:14:21.000000000 -0500
 @@ -14,14 +14,106 @@
  
@@ -2524,7 +2524,7 @@
           val clear  : 'a array -> unit 
 diff -Naur MLRISC/mlb/ALPHA.mlb MLRISC-mlton/mlb/ALPHA.mlb
 --- MLRISC/mlb/ALPHA.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/ALPHA.mlb	2006-03-30 21:16:50.000000000 -0500
++++ MLRISC-mlton/mlb/ALPHA.mlb	2006-05-02 23:01:12.000000000 -0400
 @@ -0,0 +1,476 @@
 +
 +ann
@@ -3004,7 +3004,7 @@
 +end
 diff -Naur MLRISC/mlb/Control.mlb MLRISC-mlton/mlb/Control.mlb
 --- MLRISC/mlb/Control.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/Control.mlb	2006-03-30 21:16:50.000000000 -0500
++++ MLRISC-mlton/mlb/Control.mlb	2006-05-02 23:01:12.000000000 -0400
 @@ -0,0 +1,104 @@
 +
 +ann
@@ -3112,7 +3112,7 @@
 +end
 diff -Naur MLRISC/mlb/Graphs.mlb MLRISC-mlton/mlb/Graphs.mlb
 --- MLRISC/mlb/Graphs.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/Graphs.mlb	2006-03-30 21:16:51.000000000 -0500
++++ MLRISC-mlton/mlb/Graphs.mlb	2006-05-02 23:01:12.000000000 -0400
 @@ -0,0 +1,708 @@
 +
 +ann
@@ -3824,7 +3824,7 @@
 +end
 diff -Naur MLRISC/mlb/HPPA.mlb MLRISC-mlton/mlb/HPPA.mlb
 --- MLRISC/mlb/HPPA.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/HPPA.mlb	2006-03-30 21:16:52.000000000 -0500
++++ MLRISC-mlton/mlb/HPPA.mlb	2006-05-02 23:01:13.000000000 -0400
 @@ -0,0 +1,494 @@
 +
 +ann
@@ -4322,7 +4322,7 @@
 +end
 diff -Naur MLRISC/mlb/IA32.mlb MLRISC-mlton/mlb/IA32.mlb
 --- MLRISC/mlb/IA32.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/IA32.mlb	2006-03-30 21:16:53.000000000 -0500
++++ MLRISC-mlton/mlb/IA32.mlb	2006-05-02 23:01:13.000000000 -0400
 @@ -0,0 +1,781 @@
 +
 +ann
@@ -5107,7 +5107,7 @@
 +end
 diff -Naur MLRISC/mlb/IA32-Peephole.mlb MLRISC-mlton/mlb/IA32-Peephole.mlb
 --- MLRISC/mlb/IA32-Peephole.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/IA32-Peephole.mlb	2006-03-30 21:16:53.000000000 -0500
++++ MLRISC-mlton/mlb/IA32-Peephole.mlb	2006-05-02 23:01:13.000000000 -0400
 @@ -0,0 +1,60 @@
 +
 +ann
@@ -5171,7 +5171,7 @@
 +end
 diff -Naur MLRISC/mlb/Lib.mlb MLRISC-mlton/mlb/Lib.mlb
 --- MLRISC/mlb/Lib.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/Lib.mlb	2006-03-30 21:16:54.000000000 -0500
++++ MLRISC-mlton/mlb/Lib.mlb	2006-05-02 23:01:14.000000000 -0400
 @@ -0,0 +1,267 @@
 +
 +ann
@@ -5442,7 +5442,7 @@
 +end
 diff -Naur MLRISC/mlb/MLRISC.mlb MLRISC-mlton/mlb/MLRISC.mlb
 --- MLRISC/mlb/MLRISC.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/MLRISC.mlb	2006-03-30 21:16:56.000000000 -0500
++++ MLRISC-mlton/mlb/MLRISC.mlb	2006-05-02 23:01:15.000000000 -0400
 @@ -0,0 +1,1705 @@
 +
 +ann
@@ -7151,7 +7151,7 @@
 +end
 diff -Naur MLRISC/mlb/MLTREE.mlb MLRISC-mlton/mlb/MLTREE.mlb
 --- MLRISC/mlb/MLTREE.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/MLTREE.mlb	2006-03-30 21:16:57.000000000 -0500
++++ MLRISC-mlton/mlb/MLTREE.mlb	2006-05-02 23:01:15.000000000 -0400
 @@ -0,0 +1,213 @@
 +
 +ann
@@ -7368,7 +7368,7 @@
 +end
 diff -Naur MLRISC/mlb/Peephole.mlb MLRISC-mlton/mlb/Peephole.mlb
 --- MLRISC/mlb/Peephole.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/Peephole.mlb	2006-03-30 21:16:57.000000000 -0500
++++ MLRISC-mlton/mlb/Peephole.mlb	2006-05-02 23:01:15.000000000 -0400
 @@ -0,0 +1,61 @@
 +
 +ann
@@ -7433,7 +7433,7 @@
 +end
 diff -Naur MLRISC/mlb/PPC.mlb MLRISC-mlton/mlb/PPC.mlb
 --- MLRISC/mlb/PPC.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/PPC.mlb	2006-03-30 21:16:57.000000000 -0500
++++ MLRISC-mlton/mlb/PPC.mlb	2006-05-02 23:01:15.000000000 -0400
 @@ -0,0 +1,575 @@
 +
 +ann
@@ -8012,7 +8012,7 @@
 +end
 diff -Naur MLRISC/mlb/RA.mlb MLRISC-mlton/mlb/RA.mlb
 --- MLRISC/mlb/RA.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/RA.mlb	2006-03-30 21:16:58.000000000 -0500
++++ MLRISC-mlton/mlb/RA.mlb	2006-05-02 23:01:16.000000000 -0400
 @@ -0,0 +1,152 @@
 +
 +ann
@@ -8168,7 +8168,7 @@
 +end
 diff -Naur MLRISC/mlb/SPARC.mlb MLRISC-mlton/mlb/SPARC.mlb
 --- MLRISC/mlb/SPARC.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/SPARC.mlb	2006-03-30 21:16:58.000000000 -0500
++++ MLRISC-mlton/mlb/SPARC.mlb	2006-05-02 23:01:16.000000000 -0400
 @@ -0,0 +1,540 @@
 +
 +ann
@@ -8712,7 +8712,7 @@
 +end
 diff -Naur MLRISC/mlb/Visual.mlb MLRISC-mlton/mlb/Visual.mlb
 --- MLRISC/mlb/Visual.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlb/Visual.mlb	2006-03-30 21:16:59.000000000 -0500
++++ MLRISC-mlton/mlb/Visual.mlb	2006-05-02 23:01:16.000000000 -0400
 @@ -0,0 +1,252 @@
 +
 +ann
@@ -8968,7 +8968,7 @@
 +end
 diff -Naur MLRISC/mlrisc-lib.mlb MLRISC-mlton/mlrisc-lib.mlb
 --- MLRISC/mlrisc-lib.mlb	1969-12-31 19:00:00.000000000 -0500
-+++ MLRISC-mlton/mlrisc-lib.mlb	2006-03-30 21:16:59.000000000 -0500
++++ MLRISC-mlton/mlrisc-lib.mlb	2006-05-02 23:01:16.000000000 -0400
 @@ -0,0 +1,17 @@
 +(* DO NOT USE.  Only suitable for type-checking purposes. *)
 +local
@@ -9435,7 +9435,7 @@
         and fext   = (stm, rexp, fexp, ccexp) Extension.fx
         and ccext  = (stm, rexp, fexp, ccexp) Extension.ccx
 diff -Naur MLRISC/mltree/mltree-utils.sml MLRISC-mlton/mltree/mltree-utils.sml
---- MLRISC/mltree/mltree-utils.sml	2004-11-20 09:01:42.000000000 -0500
+--- MLRISC/mltree/mltree-utils.sml	2004-10-30 12:02:13.000000000 -0400
 +++ MLRISC-mlton/mltree/mltree-utils.sml	2006-03-04 11:14:21.000000000 -0500
 @@ -518,9 +518,10 @@
  
@@ -9608,7 +9608,7 @@
  	 | I.ROTATEI{sh, ...} => error "sdiSize:ROTATE"
  	 | I.COMPARE{cmp, rb, ...} => 
 diff -Naur MLRISC/ppc/c-calls/ppc-macosx.sml MLRISC-mlton/ppc/c-calls/ppc-macosx.sml
---- MLRISC/ppc/c-calls/ppc-macosx.sml	2005-02-11 12:30:17.000000000 -0500
+--- MLRISC/ppc/c-calls/ppc-macosx.sml	2005-02-10 18:53:53.000000000 -0500
 +++ MLRISC-mlton/ppc/c-calls/ppc-macosx.sml	2006-03-04 11:14:21.000000000 -0500
 @@ -277,7 +277,9 @@
  		      assignFPR (tys, offset, availGPRs, availFPRs, layout)
@@ -10078,7 +10078,7 @@
  struct
    structure I = PPCInstr
 diff -Naur MLRISC/ppc/mltree/ppc.sml MLRISC-mlton/ppc/mltree/ppc.sml
---- MLRISC/ppc/mltree/ppc.sml	2004-12-16 20:26:53.000000000 -0500
+--- MLRISC/ppc/mltree/ppc.sml	2004-12-13 15:09:39.000000000 -0500
 +++ MLRISC-mlton/ppc/mltree/ppc.sml	2006-03-04 11:14:21.000000000 -0500
 @@ -10,10 +10,76 @@
  
@@ -12196,6 +12196,39284 @@
                    | _ => (cond,a,b)
            in  if V9 then
                   branchV9(cond,a,b,lab,an)
+diff -Naur MLRISC/Tools/Parser/mdl.grm.desc MLRISC-mlton/Tools/Parser/mdl.grm.desc
+--- MLRISC/Tools/Parser/mdl.grm.desc	1969-12-31 19:00:00.000000000 -0500
++++ MLRISC-mlton/Tools/Parser/mdl.grm.desc	2004-10-26 12:11:55.000000000 -0400
+@@ -0,0 +1,28165 @@
++31 shift/reduce conflicts
++5 rules not reduced
++
++warning: rule <mldecls : > will never be reduced
++warning: rule <mldecls : mldecl mldecls > will never be reduced
++warning: rule <scopedmldecls : newScope mldecls oldScope > will never be reduced
++warning: rule <branching : BRANCHING FORWARDS > will never be reduced
++warning: rule <branching : BRANCHING BACKWARDS > will never be reduced
++error:  state 126: shift/reduce conflict (shift SYMBOL, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift ID, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift CELLSET, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift NOT, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift DEREF, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift TIMES, reduce by rule 311)
++error:  state 262: shift/reduce conflict (shift SYMBOL, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift ID, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift INSTRUCTION, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift CELLSET, reduce by rule 373)
++error:  state 282: shift/reduce conflict (shift INT, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift WORD, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift SYMBOL, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift ID, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift CELLSET, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift LPAREN, reduce by rule 274)
++error:  state 412: shift/reduce conflict (shift BAR, reduce by rule 341)
++error:  state 428: shift/reduce conflict (shift RPAREN, reduce by rule 417)
++error:  state 493: shift/reduce conflict (shift SYMBOL, reduce by rule 379)
++error:  state 493: shift/reduce conflict (shift ID, reduce by rule 379)
++error:  state 493: shift/reduce conflict (shift INSTRUCTION, reduce by rule 379)
++error:  state 493: shift/reduce conflict (shift CELLSET, reduce by rule 379)
++error:  state 516: shift/reduce conflict (shift LDQUOTE, reduce by rule 186)
++error:  state 653: shift/reduce conflict (shift CONCAT, reduce by rule 50)
++error:  state 653: shift/reduce conflict (shift TIMES, reduce by rule 50)
++error:  state 661: shift/reduce conflict (shift AND, reduce by rule 165)
++error:  state 690: shift/reduce conflict (shift AND, reduce by rule 165)
++error:  state 704: shift/reduce conflict (shift AND, reduce by rule 165)
++error:  state 705: shift/reduce conflict (shift AND, reduce by rule 165)
++error:  state 712: shift/reduce conflict (shift LATENCY, reduce by rule 146)
++error:  state 725: shift/reduce conflict (shift PIPELINE, reduce by rule 148)
++
++state 0:
++
++	architecture : . decls 
++
++	ARCHITECTURE	shift 39
++	LOCAL	shift 38
++	DATATYPE	shift 37
++	TYPE	shift 36
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++	EOF	reduce by rule 1
++
++	architecture	goto 756
++	decls	goto 7
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 1:
++
++	mymddecl : assemblycase . ASSEMBLY 
++
++	ASSEMBLY	shift 40
++
++
++	.	error
++
++
++state 2:
++
++	mddecl : mymddecl .  (reduce by rule 11)
++
++	ARCHITECTURE	reduce by rule 11
++	END	reduce by rule 11
++	LOCAL	reduce by rule 11
++	IN	reduce by rule 11
++	DATATYPE	reduce by rule 11
++	TYPE	reduce by rule 11
++	RPAREN	reduce by rule 11
++	SEMICOLON	reduce by rule 11
++	STORAGE	reduce by rule 11
++	LOCATIONS	reduce by rule 11
++	STRUCTURE	reduce by rule 11
++	FUNCTOR	reduce by rule 11
++	SIGNATURE	reduce by rule 11
++	SHARING	reduce by rule 11
++	INSTRUCTION	reduce by rule 11
++	VLIW	reduce by rule 11
++	SUPERSCALAR	reduce by rule 11
++	FUN	reduce by rule 11
++	VAL	reduce by rule 11
++	INCLUDE	reduce by rule 11
++	OPEN	reduce by rule 11
++	LITTLE	reduce by rule 11
++	BIG	reduce by rule 11
++	PIPELINE	reduce by rule 11
++	LOWERCASE	reduce by rule 11
++	UPPERCASE	reduce by rule 11
++	VERBATIM	reduce by rule 11
++	RTL	reduce by rule 11
++	NONFIX	reduce by rule 11
++	INFIX	reduce by rule 11
++	INFIXR	reduce by rule 11
++	DEBUG	reduce by rule 11
++	RESOURCE	reduce by rule 11
++	CPU	reduce by rule 11
++	LATENCY	reduce by rule 11
++	EXCEPTION	reduce by rule 11
++	EOF	reduce by rule 11
++
++
++	.	error
++
++
++state 3:
++
++	decl : mddecl . optsemi 
++
++	ARCHITECTURE	reduce by rule 5
++	END	reduce by rule 5
++	LOCAL	reduce by rule 5
++	IN	reduce by rule 5
++	DATATYPE	reduce by rule 5
++	TYPE	reduce by rule 5
++	RPAREN	reduce by rule 5
++	SEMICOLON	shift 42
++	STORAGE	reduce by rule 5
++	LOCATIONS	reduce by rule 5
++	STRUCTURE	reduce by rule 5
++	FUNCTOR	reduce by rule 5
++	SIGNATURE	reduce by rule 5
++	SHARING	reduce by rule 5
++	INSTRUCTION	reduce by rule 5
++	VLIW	reduce by rule 5
++	SUPERSCALAR	reduce by rule 5
++	FUN	reduce by rule 5
++	VAL	reduce by rule 5
++	INCLUDE	reduce by rule 5
++	OPEN	reduce by rule 5
++	LITTLE	reduce by rule 5
++	BIG	reduce by rule 5
++	PIPELINE	reduce by rule 5
++	LOWERCASE	reduce by rule 5
++	UPPERCASE	reduce by rule 5
++	VERBATIM	reduce by rule 5
++	RTL	reduce by rule 5
++	NONFIX	reduce by rule 5
++	INFIX	reduce by rule 5
++	INFIXR	reduce by rule 5
++	DEBUG	reduce by rule 5
++	RESOURCE	reduce by rule 5
++	CPU	reduce by rule 5
++	LATENCY	reduce by rule 5
++	EXCEPTION	reduce by rule 5
++	EOF	reduce by rule 5
++
++	optsemi	goto 41
++
++	.	error
++
++
++state 4:
++
++	mldecl : mymldecl .  (reduce by rule 10)
++
++	ARCHITECTURE	reduce by rule 10
++	END	reduce by rule 10
++	LOCAL	reduce by rule 10
++	IN	reduce by rule 10
++	DATATYPE	reduce by rule 10
++	TYPE	reduce by rule 10
++	RPAREN	reduce by rule 10
++	SEMICOLON	reduce by rule 10
++	STORAGE	reduce by rule 10
++	LOCATIONS	reduce by rule 10
++	STRUCTURE	reduce by rule 10
++	FUNCTOR	reduce by rule 10
++	SIGNATURE	reduce by rule 10
++	SHARING	reduce by rule 10
++	INSTRUCTION	reduce by rule 10
++	VLIW	reduce by rule 10
++	SUPERSCALAR	reduce by rule 10
++	FUN	reduce by rule 10
++	VAL	reduce by rule 10
++	INCLUDE	reduce by rule 10
++	OPEN	reduce by rule 10
++	LITTLE	reduce by rule 10
++	BIG	reduce by rule 10
++	PIPELINE	reduce by rule 10
++	LOWERCASE	reduce by rule 10
++	UPPERCASE	reduce by rule 10
++	VERBATIM	reduce by rule 10
++	RTL	reduce by rule 10
++	NONFIX	reduce by rule 10
++	INFIX	reduce by rule 10
++	INFIXR	reduce by rule 10
++	DEBUG	reduce by rule 10
++	RESOURCE	reduce by rule 10
++	CPU	reduce by rule 10
++	LATENCY	reduce by rule 10
++	EXCEPTION	reduce by rule 10
++	EOF	reduce by rule 10
++
++
++	.	error
++
++
++state 5:
++
++	decl : mldecl . optsemi 
++
++	ARCHITECTURE	reduce by rule 5
++	END	reduce by rule 5
++	LOCAL	reduce by rule 5
++	IN	reduce by rule 5
++	DATATYPE	reduce by rule 5
++	TYPE	reduce by rule 5
++	RPAREN	reduce by rule 5
++	SEMICOLON	shift 42
++	STORAGE	reduce by rule 5
++	LOCATIONS	reduce by rule 5
++	STRUCTURE	reduce by rule 5
++	FUNCTOR	reduce by rule 5
++	SIGNATURE	reduce by rule 5
++	SHARING	reduce by rule 5
++	INSTRUCTION	reduce by rule 5
++	VLIW	reduce by rule 5
++	SUPERSCALAR	reduce by rule 5
++	FUN	reduce by rule 5
++	VAL	reduce by rule 5
++	INCLUDE	reduce by rule 5
++	OPEN	reduce by rule 5
++	LITTLE	reduce by rule 5
++	BIG	reduce by rule 5
++	PIPELINE	reduce by rule 5
++	LOWERCASE	reduce by rule 5
++	UPPERCASE	reduce by rule 5
++	VERBATIM	reduce by rule 5
++	RTL	reduce by rule 5
++	NONFIX	reduce by rule 5
++	INFIX	reduce by rule 5
++	INFIXR	reduce by rule 5
++	DEBUG	reduce by rule 5
++	RESOURCE	reduce by rule 5
++	CPU	reduce by rule 5
++	LATENCY	reduce by rule 5
++	EXCEPTION	reduce by rule 5
++	EOF	reduce by rule 5
++
++	optsemi	goto 43
++
++	.	error
++
++
++state 6:
++
++	decls : decl . decls 
++
++	ARCHITECTURE	shift 39
++	END	reduce by rule 1
++	LOCAL	shift 38
++	IN	reduce by rule 1
++	DATATYPE	shift 37
++	TYPE	shift 36
++	RPAREN	reduce by rule 1
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++	EOF	reduce by rule 1
++
++	decls	goto 44
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 7:
++
++	architecture : decls .  (reduce by rule 0)
++
++	EOF	reduce by rule 0
++
++
++	.	error
++
++
++state 8:
++
++	mymldecl : EXCEPTION . exceptionbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 47
++	exceptionbind	goto 46
++	exceptionbinds	goto 45
++
++	.	error
++
++
++state 9:
++
++	mymddecl : LATENCY . latencybinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 55
++	latencybinds	goto 54
++	latencybind	goto 53
++	latencyclauses	goto 52
++	latencyclause	goto 51
++
++	.	error
++
++
++state 10:
++
++	mymddecl : CPU . cpubinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 58
++	cpubinds	goto 57
++	cpubind	goto 56
++
++	.	error
++
++
++state 11:
++
++	mymddecl : RESOURCE . resourcebinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 60
++	resourcebinds	goto 59
++
++	.	error
++
++
++state 12:
++
++	mymddecl : DEBUG . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 61
++
++	.	error
++
++
++state 13:
++
++	mymldecl : INFIXR . intopt syms 
++
++	TIMES	reduce by rule 397
++	DEREF	reduce by rule 397
++	NOT	reduce by rule 397
++	CELLSET	reduce by rule 397
++	ID	reduce by rule 397
++	SYMBOL	reduce by rule 397
++	INT	shift 64
++
++	int	goto 63
++	intopt	goto 62
++
++	.	error
++
++
++state 14:
++
++	mymldecl : INFIX . intopt syms 
++
++	TIMES	reduce by rule 397
++	DEREF	reduce by rule 397
++	NOT	reduce by rule 397
++	CELLSET	reduce by rule 397
++	ID	reduce by rule 397
++	SYMBOL	reduce by rule 397
++	INT	shift 64
++
++	int	goto 63
++	intopt	goto 65
++
++	.	error
++
++
++state 15:
++
++	mymldecl : NONFIX . syms 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 66
++
++	.	error
++
++
++state 16:
++
++	mymldecl : RTL . id LBRACE labpats0 RBRACE EQ exp 
++	mymldecl : RTL . asapat EQ exp 
++	mymldecl : RTL . syms COLON ty 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 89
++	sym	goto 88
++	symb	goto 67
++	ident2	goto 87
++	syms	goto 86
++	path	goto 85
++	apat	goto 84
++	asapat	goto 83
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 17:
++
++	assemblycase : VERBATIM .  (reduce by rule 115)
++
++	ASSEMBLY	reduce by rule 115
++
++
++	.	error
++
++
++state 18:
++
++	assemblycase : UPPERCASE .  (reduce by rule 114)
++
++	ASSEMBLY	reduce by rule 114
++
++
++	.	error
++
++
++state 19:
++
++	assemblycase : LOWERCASE .  (reduce by rule 113)
++
++	ASSEMBLY	reduce by rule 113
++
++
++	.	error
++
++
++state 20:
++
++	mymddecl : PIPELINE . pipelinebinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 108
++	pipelinebinds	goto 107
++	pipelinebind	goto 106
++	pipelineclauses	goto 105
++	pipelineclause	goto 104
++
++	.	error
++
++
++state 21:
++
++	mymddecl : BIG . ENDIAN 
++
++	ENDIAN	shift 109
++
++
++	.	error
++
++
++state 22:
++
++	mymddecl : LITTLE . ENDIAN 
++
++	ENDIAN	shift 110
++
++
++	.	error
++
++
++state 23:
++
++	mymldecl : OPEN . idents 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 113
++	ident2	goto 112
++	idents	goto 111
++	path	goto 85
++
++	.	error
++
++
++state 24:
++
++	decl : INCLUDE . string optsemi 
++	mymldecl : INCLUDE . sigexp 
++
++	CELLSET	shift 50
++	SIG	shift 118
++	ID	shift 49
++	SYMBOL	shift 48
++	STRING	shift 91
++
++	id	goto 114
++	ident	goto 117
++	ident2	goto 112
++	path	goto 85
++	string	goto 116
++	sigexp	goto 115
++
++	.	error
++
++
++state 25:
++
++	mymldecl : VAL . valbinds 
++	mymldecl : VAL . syms COLON ty 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 126
++	symb	goto 67
++	ident2	goto 87
++	syms	goto 125
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 121
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	valbind	goto 120
++	valbinds	goto 119
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 26:
++
++	mymldecl : FUN . funbinds 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 133
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	funclause	goto 132
++	funclauses	goto 131
++	funbind	goto 130
++	funbinds	goto 129
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 27:
++
++	mymddecl : SUPERSCALAR .  (reduce by rule 16)
++
++	ARCHITECTURE	reduce by rule 16
++	END	reduce by rule 16
++	LOCAL	reduce by rule 16
++	IN	reduce by rule 16
++	DATATYPE	reduce by rule 16
++	TYPE	reduce by rule 16
++	RPAREN	reduce by rule 16
++	SEMICOLON	reduce by rule 16
++	STORAGE	reduce by rule 16
++	LOCATIONS	reduce by rule 16
++	STRUCTURE	reduce by rule 16
++	FUNCTOR	reduce by rule 16
++	SIGNATURE	reduce by rule 16
++	SHARING	reduce by rule 16
++	INSTRUCTION	reduce by rule 16
++	VLIW	reduce by rule 16
++	SUPERSCALAR	reduce by rule 16
++	FUN	reduce by rule 16
++	VAL	reduce by rule 16
++	INCLUDE	reduce by rule 16
++	OPEN	reduce by rule 16
++	LITTLE	reduce by rule 16
++	BIG	reduce by rule 16
++	PIPELINE	reduce by rule 16
++	LOWERCASE	reduce by rule 16
++	UPPERCASE	reduce by rule 16
++	VERBATIM	reduce by rule 16
++	RTL	reduce by rule 16
++	NONFIX	reduce by rule 16
++	INFIX	reduce by rule 16
++	INFIXR	reduce by rule 16
++	DEBUG	reduce by rule 16
++	RESOURCE	reduce by rule 16
++	CPU	reduce by rule 16
++	LATENCY	reduce by rule 16
++	EXCEPTION	reduce by rule 16
++	EOF	reduce by rule 16
++
++
++	.	error
++
++
++state 28:
++
++	mymddecl : VLIW .  (reduce by rule 15)
++
++	ARCHITECTURE	reduce by rule 15
++	END	reduce by rule 15
++	LOCAL	reduce by rule 15
++	IN	reduce by rule 15
++	DATATYPE	reduce by rule 15
++	TYPE	reduce by rule 15
++	RPAREN	reduce by rule 15
++	SEMICOLON	reduce by rule 15
++	STORAGE	reduce by rule 15
++	LOCATIONS	reduce by rule 15
++	STRUCTURE	reduce by rule 15
++	FUNCTOR	reduce by rule 15
++	SIGNATURE	reduce by rule 15
++	SHARING	reduce by rule 15
++	INSTRUCTION	reduce by rule 15
++	VLIW	reduce by rule 15
++	SUPERSCALAR	reduce by rule 15
++	FUN	reduce by rule 15
++	VAL	reduce by rule 15
++	INCLUDE	reduce by rule 15
++	OPEN	reduce by rule 15
++	LITTLE	reduce by rule 15
++	BIG	reduce by rule 15
++	PIPELINE	reduce by rule 15
++	LOWERCASE	reduce by rule 15
++	UPPERCASE	reduce by rule 15
++	VERBATIM	reduce by rule 15
++	RTL	reduce by rule 15
++	NONFIX	reduce by rule 15
++	INFIX	reduce by rule 15
++	INFIXR	reduce by rule 15
++	DEBUG	reduce by rule 15
++	RESOURCE	reduce by rule 15
++	CPU	reduce by rule 15
++	LATENCY	reduce by rule 15
++	EXCEPTION	reduce by rule 15
++	EOF	reduce by rule 15
++
++
++	.	error
++
++
++state 29:
++
++	mymddecl : INSTRUCTION . FORMATS int BITS formatbinds 
++	mymddecl : INSTRUCTION . FORMATS formatbinds 
++	mymddecl : INSTRUCTION . consbinds 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	FORMATS	shift 139
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 138
++	symb	goto 67
++	consbinds	goto 137
++	consbind	goto 136
++
++	.	error
++
++
++state 30:
++
++	mymldecl : SHARING . sharingdecls 
++
++	TYPE	shift 144
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 143
++	ident2	goto 112
++	path	goto 85
++	sharingdecl	goto 142
++	sharingdecls	goto 141
++	sharelist	goto 140
++
++	.	error
++
++
++state 31:
++
++	mymldecl : SIGNATURE . id EQ sigexp 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 145
++
++	.	error
++
++
++state 32:
++
++	mymldecl : FUNCTOR . id LPAREN functorarg RPAREN EQ structexp 
++	mymldecl : FUNCTOR . id LPAREN functorarg RPAREN sigcon EQ structexp 
++	mymldecl : FUNCTOR . id EQ structexp 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 146
++
++	.	error
++
++
++state 33:
++
++	mymldecl : STRUCTURE . id EQ structexp 
++	mymldecl : STRUCTURE . id sigcon EQ structexp 
++	mymldecl : STRUCTURE . id COLON sigexp 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 147
++
++	.	error
++
++
++state 34:
++
++	mymddecl : LOCATIONS . locbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 150
++	locbind	goto 149
++	locbinds	goto 148
++
++	.	error
++
++
++state 35:
++
++	mymddecl : STORAGE . storagedecls 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 153
++	storagedecl	goto 152
++	storagedecls	goto 151
++
++	.	error
++
++
++state 36:
++
++	mymldecl : TYPE . typebinds 
++	mymldecl : TYPE . tyvarseq tid 
++
++	LPAREN	shift 160
++	CELLSET	reduce by rule 199
++	HASH	shift 159
++	BITS	reduce by rule 199
++	INSTRUCTION	reduce by rule 199
++	CELL	reduce by rule 199
++	ID	reduce by rule 199
++	SYMBOL	reduce by rule 199
++	TYVAR	shift 158
++
++	typebinds	goto 157
++	typebind	goto 156
++	tyvar	goto 155
++	tyvarseq	goto 154
++
++	.	error
++
++
++state 37:
++
++	mymldecl : DATATYPE . datatypebinds withtypeclause 
++
++	LPAREN	shift 160
++	CELLSET	reduce by rule 199
++	HASH	shift 159
++	ID	reduce by rule 199
++	SYMBOL	reduce by rule 199
++	TYVAR	shift 158
++
++	datatypebinds	goto 163
++	datatypebind	goto 162
++	tyvar	goto 155
++	tyvarseq	goto 161
++
++	.	error
++
++
++state 38:
++
++	mymldecl : LOCAL . scopeddecls IN scopeddecls END 
++
++	ARCHITECTURE	reduce by rule 107
++	LOCAL	reduce by rule 107
++	IN	reduce by rule 107
++	DATATYPE	reduce by rule 107
++	TYPE	reduce by rule 107
++	STORAGE	reduce by rule 107
++	LOCATIONS	reduce by rule 107
++	STRUCTURE	reduce by rule 107
++	FUNCTOR	reduce by rule 107
++	SIGNATURE	reduce by rule 107
++	SHARING	reduce by rule 107
++	INSTRUCTION	reduce by rule 107
++	VLIW	reduce by rule 107
++	SUPERSCALAR	reduce by rule 107
++	FUN	reduce by rule 107
++	VAL	reduce by rule 107
++	INCLUDE	reduce by rule 107
++	OPEN	reduce by rule 107
++	LITTLE	reduce by rule 107
++	BIG	reduce by rule 107
++	PIPELINE	reduce by rule 107
++	LOWERCASE	reduce by rule 107
++	UPPERCASE	reduce by rule 107
++	VERBATIM	reduce by rule 107
++	RTL	reduce by rule 107
++	NONFIX	reduce by rule 107
++	INFIX	reduce by rule 107
++	INFIXR	reduce by rule 107
++	DEBUG	reduce by rule 107
++	RESOURCE	reduce by rule 107
++	CPU	reduce by rule 107
++	LATENCY	reduce by rule 107
++	EXCEPTION	reduce by rule 107
++
++	scopeddecls	goto 165
++	newScope	goto 164
++
++	.	error
++
++
++state 39:
++
++	mymddecl : ARCHITECTURE . id EQ STRUCT decls END 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 166
++
++	.	error
++
++
++state 40:
++
++	mymddecl : assemblycase ASSEMBLY .  (reduce by rule 17)
++
++	ARCHITECTURE	reduce by rule 17
++	END	reduce by rule 17
++	LOCAL	reduce by rule 17
++	IN	reduce by rule 17
++	DATATYPE	reduce by rule 17
++	TYPE	reduce by rule 17
++	RPAREN	reduce by rule 17
++	SEMICOLON	reduce by rule 17
++	STORAGE	reduce by rule 17
++	LOCATIONS	reduce by rule 17
++	STRUCTURE	reduce by rule 17
++	FUNCTOR	reduce by rule 17
++	SIGNATURE	reduce by rule 17
++	SHARING	reduce by rule 17
++	INSTRUCTION	reduce by rule 17
++	VLIW	reduce by rule 17
++	SUPERSCALAR	reduce by rule 17
++	FUN	reduce by rule 17
++	VAL	reduce by rule 17
++	INCLUDE	reduce by rule 17
++	OPEN	reduce by rule 17
++	LITTLE	reduce by rule 17
++	BIG	reduce by rule 17
++	PIPELINE	reduce by rule 17
++	LOWERCASE	reduce by rule 17
++	UPPERCASE	reduce by rule 17
++	VERBATIM	reduce by rule 17
++	RTL	reduce by rule 17
++	NONFIX	reduce by rule 17
++	INFIX	reduce by rule 17
++	INFIXR	reduce by rule 17
++	DEBUG	reduce by rule 17
++	RESOURCE	reduce by rule 17
++	CPU	reduce by rule 17
++	LATENCY	reduce by rule 17
++	EXCEPTION	reduce by rule 17
++	EOF	reduce by rule 17
++
++
++	.	error
++
++
++state 41:
++
++	decl : mddecl optsemi .  (reduce by rule 8)
++
++	ARCHITECTURE	reduce by rule 8
++	END	reduce by rule 8
++	LOCAL	reduce by rule 8
++	IN	reduce by rule 8
++	DATATYPE	reduce by rule 8
++	TYPE	reduce by rule 8
++	RPAREN	reduce by rule 8
++	STORAGE	reduce by rule 8
++	LOCATIONS	reduce by rule 8
++	STRUCTURE	reduce by rule 8
++	FUNCTOR	reduce by rule 8
++	SIGNATURE	reduce by rule 8
++	SHARING	reduce by rule 8
++	INSTRUCTION	reduce by rule 8
++	VLIW	reduce by rule 8
++	SUPERSCALAR	reduce by rule 8
++	FUN	reduce by rule 8
++	VAL	reduce by rule 8
++	INCLUDE	reduce by rule 8
++	OPEN	reduce by rule 8
++	LITTLE	reduce by rule 8
++	BIG	reduce by rule 8
++	PIPELINE	reduce by rule 8
++	LOWERCASE	reduce by rule 8
++	UPPERCASE	reduce by rule 8
++	VERBATIM	reduce by rule 8
++	RTL	reduce by rule 8
++	NONFIX	reduce by rule 8
++	INFIX	reduce by rule 8
++	INFIXR	reduce by rule 8
++	DEBUG	reduce by rule 8
++	RESOURCE	reduce by rule 8
++	CPU	reduce by rule 8
++	LATENCY	reduce by rule 8
++	EXCEPTION	reduce by rule 8
++	EOF	reduce by rule 8
++
++
++	.	error
++
++
++state 42:
++
++	optsemi : SEMICOLON . optsemi 
++
++	ARCHITECTURE	reduce by rule 5
++	END	reduce by rule 5
++	LOCAL	reduce by rule 5
++	IN	reduce by rule 5
++	DATATYPE	reduce by rule 5
++	TYPE	reduce by rule 5
++	RPAREN	reduce by rule 5
++	SEMICOLON	shift 42
++	STORAGE	reduce by rule 5
++	LOCATIONS	reduce by rule 5
++	STRUCTURE	reduce by rule 5
++	FUNCTOR	reduce by rule 5
++	SIGNATURE	reduce by rule 5
++	SHARING	reduce by rule 5
++	INSTRUCTION	reduce by rule 5
++	VLIW	reduce by rule 5
++	SUPERSCALAR	reduce by rule 5
++	FUN	reduce by rule 5
++	VAL	reduce by rule 5
++	INCLUDE	reduce by rule 5
++	OPEN	reduce by rule 5
++	LITTLE	reduce by rule 5
++	BIG	reduce by rule 5
++	PIPELINE	reduce by rule 5
++	LOWERCASE	reduce by rule 5
++	UPPERCASE	reduce by rule 5
++	VERBATIM	reduce by rule 5
++	RTL	reduce by rule 5
++	NONFIX	reduce by rule 5
++	INFIX	reduce by rule 5
++	INFIXR	reduce by rule 5
++	DEBUG	reduce by rule 5
++	RESOURCE	reduce by rule 5
++	CPU	reduce by rule 5
++	LATENCY	reduce by rule 5
++	EXCEPTION	reduce by rule 5
++	EOF	reduce by rule 5
++
++	optsemi	goto 167
++
++	.	error
++
++
++state 43:
++
++	decl : mldecl optsemi .  (reduce by rule 7)
++
++	ARCHITECTURE	reduce by rule 7
++	END	reduce by rule 7
++	LOCAL	reduce by rule 7
++	IN	reduce by rule 7
++	DATATYPE	reduce by rule 7
++	TYPE	reduce by rule 7
++	RPAREN	reduce by rule 7
++	STORAGE	reduce by rule 7
++	LOCATIONS	reduce by rule 7
++	STRUCTURE	reduce by rule 7
++	FUNCTOR	reduce by rule 7
++	SIGNATURE	reduce by rule 7
++	SHARING	reduce by rule 7
++	INSTRUCTION	reduce by rule 7
++	VLIW	reduce by rule 7
++	SUPERSCALAR	reduce by rule 7
++	FUN	reduce by rule 7
++	VAL	reduce by rule 7
++	INCLUDE	reduce by rule 7
++	OPEN	reduce by rule 7
++	LITTLE	reduce by rule 7
++	BIG	reduce by rule 7
++	PIPELINE	reduce by rule 7
++	LOWERCASE	reduce by rule 7
++	UPPERCASE	reduce by rule 7
++	VERBATIM	reduce by rule 7
++	RTL	reduce by rule 7
++	NONFIX	reduce by rule 7
++	INFIX	reduce by rule 7
++	INFIXR	reduce by rule 7
++	DEBUG	reduce by rule 7
++	RESOURCE	reduce by rule 7
++	CPU	reduce by rule 7
++	LATENCY	reduce by rule 7
++	EXCEPTION	reduce by rule 7
++	EOF	reduce by rule 7
++
++
++	.	error
++
++
++state 44:
++
++	decls : decl decls .  (reduce by rule 2)
++
++	END	reduce by rule 2
++	IN	reduce by rule 2
++	RPAREN	reduce by rule 2
++	EOF	reduce by rule 2
++
++
++	.	error
++
++
++state 45:
++
++	mymldecl : EXCEPTION exceptionbinds .  (reduce by rule 82)
++
++	ARCHITECTURE	reduce by rule 82
++	END	reduce by rule 82
++	LOCAL	reduce by rule 82
++	IN	reduce by rule 82
++	DATATYPE	reduce by rule 82
++	TYPE	reduce by rule 82
++	RPAREN	reduce by rule 82
++	SEMICOLON	reduce by rule 82
++	STORAGE	reduce by rule 82
++	LOCATIONS	reduce by rule 82
++	STRUCTURE	reduce by rule 82
++	FUNCTOR	reduce by rule 82
++	SIGNATURE	reduce by rule 82
++	SHARING	reduce by rule 82
++	INSTRUCTION	reduce by rule 82
++	VLIW	reduce by rule 82
++	SUPERSCALAR	reduce by rule 82
++	FUN	reduce by rule 82
++	VAL	reduce by rule 82
++	INCLUDE	reduce by rule 82
++	OPEN	reduce by rule 82
++	LITTLE	reduce by rule 82
++	BIG	reduce by rule 82
++	PIPELINE	reduce by rule 82
++	LOWERCASE	reduce by rule 82
++	UPPERCASE	reduce by rule 82
++	VERBATIM	reduce by rule 82
++	RTL	reduce by rule 82
++	NONFIX	reduce by rule 82
++	INFIX	reduce by rule 82
++	INFIXR	reduce by rule 82
++	DEBUG	reduce by rule 82
++	RESOURCE	reduce by rule 82
++	CPU	reduce by rule 82
++	LATENCY	reduce by rule 82
++	EXCEPTION	reduce by rule 82
++	EOF	reduce by rule 82
++
++
++	.	error
++
++
++state 46:
++
++	exceptionbinds : exceptionbind .  (reduce by rule 83)
++	exceptionbinds : exceptionbind . AND exceptionbinds 
++
++	ARCHITECTURE	reduce by rule 83
++	END	reduce by rule 83
++	LOCAL	reduce by rule 83
++	IN	reduce by rule 83
++	DATATYPE	reduce by rule 83
++	TYPE	reduce by rule 83
++	AND	shift 168
++	RPAREN	reduce by rule 83
++	SEMICOLON	reduce by rule 83
++	STORAGE	reduce by rule 83
++	LOCATIONS	reduce by rule 83
++	STRUCTURE	reduce by rule 83
++	FUNCTOR	reduce by rule 83
++	SIGNATURE	reduce by rule 83
++	SHARING	reduce by rule 83
++	INSTRUCTION	reduce by rule 83
++	VLIW	reduce by rule 83
++	SUPERSCALAR	reduce by rule 83
++	FUN	reduce by rule 83
++	VAL	reduce by rule 83
++	INCLUDE	reduce by rule 83
++	OPEN	reduce by rule 83
++	LITTLE	reduce by rule 83
++	BIG	reduce by rule 83
++	PIPELINE	reduce by rule 83
++	LOWERCASE	reduce by rule 83
++	UPPERCASE	reduce by rule 83
++	VERBATIM	reduce by rule 83
++	RTL	reduce by rule 83
++	NONFIX	reduce by rule 83
++	INFIX	reduce by rule 83
++	INFIXR	reduce by rule 83
++	DEBUG	reduce by rule 83
++	RESOURCE	reduce by rule 83
++	CPU	reduce by rule 83
++	LATENCY	reduce by rule 83
++	EXCEPTION	reduce by rule 83
++	EOF	reduce by rule 83
++
++
++	.	error
++
++
++state 47:
++
++	exceptionbind : id .  (reduce by rule 85)
++	exceptionbind : id . OF ty 
++	exceptionbind : id . EQ ident 
++
++	ARCHITECTURE	reduce by rule 85
++	END	reduce by rule 85
++	LOCAL	reduce by rule 85
++	IN	reduce by rule 85
++	OF	shift 170
++	DATATYPE	reduce by rule 85
++	TYPE	reduce by rule 85
++	EQ	shift 169
++	AND	reduce by rule 85
++	RPAREN	reduce by rule 85
++	SEMICOLON	reduce by rule 85
++	STORAGE	reduce by rule 85
++	LOCATIONS	reduce by rule 85
++	STRUCTURE	reduce by rule 85
++	FUNCTOR	reduce by rule 85
++	SIGNATURE	reduce by rule 85
++	SHARING	reduce by rule 85
++	INSTRUCTION	reduce by rule 85
++	VLIW	reduce by rule 85
++	SUPERSCALAR	reduce by rule 85
++	FUN	reduce by rule 85
++	VAL	reduce by rule 85
++	INCLUDE	reduce by rule 85
++	OPEN	reduce by rule 85
++	LITTLE	reduce by rule 85
++	BIG	reduce by rule 85
++	PIPELINE	reduce by rule 85
++	LOWERCASE	reduce by rule 85
++	UPPERCASE	reduce by rule 85
++	VERBATIM	reduce by rule 85
++	RTL	reduce by rule 85
++	NONFIX	reduce by rule 85
++	INFIX	reduce by rule 85
++	INFIXR	reduce by rule 85
++	DEBUG	reduce by rule 85
++	RESOURCE	reduce by rule 85
++	CPU	reduce by rule 85
++	LATENCY	reduce by rule 85
++	EXCEPTION	reduce by rule 85
++	EOF	reduce by rule 85
++
++
++	.	error
++
++
++state 48:
++
++	id : SYMBOL .  (reduce by rule 414)
++
++	ARCHITECTURE	reduce by rule 414
++	END	reduce by rule 414
++	LOCAL	reduce by rule 414
++	IN	reduce by rule 414
++	OF	reduce by rule 414
++	DATATYPE	reduce by rule 414
++	TYPE	reduce by rule 414
++	EQ	reduce by rule 414
++	DOLLAR	reduce by rule 414
++	TIMES	reduce by rule 414
++	AND	reduce by rule 414
++	DEREF	reduce by rule 414
++	NOT	reduce by rule 414
++	CONCAT	reduce by rule 414
++	LLBRACKET	reduce by rule 414
++	RRBRACKET	reduce by rule 414
++	LHASHBRACKET	reduce by rule 414
++	LPAREN	reduce by rule 414
++	RPAREN	reduce by rule 414
++	LBRACKET	reduce by rule 414
++	RBRACKET	reduce by rule 414
++	LBRACE	reduce by rule 414
++	RBRACE	reduce by rule 414
++	SEMICOLON	reduce by rule 414
++	LDQUOTE	reduce by rule 414
++	RMETA	reduce by rule 414
++	CELLSET	reduce by rule 414
++	STORAGE	reduce by rule 414
++	LOCATIONS	reduce by rule 414
++	HASH	reduce by rule 414
++	COMMA	reduce by rule 414
++	COLON	reduce by rule 414
++	COLONGREATER	reduce by rule 414
++	DOT	reduce by rule 414
++	AT	reduce by rule 414
++	BAR	reduce by rule 414
++	ARROW	reduce by rule 414
++	DARROW	reduce by rule 414
++	BITS	reduce by rule 414
++	THEN	reduce by rule 414
++	ELSE	reduce by rule 414
++	TRUE	reduce by rule 414
++	FALSE	reduce by rule 414
++	WILD	reduce by rule 414
++	HANDLE	reduce by rule 414
++	LET	reduce by rule 414
++	STRUCTURE	reduce by rule 414
++	FUNCTOR	reduce by rule 414
++	SIGNATURE	reduce by rule 414
++	WHERE	reduce by rule 414
++	SHARING	reduce by rule 414
++	INSTRUCTION	reduce by rule 414
++	CELL	reduce by rule 414
++	VLIW	reduce by rule 414
++	SUPERSCALAR	reduce by rule 414
++	SIGNED	reduce by rule 414
++	UNSIGNED	reduce by rule 414
++	AS	reduce by rule 414
++	WITHTYPE	reduce by rule 414
++	FUN	reduce by rule 414
++	VAL	reduce by rule 414
++	INCLUDE	reduce by rule 414
++	OPEN	reduce by rule 414
++	OP	reduce by rule 414
++	LITTLE	reduce by rule 414
++	BIG	reduce by rule 414
++	PIPELINE	reduce by rule 414
++	LOWERCASE	reduce by rule 414
++	UPPERCASE	reduce by rule 414
++	VERBATIM	reduce by rule 414
++	RTL	reduce by rule 414
++	SPAN	reduce by rule 414
++	DELAYSLOT	reduce by rule 414
++	ALWAYS	reduce by rule 414
++	NEVER	reduce by rule 414
++	NONFIX	reduce by rule 414
++	INFIX	reduce by rule 414
++	INFIXR	reduce by rule 414
++	DEBUG	reduce by rule 414
++	ASM_COLON	reduce by rule 414
++	MC_COLON	reduce by rule 414
++	RTL_COLON	reduce by rule 414
++	DELAYSLOT_COLON	reduce by rule 414
++	NULLIFIED_COLON	reduce by rule 414
++	PADDING_COLON	reduce by rule 414
++	RESOURCE	reduce by rule 414
++	CPU	reduce by rule 414
++	LATENCY	reduce by rule 414
++	EXCEPTION	reduce by rule 414
++	ID	reduce by rule 414
++	SYMBOL	reduce by rule 414
++	WORD	reduce by rule 414
++	INT	reduce by rule 414
++	INTINF	reduce by rule 414
++	REAL	reduce by rule 414
++	STRING	reduce by rule 414
++	CHAR	reduce by rule 414
++	EOF	reduce by rule 414
++
++
++	.	error
++
++
++state 49:
++
++	id : ID .  (reduce by rule 413)
++
++	ARCHITECTURE	reduce by rule 413
++	END	reduce by rule 413
++	LOCAL	reduce by rule 413
++	IN	reduce by rule 413
++	OF	reduce by rule 413
++	DATATYPE	reduce by rule 413
++	TYPE	reduce by rule 413
++	EQ	reduce by rule 413
++	DOLLAR	reduce by rule 413
++	TIMES	reduce by rule 413
++	AND	reduce by rule 413
++	DEREF	reduce by rule 413
++	NOT	reduce by rule 413
++	CONCAT	reduce by rule 413
++	LLBRACKET	reduce by rule 413
++	RRBRACKET	reduce by rule 413
++	LHASHBRACKET	reduce by rule 413
++	LPAREN	reduce by rule 413
++	RPAREN	reduce by rule 413
++	LBRACKET	reduce by rule 413
++	RBRACKET	reduce by rule 413
++	LBRACE	reduce by rule 413
++	RBRACE	reduce by rule 413
++	SEMICOLON	reduce by rule 413
++	LDQUOTE	reduce by rule 413
++	RMETA	reduce by rule 413
++	CELLSET	reduce by rule 413
++	STORAGE	reduce by rule 413
++	LOCATIONS	reduce by rule 413
++	HASH	reduce by rule 413
++	COMMA	reduce by rule 413
++	COLON	reduce by rule 413
++	COLONGREATER	reduce by rule 413
++	DOT	reduce by rule 413
++	AT	reduce by rule 413
++	BAR	reduce by rule 413
++	ARROW	reduce by rule 413
++	DARROW	reduce by rule 413
++	BITS	reduce by rule 413
++	THEN	reduce by rule 413
++	ELSE	reduce by rule 413
++	TRUE	reduce by rule 413
++	FALSE	reduce by rule 413
++	WILD	reduce by rule 413
++	HANDLE	reduce by rule 413
++	LET	reduce by rule 413
++	STRUCTURE	reduce by rule 413
++	FUNCTOR	reduce by rule 413
++	SIGNATURE	reduce by rule 413
++	WHERE	reduce by rule 413
++	SHARING	reduce by rule 413
++	INSTRUCTION	reduce by rule 413
++	CELL	reduce by rule 413
++	VLIW	reduce by rule 413
++	SUPERSCALAR	reduce by rule 413
++	SIGNED	reduce by rule 413
++	UNSIGNED	reduce by rule 413
++	AS	reduce by rule 413
++	WITHTYPE	reduce by rule 413
++	FUN	reduce by rule 413
++	VAL	reduce by rule 413
++	INCLUDE	reduce by rule 413
++	OPEN	reduce by rule 413
++	OP	reduce by rule 413
++	LITTLE	reduce by rule 413
++	BIG	reduce by rule 413
++	PIPELINE	reduce by rule 413
++	LOWERCASE	reduce by rule 413
++	UPPERCASE	reduce by rule 413
++	VERBATIM	reduce by rule 413
++	RTL	reduce by rule 413
++	SPAN	reduce by rule 413
++	DELAYSLOT	reduce by rule 413
++	ALWAYS	reduce by rule 413
++	NEVER	reduce by rule 413
++	NONFIX	reduce by rule 413
++	INFIX	reduce by rule 413
++	INFIXR	reduce by rule 413
++	DEBUG	reduce by rule 413
++	ASM_COLON	reduce by rule 413
++	MC_COLON	reduce by rule 413
++	RTL_COLON	reduce by rule 413
++	DELAYSLOT_COLON	reduce by rule 413
++	NULLIFIED_COLON	reduce by rule 413
++	PADDING_COLON	reduce by rule 413
++	RESOURCE	reduce by rule 413
++	CPU	reduce by rule 413
++	LATENCY	reduce by rule 413
++	EXCEPTION	reduce by rule 413
++	ID	reduce by rule 413
++	SYMBOL	reduce by rule 413
++	WORD	reduce by rule 413
++	INT	reduce by rule 413
++	INTINF	reduce by rule 413
++	REAL	reduce by rule 413
++	STRING	reduce by rule 413
++	CHAR	reduce by rule 413
++	EOF	reduce by rule 413
++
++
++	.	error
++
++
++state 50:
++
++	id : CELLSET .  (reduce by rule 415)
++
++	ARCHITECTURE	reduce by rule 415
++	END	reduce by rule 415
++	LOCAL	reduce by rule 415
++	IN	reduce by rule 415
++	OF	reduce by rule 415
++	DATATYPE	reduce by rule 415
++	TYPE	reduce by rule 415
++	EQ	reduce by rule 415
++	DOLLAR	reduce by rule 415
++	TIMES	reduce by rule 415
++	AND	reduce by rule 415
++	DEREF	reduce by rule 415
++	NOT	reduce by rule 415
++	CONCAT	reduce by rule 415
++	LLBRACKET	reduce by rule 415
++	RRBRACKET	reduce by rule 415
++	LHASHBRACKET	reduce by rule 415
++	LPAREN	reduce by rule 415
++	RPAREN	reduce by rule 415
++	LBRACKET	reduce by rule 415
++	RBRACKET	reduce by rule 415
++	LBRACE	reduce by rule 415
++	RBRACE	reduce by rule 415
++	SEMICOLON	reduce by rule 415
++	LDQUOTE	reduce by rule 415
++	RMETA	reduce by rule 415
++	CELLSET	reduce by rule 415
++	STORAGE	reduce by rule 415
++	LOCATIONS	reduce by rule 415
++	HASH	reduce by rule 415
++	COMMA	reduce by rule 415
++	COLON	reduce by rule 415
++	COLONGREATER	reduce by rule 415
++	DOT	reduce by rule 415
++	AT	reduce by rule 415
++	BAR	reduce by rule 415
++	ARROW	reduce by rule 415
++	DARROW	reduce by rule 415
++	BITS	reduce by rule 415
++	THEN	reduce by rule 415
++	ELSE	reduce by rule 415
++	TRUE	reduce by rule 415
++	FALSE	reduce by rule 415
++	WILD	reduce by rule 415
++	HANDLE	reduce by rule 415
++	LET	reduce by rule 415
++	STRUCTURE	reduce by rule 415
++	FUNCTOR	reduce by rule 415
++	SIGNATURE	reduce by rule 415
++	WHERE	reduce by rule 415
++	SHARING	reduce by rule 415
++	INSTRUCTION	reduce by rule 415
++	CELL	reduce by rule 415
++	VLIW	reduce by rule 415
++	SUPERSCALAR	reduce by rule 415
++	SIGNED	reduce by rule 415
++	UNSIGNED	reduce by rule 415
++	AS	reduce by rule 415
++	WITHTYPE	reduce by rule 415
++	FUN	reduce by rule 415
++	VAL	reduce by rule 415
++	INCLUDE	reduce by rule 415
++	OPEN	reduce by rule 415
++	OP	reduce by rule 415
++	LITTLE	reduce by rule 415
++	BIG	reduce by rule 415
++	PIPELINE	reduce by rule 415
++	LOWERCASE	reduce by rule 415
++	UPPERCASE	reduce by rule 415
++	VERBATIM	reduce by rule 415
++	RTL	reduce by rule 415
++	SPAN	reduce by rule 415
++	DELAYSLOT	reduce by rule 415
++	ALWAYS	reduce by rule 415
++	NEVER	reduce by rule 415
++	NONFIX	reduce by rule 415
++	INFIX	reduce by rule 415
++	INFIXR	reduce by rule 415
++	DEBUG	reduce by rule 415
++	ASM_COLON	reduce by rule 415
++	MC_COLON	reduce by rule 415
++	RTL_COLON	reduce by rule 415
++	DELAYSLOT_COLON	reduce by rule 415
++	NULLIFIED_COLON	reduce by rule 415
++	PADDING_COLON	reduce by rule 415
++	RESOURCE	reduce by rule 415
++	CPU	reduce by rule 415
++	LATENCY	reduce by rule 415
++	EXCEPTION	reduce by rule 415
++	ID	reduce by rule 415
++	SYMBOL	reduce by rule 415
++	WORD	reduce by rule 415
++	INT	reduce by rule 415
++	INTINF	reduce by rule 415
++	REAL	reduce by rule 415
++	STRING	reduce by rule 415
++	CHAR	reduce by rule 415
++	EOF	reduce by rule 415
++
++
++	.	error
++
++
++state 51:
++
++	latencyclauses : latencyclause .  (reduce by rule 56)
++	latencyclauses : latencyclause . BAR latencyclauses 
++
++	ARCHITECTURE	reduce by rule 56
++	END	reduce by rule 56
++	LOCAL	reduce by rule 56
++	IN	reduce by rule 56
++	DATATYPE	reduce by rule 56
++	TYPE	reduce by rule 56
++	AND	reduce by rule 56
++	RPAREN	reduce by rule 56
++	SEMICOLON	reduce by rule 56
++	STORAGE	reduce by rule 56
++	LOCATIONS	reduce by rule 56
++	BAR	shift 171
++	STRUCTURE	reduce by rule 56
++	FUNCTOR	reduce by rule 56
++	SIGNATURE	reduce by rule 56
++	SHARING	reduce by rule 56
++	INSTRUCTION	reduce by rule 56
++	VLIW	reduce by rule 56
++	SUPERSCALAR	reduce by rule 56
++	FUN	reduce by rule 56
++	VAL	reduce by rule 56
++	INCLUDE	reduce by rule 56
++	OPEN	reduce by rule 56
++	LITTLE	reduce by rule 56
++	BIG	reduce by rule 56
++	PIPELINE	reduce by rule 56
++	LOWERCASE	reduce by rule 56
++	UPPERCASE	reduce by rule 56
++	VERBATIM	reduce by rule 56
++	RTL	reduce by rule 56
++	NONFIX	reduce by rule 56
++	INFIX	reduce by rule 56
++	INFIXR	reduce by rule 56
++	DEBUG	reduce by rule 56
++	RESOURCE	reduce by rule 56
++	CPU	reduce by rule 56
++	LATENCY	reduce by rule 56
++	EXCEPTION	reduce by rule 56
++	EOF	reduce by rule 56
++
++
++	.	error
++
++
++state 52:
++
++	latencybind : latencyclauses .  (reduce by rule 55)
++
++	ARCHITECTURE	reduce by rule 55
++	END	reduce by rule 55
++	LOCAL	reduce by rule 55
++	IN	reduce by rule 55
++	DATATYPE	reduce by rule 55
++	TYPE	reduce by rule 55
++	AND	reduce by rule 55
++	RPAREN	reduce by rule 55
++	SEMICOLON	reduce by rule 55
++	STORAGE	reduce by rule 55
++	LOCATIONS	reduce by rule 55
++	STRUCTURE	reduce by rule 55
++	FUNCTOR	reduce by rule 55
++	SIGNATURE	reduce by rule 55
++	SHARING	reduce by rule 55
++	INSTRUCTION	reduce by rule 55
++	VLIW	reduce by rule 55
++	SUPERSCALAR	reduce by rule 55
++	FUN	reduce by rule 55
++	VAL	reduce by rule 55
++	INCLUDE	reduce by rule 55
++	OPEN	reduce by rule 55
++	LITTLE	reduce by rule 55
++	BIG	reduce by rule 55
++	PIPELINE	reduce by rule 55
++	LOWERCASE	reduce by rule 55
++	UPPERCASE	reduce by rule 55
++	VERBATIM	reduce by rule 55
++	RTL	reduce by rule 55
++	NONFIX	reduce by rule 55
++	INFIX	reduce by rule 55
++	INFIXR	reduce by rule 55
++	DEBUG	reduce by rule 55
++	RESOURCE	reduce by rule 55
++	CPU	reduce by rule 55
++	LATENCY	reduce by rule 55
++	EXCEPTION	reduce by rule 55
++	EOF	reduce by rule 55
++
++
++	.	error
++
++
++state 53:
++
++	latencybinds : latencybind .  (reduce by rule 53)
++	latencybinds : latencybind . AND latencybinds 
++
++	ARCHITECTURE	reduce by rule 53
++	END	reduce by rule 53
++	LOCAL	reduce by rule 53
++	IN	reduce by rule 53
++	DATATYPE	reduce by rule 53
++	TYPE	reduce by rule 53
++	AND	shift 172
++	RPAREN	reduce by rule 53
++	SEMICOLON	reduce by rule 53
++	STORAGE	reduce by rule 53
++	LOCATIONS	reduce by rule 53
++	STRUCTURE	reduce by rule 53
++	FUNCTOR	reduce by rule 53
++	SIGNATURE	reduce by rule 53
++	SHARING	reduce by rule 53
++	INSTRUCTION	reduce by rule 53
++	VLIW	reduce by rule 53
++	SUPERSCALAR	reduce by rule 53
++	FUN	reduce by rule 53
++	VAL	reduce by rule 53
++	INCLUDE	reduce by rule 53
++	OPEN	reduce by rule 53
++	LITTLE	reduce by rule 53
++	BIG	reduce by rule 53
++	PIPELINE	reduce by rule 53
++	LOWERCASE	reduce by rule 53
++	UPPERCASE	reduce by rule 53
++	VERBATIM	reduce by rule 53
++	RTL	reduce by rule 53
++	NONFIX	reduce by rule 53
++	INFIX	reduce by rule 53
++	INFIXR	reduce by rule 53
++	DEBUG	reduce by rule 53
++	RESOURCE	reduce by rule 53
++	CPU	reduce by rule 53
++	LATENCY	reduce by rule 53
++	EXCEPTION	reduce by rule 53
++	EOF	reduce by rule 53
++
++
++	.	error
++
++
++state 54:
++
++	mymddecl : LATENCY latencybinds .  (reduce by rule 27)
++
++	ARCHITECTURE	reduce by rule 27
++	END	reduce by rule 27
++	LOCAL	reduce by rule 27
++	IN	reduce by rule 27
++	DATATYPE	reduce by rule 27
++	TYPE	reduce by rule 27
++	RPAREN	reduce by rule 27
++	SEMICOLON	reduce by rule 27
++	STORAGE	reduce by rule 27
++	LOCATIONS	reduce by rule 27
++	STRUCTURE	reduce by rule 27
++	FUNCTOR	reduce by rule 27
++	SIGNATURE	reduce by rule 27
++	SHARING	reduce by rule 27
++	INSTRUCTION	reduce by rule 27
++	VLIW	reduce by rule 27
++	SUPERSCALAR	reduce by rule 27
++	FUN	reduce by rule 27
++	VAL	reduce by rule 27
++	INCLUDE	reduce by rule 27
++	OPEN	reduce by rule 27
++	LITTLE	reduce by rule 27
++	BIG	reduce by rule 27
++	PIPELINE	reduce by rule 27
++	LOWERCASE	reduce by rule 27
++	UPPERCASE	reduce by rule 27
++	VERBATIM	reduce by rule 27
++	RTL	reduce by rule 27
++	NONFIX	reduce by rule 27
++	INFIX	reduce by rule 27
++	INFIXR	reduce by rule 27
++	DEBUG	reduce by rule 27
++	RESOURCE	reduce by rule 27
++	CPU	reduce by rule 27
++	LATENCY	reduce by rule 27
++	EXCEPTION	reduce by rule 27
++	EOF	reduce by rule 27
++
++
++	.	error
++
++
++state 55:
++
++	latencyclause : id . pat EQ exp 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 173
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 56:
++
++	cpubinds : cpubind .  (reduce by rule 30)
++	cpubinds : cpubind . AND cpubinds 
++
++	ARCHITECTURE	reduce by rule 30
++	END	reduce by rule 30
++	LOCAL	reduce by rule 30
++	IN	reduce by rule 30
++	DATATYPE	reduce by rule 30
++	TYPE	reduce by rule 30
++	AND	shift 174
++	RPAREN	reduce by rule 30
++	SEMICOLON	reduce by rule 30
++	STORAGE	reduce by rule 30
++	LOCATIONS	reduce by rule 30
++	STRUCTURE	reduce by rule 30
++	FUNCTOR	reduce by rule 30
++	SIGNATURE	reduce by rule 30
++	SHARING	reduce by rule 30
++	INSTRUCTION	reduce by rule 30
++	VLIW	reduce by rule 30
++	SUPERSCALAR	reduce by rule 30
++	FUN	reduce by rule 30
++	VAL	reduce by rule 30
++	INCLUDE	reduce by rule 30
++	OPEN	reduce by rule 30
++	LITTLE	reduce by rule 30
++	BIG	reduce by rule 30
++	PIPELINE	reduce by rule 30
++	LOWERCASE	reduce by rule 30
++	UPPERCASE	reduce by rule 30
++	VERBATIM	reduce by rule 30
++	RTL	reduce by rule 30
++	NONFIX	reduce by rule 30
++	INFIX	reduce by rule 30
++	INFIXR	reduce by rule 30
++	DEBUG	reduce by rule 30
++	RESOURCE	reduce by rule 30
++	CPU	reduce by rule 30
++	LATENCY	reduce by rule 30
++	EXCEPTION	reduce by rule 30
++	EOF	reduce by rule 30
++
++
++	.	error
++
++
++state 57:
++
++	mymddecl : CPU cpubinds .  (reduce by rule 25)
++
++	ARCHITECTURE	reduce by rule 25
++	END	reduce by rule 25
++	LOCAL	reduce by rule 25
++	IN	reduce by rule 25
++	DATATYPE	reduce by rule 25
++	TYPE	reduce by rule 25
++	RPAREN	reduce by rule 25
++	SEMICOLON	reduce by rule 25
++	STORAGE	reduce by rule 25
++	LOCATIONS	reduce by rule 25
++	STRUCTURE	reduce by rule 25
++	FUNCTOR	reduce by rule 25
++	SIGNATURE	reduce by rule 25
++	SHARING	reduce by rule 25
++	INSTRUCTION	reduce by rule 25
++	VLIW	reduce by rule 25
++	SUPERSCALAR	reduce by rule 25
++	FUN	reduce by rule 25
++	VAL	reduce by rule 25
++	INCLUDE	reduce by rule 25
++	OPEN	reduce by rule 25
++	LITTLE	reduce by rule 25
++	BIG	reduce by rule 25
++	PIPELINE	reduce by rule 25
++	LOWERCASE	reduce by rule 25
++	UPPERCASE	reduce by rule 25
++	VERBATIM	reduce by rule 25
++	RTL	reduce by rule 25
++	NONFIX	reduce by rule 25
++	INFIX	reduce by rule 25
++	INFIXR	reduce by rule 25
++	DEBUG	reduce by rule 25
++	RESOURCE	reduce by rule 25
++	CPU	reduce by rule 25
++	LATENCY	reduce by rule 25
++	EXCEPTION	reduce by rule 25
++	EOF	reduce by rule 25
++
++
++	.	error
++
++
++state 58:
++
++	cpubind : id . aliases int LBRACKET resources RBRACKET 
++
++	INT	reduce by rule 33
++	STRING	shift 91
++
++	string	goto 176
++	aliases	goto 175
++
++	.	error
++
++
++state 59:
++
++	mymddecl : RESOURCE resourcebinds .  (reduce by rule 24)
++
++	ARCHITECTURE	reduce by rule 24
++	END	reduce by rule 24
++	LOCAL	reduce by rule 24
++	IN	reduce by rule 24
++	DATATYPE	reduce by rule 24
++	TYPE	reduce by rule 24
++	RPAREN	reduce by rule 24
++	SEMICOLON	reduce by rule 24
++	STORAGE	reduce by rule 24
++	LOCATIONS	reduce by rule 24
++	STRUCTURE	reduce by rule 24
++	FUNCTOR	reduce by rule 24
++	SIGNATURE	reduce by rule 24
++	SHARING	reduce by rule 24
++	INSTRUCTION	reduce by rule 24
++	VLIW	reduce by rule 24
++	SUPERSCALAR	reduce by rule 24
++	FUN	reduce by rule 24
++	VAL	reduce by rule 24
++	INCLUDE	reduce by rule 24
++	OPEN	reduce by rule 24
++	LITTLE	reduce by rule 24
++	BIG	reduce by rule 24
++	PIPELINE	reduce by rule 24
++	LOWERCASE	reduce by rule 24
++	UPPERCASE	reduce by rule 24
++	VERBATIM	reduce by rule 24
++	RTL	reduce by rule 24
++	NONFIX	reduce by rule 24
++	INFIX	reduce by rule 24
++	INFIXR	reduce by rule 24
++	DEBUG	reduce by rule 24
++	RESOURCE	reduce by rule 24
++	CPU	reduce by rule 24
++	LATENCY	reduce by rule 24
++	EXCEPTION	reduce by rule 24
++	EOF	reduce by rule 24
++
++
++	.	error
++
++
++state 60:
++
++	resourcebinds : id .  (reduce by rule 28)
++	resourcebinds : id . AND resourcebinds 
++
++	ARCHITECTURE	reduce by rule 28
++	END	reduce by rule 28
++	LOCAL	reduce by rule 28
++	IN	reduce by rule 28
++	DATATYPE	reduce by rule 28
++	TYPE	reduce by rule 28
++	AND	shift 177
++	RPAREN	reduce by rule 28
++	SEMICOLON	reduce by rule 28
++	STORAGE	reduce by rule 28
++	LOCATIONS	reduce by rule 28
++	STRUCTURE	reduce by rule 28
++	FUNCTOR	reduce by rule 28
++	SIGNATURE	reduce by rule 28
++	SHARING	reduce by rule 28
++	INSTRUCTION	reduce by rule 28
++	VLIW	reduce by rule 28
++	SUPERSCALAR	reduce by rule 28
++	FUN	reduce by rule 28
++	VAL	reduce by rule 28
++	INCLUDE	reduce by rule 28
++	OPEN	reduce by rule 28
++	LITTLE	reduce by rule 28
++	BIG	reduce by rule 28
++	PIPELINE	reduce by rule 28
++	LOWERCASE	reduce by rule 28
++	UPPERCASE	reduce by rule 28
++	VERBATIM	reduce by rule 28
++	RTL	reduce by rule 28
++	NONFIX	reduce by rule 28
++	INFIX	reduce by rule 28
++	INFIXR	reduce by rule 28
++	DEBUG	reduce by rule 28
++	RESOURCE	reduce by rule 28
++	CPU	reduce by rule 28
++	LATENCY	reduce by rule 28
++	EXCEPTION	reduce by rule 28
++	EOF	reduce by rule 28
++
++
++	.	error
++
++
++state 61:
++
++	mymddecl : DEBUG id .  (reduce by rule 23)
++
++	ARCHITECTURE	reduce by rule 23
++	END	reduce by rule 23
++	LOCAL	reduce by rule 23
++	IN	reduce by rule 23
++	DATATYPE	reduce by rule 23
++	TYPE	reduce by rule 23
++	RPAREN	reduce by rule 23
++	SEMICOLON	reduce by rule 23
++	STORAGE	reduce by rule 23
++	LOCATIONS	reduce by rule 23
++	STRUCTURE	reduce by rule 23
++	FUNCTOR	reduce by rule 23
++	SIGNATURE	reduce by rule 23
++	SHARING	reduce by rule 23
++	INSTRUCTION	reduce by rule 23
++	VLIW	reduce by rule 23
++	SUPERSCALAR	reduce by rule 23
++	FUN	reduce by rule 23
++	VAL	reduce by rule 23
++	INCLUDE	reduce by rule 23
++	OPEN	reduce by rule 23
++	LITTLE	reduce by rule 23
++	BIG	reduce by rule 23
++	PIPELINE	reduce by rule 23
++	LOWERCASE	reduce by rule 23
++	UPPERCASE	reduce by rule 23
++	VERBATIM	reduce by rule 23
++	RTL	reduce by rule 23
++	NONFIX	reduce by rule 23
++	INFIX	reduce by rule 23
++	INFIXR	reduce by rule 23
++	DEBUG	reduce by rule 23
++	RESOURCE	reduce by rule 23
++	CPU	reduce by rule 23
++	LATENCY	reduce by rule 23
++	EXCEPTION	reduce by rule 23
++	EOF	reduce by rule 23
++
++
++	.	error
++
++
++state 62:
++
++	mymldecl : INFIXR intopt . syms 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 178
++
++	.	error
++
++
++state 63:
++
++	intopt : int .  (reduce by rule 396)
++
++	TIMES	reduce by rule 396
++	DEREF	reduce by rule 396
++	NOT	reduce by rule 396
++	CELLSET	reduce by rule 396
++	ID	reduce by rule 396
++	SYMBOL	reduce by rule 396
++
++
++	.	error
++
++
++state 64:
++
++	int : INT .  (reduce by rule 395)
++
++	ARCHITECTURE	reduce by rule 395
++	END	reduce by rule 395
++	LOCAL	reduce by rule 395
++	IN	reduce by rule 395
++	OF	reduce by rule 395
++	DATATYPE	reduce by rule 395
++	TYPE	reduce by rule 395
++	EQ	reduce by rule 395
++	DOLLAR	reduce by rule 395
++	TIMES	reduce by rule 395
++	AND	reduce by rule 395
++	DEREF	reduce by rule 395
++	NOT	reduce by rule 395
++	CONCAT	reduce by rule 395
++	LLBRACKET	reduce by rule 395
++	LHASHBRACKET	reduce by rule 395
++	LPAREN	reduce by rule 395
++	RPAREN	reduce by rule 395
++	LBRACKET	reduce by rule 395
++	RBRACKET	reduce by rule 395
++	LBRACE	reduce by rule 395
++	RBRACE	reduce by rule 395
++	SEMICOLON	reduce by rule 395
++	LDQUOTE	reduce by rule 395
++	RMETA	reduce by rule 395
++	CELLSET	reduce by rule 395
++	STORAGE	reduce by rule 395
++	LOCATIONS	reduce by rule 395
++	HASH	reduce by rule 395
++	COMMA	reduce by rule 395
++	COLON	reduce by rule 395
++	DOTDOT	reduce by rule 395
++	AT	reduce by rule 395
++	BAR	reduce by rule 395
++	ARROW	reduce by rule 395
++	DARROW	reduce by rule 395
++	BITS	reduce by rule 395
++	THEN	reduce by rule 395
++	ELSE	reduce by rule 395
++	TRUE	reduce by rule 395
++	FALSE	reduce by rule 395
++	WILD	reduce by rule 395
++	HANDLE	reduce by rule 395
++	LET	reduce by rule 395
++	STRUCTURE	reduce by rule 395
++	FUNCTOR	reduce by rule 395
++	SIGNATURE	reduce by rule 395
++	WHERE	reduce by rule 395
++	SHARING	reduce by rule 395
++	INSTRUCTION	reduce by rule 395
++	CELL	reduce by rule 395
++	VLIW	reduce by rule 395
++	SUPERSCALAR	reduce by rule 395
++	WITHTYPE	reduce by rule 395
++	FUN	reduce by rule 395
++	VAL	reduce by rule 395
++	INCLUDE	reduce by rule 395
++	OPEN	reduce by rule 395
++	OP	reduce by rule 395
++	LITTLE	reduce by rule 395
++	BIG	reduce by rule 395
++	PIPELINE	reduce by rule 395
++	LOWERCASE	reduce by rule 395
++	UPPERCASE	reduce by rule 395
++	VERBATIM	reduce by rule 395
++	RTL	reduce by rule 395
++	SPAN	reduce by rule 395
++	DELAYSLOT	reduce by rule 395
++	ALWAYS	reduce by rule 395
++	NEVER	reduce by rule 395
++	NONFIX	reduce by rule 395
++	INFIX	reduce by rule 395
++	INFIXR	reduce by rule 395
++	DEBUG	reduce by rule 395
++	ASM_COLON	reduce by rule 395
++	MC_COLON	reduce by rule 395
++	RTL_COLON	reduce by rule 395
++	DELAYSLOT_COLON	reduce by rule 395
++	NULLIFIED_COLON	reduce by rule 395
++	PADDING_COLON	reduce by rule 395
++	AGGREGABLE	reduce by rule 395
++	RESOURCE	reduce by rule 395
++	CPU	reduce by rule 395
++	LATENCY	reduce by rule 395
++	EXCEPTION	reduce by rule 395
++	ID	reduce by rule 395
++	SYMBOL	reduce by rule 395
++	WORD	reduce by rule 395
++	INT	reduce by rule 395
++	INTINF	reduce by rule 395
++	REAL	reduce by rule 395
++	STRING	reduce by rule 395
++	CHAR	reduce by rule 395
++	EOF	reduce by rule 395
++
++
++	.	error
++
++
++state 65:
++
++	mymldecl : INFIX intopt . syms 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 179
++
++	.	error
++
++
++state 66:
++
++	mymldecl : NONFIX syms .  (reduce by rule 79)
++
++	ARCHITECTURE	reduce by rule 79
++	END	reduce by rule 79
++	LOCAL	reduce by rule 79
++	IN	reduce by rule 79
++	DATATYPE	reduce by rule 79
++	TYPE	reduce by rule 79
++	RPAREN	reduce by rule 79
++	SEMICOLON	reduce by rule 79
++	STORAGE	reduce by rule 79
++	LOCATIONS	reduce by rule 79
++	STRUCTURE	reduce by rule 79
++	FUNCTOR	reduce by rule 79
++	SIGNATURE	reduce by rule 79
++	SHARING	reduce by rule 79
++	INSTRUCTION	reduce by rule 79
++	VLIW	reduce by rule 79
++	SUPERSCALAR	reduce by rule 79
++	FUN	reduce by rule 79
++	VAL	reduce by rule 79
++	INCLUDE	reduce by rule 79
++	OPEN	reduce by rule 79
++	LITTLE	reduce by rule 79
++	BIG	reduce by rule 79
++	PIPELINE	reduce by rule 79
++	LOWERCASE	reduce by rule 79
++	UPPERCASE	reduce by rule 79
++	VERBATIM	reduce by rule 79
++	RTL	reduce by rule 79
++	NONFIX	reduce by rule 79
++	INFIX	reduce by rule 79
++	INFIXR	reduce by rule 79
++	DEBUG	reduce by rule 79
++	RESOURCE	reduce by rule 79
++	CPU	reduce by rule 79
++	LATENCY	reduce by rule 79
++	EXCEPTION	reduce by rule 79
++	EOF	reduce by rule 79
++
++
++	.	error
++
++
++state 67:
++
++	sym : symb .  (reduce by rule 417)
++
++	ARCHITECTURE	reduce by rule 417
++	END	reduce by rule 417
++	LOCAL	reduce by rule 417
++	IN	reduce by rule 417
++	OF	reduce by rule 417
++	DATATYPE	reduce by rule 417
++	TYPE	reduce by rule 417
++	EQ	reduce by rule 417
++	DOLLAR	reduce by rule 417
++	TIMES	reduce by rule 417
++	AND	reduce by rule 417
++	DEREF	reduce by rule 417
++	NOT	reduce by rule 417
++	CONCAT	reduce by rule 417
++	LLBRACKET	reduce by rule 417
++	RRBRACKET	reduce by rule 417
++	LHASHBRACKET	reduce by rule 417
++	LPAREN	reduce by rule 417
++	RPAREN	reduce by rule 417
++	LBRACKET	reduce by rule 417
++	RBRACKET	reduce by rule 417
++	LBRACE	reduce by rule 417
++	RBRACE	reduce by rule 417
++	SEMICOLON	reduce by rule 417
++	LDQUOTE	reduce by rule 417
++	RMETA	reduce by rule 417
++	CELLSET	reduce by rule 417
++	STORAGE	reduce by rule 417
++	LOCATIONS	reduce by rule 417
++	HASH	reduce by rule 417
++	COMMA	reduce by rule 417
++	COLON	reduce by rule 417
++	DOT	reduce by rule 417
++	AT	reduce by rule 417
++	BAR	reduce by rule 417
++	DARROW	reduce by rule 417
++	THEN	reduce by rule 417
++	ELSE	reduce by rule 417
++	TRUE	reduce by rule 417
++	FALSE	reduce by rule 417
++	WILD	reduce by rule 417
++	HANDLE	reduce by rule 417
++	LET	reduce by rule 417
++	STRUCTURE	reduce by rule 417
++	FUNCTOR	reduce by rule 417
++	SIGNATURE	reduce by rule 417
++	WHERE	reduce by rule 417
++	SHARING	reduce by rule 417
++	INSTRUCTION	reduce by rule 417
++	VLIW	reduce by rule 417
++	SUPERSCALAR	reduce by rule 417
++	AS	reduce by rule 417
++	WITHTYPE	reduce by rule 417
++	FUN	reduce by rule 417
++	VAL	reduce by rule 417
++	INCLUDE	reduce by rule 417
++	OPEN	reduce by rule 417
++	OP	reduce by rule 417
++	LITTLE	reduce by rule 417
++	BIG	reduce by rule 417
++	PIPELINE	reduce by rule 417
++	LOWERCASE	reduce by rule 417
++	UPPERCASE	reduce by rule 417
++	VERBATIM	reduce by rule 417
++	RTL	reduce by rule 417
++	SPAN	reduce by rule 417
++	DELAYSLOT	reduce by rule 417
++	ALWAYS	reduce by rule 417
++	NEVER	reduce by rule 417
++	NONFIX	reduce by rule 417
++	INFIX	reduce by rule 417
++	INFIXR	reduce by rule 417
++	DEBUG	reduce by rule 417
++	ASM_COLON	reduce by rule 417
++	MC_COLON	reduce by rule 417
++	RTL_COLON	reduce by rule 417
++	DELAYSLOT_COLON	reduce by rule 417
++	NULLIFIED_COLON	reduce by rule 417
++	PADDING_COLON	reduce by rule 417
++	RESOURCE	reduce by rule 417
++	CPU	reduce by rule 417
++	LATENCY	reduce by rule 417
++	EXCEPTION	reduce by rule 417
++	ID	reduce by rule 417
++	SYMBOL	reduce by rule 417
++	WORD	reduce by rule 417
++	INT	reduce by rule 417
++	INTINF	reduce by rule 417
++	REAL	reduce by rule 417
++	STRING	reduce by rule 417
++	CHAR	reduce by rule 417
++	EOF	reduce by rule 417
++
++
++	.	error
++
++
++state 68:
++
++	syms : sym .  (reduce by rule 109)
++	syms : sym . syms 
++
++	ARCHITECTURE	reduce by rule 109
++	END	reduce by rule 109
++	LOCAL	reduce by rule 109
++	IN	reduce by rule 109
++	DATATYPE	reduce by rule 109
++	TYPE	reduce by rule 109
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	RPAREN	reduce by rule 109
++	SEMICOLON	reduce by rule 109
++	CELLSET	shift 50
++	STORAGE	reduce by rule 109
++	LOCATIONS	reduce by rule 109
++	COLON	reduce by rule 109
++	STRUCTURE	reduce by rule 109
++	FUNCTOR	reduce by rule 109
++	SIGNATURE	reduce by rule 109
++	SHARING	reduce by rule 109
++	INSTRUCTION	reduce by rule 109
++	VLIW	reduce by rule 109
++	SUPERSCALAR	reduce by rule 109
++	FUN	reduce by rule 109
++	VAL	reduce by rule 109
++	INCLUDE	reduce by rule 109
++	OPEN	reduce by rule 109
++	LITTLE	reduce by rule 109
++	BIG	reduce by rule 109
++	PIPELINE	reduce by rule 109
++	LOWERCASE	reduce by rule 109
++	UPPERCASE	reduce by rule 109
++	VERBATIM	reduce by rule 109
++	RTL	reduce by rule 109
++	NONFIX	reduce by rule 109
++	INFIX	reduce by rule 109
++	INFIXR	reduce by rule 109
++	DEBUG	reduce by rule 109
++	RESOURCE	reduce by rule 109
++	CPU	reduce by rule 109
++	LATENCY	reduce by rule 109
++	EXCEPTION	reduce by rule 109
++	ID	shift 49
++	SYMBOL	shift 48
++	EOF	reduce by rule 109
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 180
++
++	.	error
++
++
++state 69:
++
++	sym : id .  (reduce by rule 416)
++
++	ARCHITECTURE	reduce by rule 416
++	END	reduce by rule 416
++	LOCAL	reduce by rule 416
++	IN	reduce by rule 416
++	OF	reduce by rule 416
++	DATATYPE	reduce by rule 416
++	TYPE	reduce by rule 416
++	EQ	reduce by rule 416
++	DOLLAR	reduce by rule 416
++	TIMES	reduce by rule 416
++	AND	reduce by rule 416
++	DEREF	reduce by rule 416
++	NOT	reduce by rule 416
++	LLBRACKET	reduce by rule 416
++	RRBRACKET	reduce by rule 416
++	LHASHBRACKET	reduce by rule 416
++	LPAREN	reduce by rule 416
++	RPAREN	reduce by rule 416
++	LBRACKET	reduce by rule 416
++	RBRACKET	reduce by rule 416
++	LBRACE	reduce by rule 416
++	RBRACE	reduce by rule 416
++	SEMICOLON	reduce by rule 416
++	LDQUOTE	reduce by rule 416
++	RMETA	reduce by rule 416
++	CELLSET	reduce by rule 416
++	STORAGE	reduce by rule 416
++	LOCATIONS	reduce by rule 416
++	HASH	reduce by rule 416
++	COMMA	reduce by rule 416
++	COLON	reduce by rule 416
++	DOT	reduce by rule 416
++	AT	reduce by rule 416
++	BAR	reduce by rule 416
++	DARROW	reduce by rule 416
++	THEN	reduce by rule 416
++	ELSE	reduce by rule 416
++	TRUE	reduce by rule 416
++	FALSE	reduce by rule 416
++	WILD	reduce by rule 416
++	HANDLE	reduce by rule 416
++	LET	reduce by rule 416
++	STRUCTURE	reduce by rule 416
++	FUNCTOR	reduce by rule 416
++	SIGNATURE	reduce by rule 416
++	WHERE	reduce by rule 416
++	SHARING	reduce by rule 416
++	INSTRUCTION	reduce by rule 416
++	VLIW	reduce by rule 416
++	SUPERSCALAR	reduce by rule 416
++	AS	reduce by rule 416
++	WITHTYPE	reduce by rule 416
++	FUN	reduce by rule 416
++	VAL	reduce by rule 416
++	INCLUDE	reduce by rule 416
++	OPEN	reduce by rule 416
++	OP	reduce by rule 416
++	LITTLE	reduce by rule 416
++	BIG	reduce by rule 416
++	PIPELINE	reduce by rule 416
++	LOWERCASE	reduce by rule 416
++	UPPERCASE	reduce by rule 416
++	VERBATIM	reduce by rule 416
++	RTL	reduce by rule 416
++	SPAN	reduce by rule 416
++	DELAYSLOT	reduce by rule 416
++	ALWAYS	reduce by rule 416
++	NEVER	reduce by rule 416
++	NONFIX	reduce by rule 416
++	INFIX	reduce by rule 416
++	INFIXR	reduce by rule 416
++	DEBUG	reduce by rule 416
++	ASM_COLON	reduce by rule 416
++	MC_COLON	reduce by rule 416
++	RTL_COLON	reduce by rule 416
++	DELAYSLOT_COLON	reduce by rule 416
++	NULLIFIED_COLON	reduce by rule 416
++	PADDING_COLON	reduce by rule 416
++	RESOURCE	reduce by rule 416
++	CPU	reduce by rule 416
++	LATENCY	reduce by rule 416
++	EXCEPTION	reduce by rule 416
++	ID	reduce by rule 416
++	SYMBOL	reduce by rule 416
++	WORD	reduce by rule 416
++	INT	reduce by rule 416
++	INTINF	reduce by rule 416
++	REAL	reduce by rule 416
++	STRING	reduce by rule 416
++	CHAR	reduce by rule 416
++	EOF	reduce by rule 416
++
++
++	.	error
++
++
++state 70:
++
++	symb : NOT .  (reduce by rule 419)
++
++	ARCHITECTURE	reduce by rule 419
++	END	reduce by rule 419
++	LOCAL	reduce by rule 419
++	IN	reduce by rule 419
++	OF	reduce by rule 419
++	DATATYPE	reduce by rule 419
++	TYPE	reduce by rule 419
++	EQ	reduce by rule 419
++	DOLLAR	reduce by rule 419
++	TIMES	reduce by rule 419
++	AND	reduce by rule 419
++	DEREF	reduce by rule 419
++	NOT	reduce by rule 419
++	CONCAT	reduce by rule 419
++	LLBRACKET	reduce by rule 419
++	RRBRACKET	reduce by rule 419
++	LHASHBRACKET	reduce by rule 419
++	LPAREN	reduce by rule 419
++	RPAREN	reduce by rule 419
++	LBRACKET	reduce by rule 419
++	RBRACKET	reduce by rule 419
++	LBRACE	reduce by rule 419
++	RBRACE	reduce by rule 419
++	SEMICOLON	reduce by rule 419
++	LDQUOTE	reduce by rule 419
++	RMETA	reduce by rule 419
++	CELLSET	reduce by rule 419
++	STORAGE	reduce by rule 419
++	LOCATIONS	reduce by rule 419
++	HASH	reduce by rule 419
++	COMMA	reduce by rule 419
++	COLON	reduce by rule 419
++	DOT	reduce by rule 419
++	AT	reduce by rule 419
++	BAR	reduce by rule 419
++	DARROW	reduce by rule 419
++	THEN	reduce by rule 419
++	ELSE	reduce by rule 419
++	TRUE	reduce by rule 419
++	FALSE	reduce by rule 419
++	WILD	reduce by rule 419
++	HANDLE	reduce by rule 419
++	LET	reduce by rule 419
++	STRUCTURE	reduce by rule 419
++	FUNCTOR	reduce by rule 419
++	SIGNATURE	reduce by rule 419
++	WHERE	reduce by rule 419
++	SHARING	reduce by rule 419
++	INSTRUCTION	reduce by rule 419
++	VLIW	reduce by rule 419
++	SUPERSCALAR	reduce by rule 419
++	AS	reduce by rule 419
++	WITHTYPE	reduce by rule 419
++	FUN	reduce by rule 419
++	VAL	reduce by rule 419
++	INCLUDE	reduce by rule 419
++	OPEN	reduce by rule 419
++	OP	reduce by rule 419
++	LITTLE	reduce by rule 419
++	BIG	reduce by rule 419
++	PIPELINE	reduce by rule 419
++	LOWERCASE	reduce by rule 419
++	UPPERCASE	reduce by rule 419
++	VERBATIM	reduce by rule 419
++	RTL	reduce by rule 419
++	SPAN	reduce by rule 419
++	DELAYSLOT	reduce by rule 419
++	ALWAYS	reduce by rule 419
++	NEVER	reduce by rule 419
++	NONFIX	reduce by rule 419
++	INFIX	reduce by rule 419
++	INFIXR	reduce by rule 419
++	DEBUG	reduce by rule 419
++	ASM_COLON	reduce by rule 419
++	MC_COLON	reduce by rule 419
++	RTL_COLON	reduce by rule 419
++	DELAYSLOT_COLON	reduce by rule 419
++	NULLIFIED_COLON	reduce by rule 419
++	PADDING_COLON	reduce by rule 419
++	RESOURCE	reduce by rule 419
++	CPU	reduce by rule 419
++	LATENCY	reduce by rule 419
++	EXCEPTION	reduce by rule 419
++	ID	reduce by rule 419
++	SYMBOL	reduce by rule 419
++	WORD	reduce by rule 419
++	INT	reduce by rule 419
++	INTINF	reduce by rule 419
++	REAL	reduce by rule 419
++	STRING	reduce by rule 419
++	CHAR	reduce by rule 419
++	EOF	reduce by rule 419
++
++
++	.	error
++
++
++state 71:
++
++	symb : DEREF .  (reduce by rule 420)
++
++	ARCHITECTURE	reduce by rule 420
++	END	reduce by rule 420
++	LOCAL	reduce by rule 420
++	IN	reduce by rule 420
++	OF	reduce by rule 420
++	DATATYPE	reduce by rule 420
++	TYPE	reduce by rule 420
++	EQ	reduce by rule 420
++	DOLLAR	reduce by rule 420
++	TIMES	reduce by rule 420
++	AND	reduce by rule 420
++	DEREF	reduce by rule 420
++	NOT	reduce by rule 420
++	CONCAT	reduce by rule 420
++	LLBRACKET	reduce by rule 420
++	RRBRACKET	reduce by rule 420
++	LHASHBRACKET	reduce by rule 420
++	LPAREN	reduce by rule 420
++	RPAREN	reduce by rule 420
++	LBRACKET	reduce by rule 420
++	RBRACKET	reduce by rule 420
++	LBRACE	reduce by rule 420
++	RBRACE	reduce by rule 420
++	SEMICOLON	reduce by rule 420
++	LDQUOTE	reduce by rule 420
++	RMETA	reduce by rule 420
++	CELLSET	reduce by rule 420
++	STORAGE	reduce by rule 420
++	LOCATIONS	reduce by rule 420
++	HASH	reduce by rule 420
++	COMMA	reduce by rule 420
++	COLON	reduce by rule 420
++	DOT	reduce by rule 420
++	AT	reduce by rule 420
++	BAR	reduce by rule 420
++	DARROW	reduce by rule 420
++	THEN	reduce by rule 420
++	ELSE	reduce by rule 420
++	TRUE	reduce by rule 420
++	FALSE	reduce by rule 420
++	WILD	reduce by rule 420
++	HANDLE	reduce by rule 420
++	LET	reduce by rule 420
++	STRUCTURE	reduce by rule 420
++	FUNCTOR	reduce by rule 420
++	SIGNATURE	reduce by rule 420
++	WHERE	reduce by rule 420
++	SHARING	reduce by rule 420
++	INSTRUCTION	reduce by rule 420
++	VLIW	reduce by rule 420
++	SUPERSCALAR	reduce by rule 420
++	AS	reduce by rule 420
++	WITHTYPE	reduce by rule 420
++	FUN	reduce by rule 420
++	VAL	reduce by rule 420
++	INCLUDE	reduce by rule 420
++	OPEN	reduce by rule 420
++	OP	reduce by rule 420
++	LITTLE	reduce by rule 420
++	BIG	reduce by rule 420
++	PIPELINE	reduce by rule 420
++	LOWERCASE	reduce by rule 420
++	UPPERCASE	reduce by rule 420
++	VERBATIM	reduce by rule 420
++	RTL	reduce by rule 420
++	SPAN	reduce by rule 420
++	DELAYSLOT	reduce by rule 420
++	ALWAYS	reduce by rule 420
++	NEVER	reduce by rule 420
++	NONFIX	reduce by rule 420
++	INFIX	reduce by rule 420
++	INFIXR	reduce by rule 420
++	DEBUG	reduce by rule 420
++	ASM_COLON	reduce by rule 420
++	MC_COLON	reduce by rule 420
++	RTL_COLON	reduce by rule 420
++	DELAYSLOT_COLON	reduce by rule 420
++	NULLIFIED_COLON	reduce by rule 420
++	PADDING_COLON	reduce by rule 420
++	RESOURCE	reduce by rule 420
++	CPU	reduce by rule 420
++	LATENCY	reduce by rule 420
++	EXCEPTION	reduce by rule 420
++	ID	reduce by rule 420
++	SYMBOL	reduce by rule 420
++	WORD	reduce by rule 420
++	INT	reduce by rule 420
++	INTINF	reduce by rule 420
++	REAL	reduce by rule 420
++	STRING	reduce by rule 420
++	CHAR	reduce by rule 420
++	EOF	reduce by rule 420
++
++
++	.	error
++
++
++state 72:
++
++	symb : TIMES .  (reduce by rule 418)
++
++	ARCHITECTURE	reduce by rule 418
++	END	reduce by rule 418
++	LOCAL	reduce by rule 418
++	IN	reduce by rule 418
++	OF	reduce by rule 418
++	DATATYPE	reduce by rule 418
++	TYPE	reduce by rule 418
++	EQ	reduce by rule 418
++	DOLLAR	reduce by rule 418
++	TIMES	reduce by rule 418
++	AND	reduce by rule 418
++	DEREF	reduce by rule 418
++	NOT	reduce by rule 418
++	CONCAT	reduce by rule 418
++	LLBRACKET	reduce by rule 418
++	RRBRACKET	reduce by rule 418
++	LHASHBRACKET	reduce by rule 418
++	LPAREN	reduce by rule 418
++	RPAREN	reduce by rule 418
++	LBRACKET	reduce by rule 418
++	RBRACKET	reduce by rule 418
++	LBRACE	reduce by rule 418
++	RBRACE	reduce by rule 418
++	SEMICOLON	reduce by rule 418
++	LDQUOTE	reduce by rule 418
++	RMETA	reduce by rule 418
++	CELLSET	reduce by rule 418
++	STORAGE	reduce by rule 418
++	LOCATIONS	reduce by rule 418
++	HASH	reduce by rule 418
++	COMMA	reduce by rule 418
++	COLON	reduce by rule 418
++	DOT	reduce by rule 418
++	AT	reduce by rule 418
++	BAR	reduce by rule 418
++	DARROW	reduce by rule 418
++	THEN	reduce by rule 418
++	ELSE	reduce by rule 418
++	TRUE	reduce by rule 418
++	FALSE	reduce by rule 418
++	WILD	reduce by rule 418
++	HANDLE	reduce by rule 418
++	LET	reduce by rule 418
++	STRUCTURE	reduce by rule 418
++	FUNCTOR	reduce by rule 418
++	SIGNATURE	reduce by rule 418
++	WHERE	reduce by rule 418
++	SHARING	reduce by rule 418
++	INSTRUCTION	reduce by rule 418
++	VLIW	reduce by rule 418
++	SUPERSCALAR	reduce by rule 418
++	AS	reduce by rule 418
++	WITHTYPE	reduce by rule 418
++	FUN	reduce by rule 418
++	VAL	reduce by rule 418
++	INCLUDE	reduce by rule 418
++	OPEN	reduce by rule 418
++	OP	reduce by rule 418
++	LITTLE	reduce by rule 418
++	BIG	reduce by rule 418
++	PIPELINE	reduce by rule 418
++	LOWERCASE	reduce by rule 418
++	UPPERCASE	reduce by rule 418
++	VERBATIM	reduce by rule 418
++	RTL	reduce by rule 418
++	SPAN	reduce by rule 418
++	DELAYSLOT	reduce by rule 418
++	ALWAYS	reduce by rule 418
++	NEVER	reduce by rule 418
++	NONFIX	reduce by rule 418
++	INFIX	reduce by rule 418
++	INFIXR	reduce by rule 418
++	DEBUG	reduce by rule 418
++	ASM_COLON	reduce by rule 418
++	MC_COLON	reduce by rule 418
++	RTL_COLON	reduce by rule 418
++	DELAYSLOT_COLON	reduce by rule 418
++	NULLIFIED_COLON	reduce by rule 418
++	PADDING_COLON	reduce by rule 418
++	RESOURCE	reduce by rule 418
++	CPU	reduce by rule 418
++	LATENCY	reduce by rule 418
++	EXCEPTION	reduce by rule 418
++	ID	reduce by rule 418
++	SYMBOL	reduce by rule 418
++	WORD	reduce by rule 418
++	INT	reduce by rule 418
++	INTINF	reduce by rule 418
++	REAL	reduce by rule 418
++	STRING	reduce by rule 418
++	CHAR	reduce by rule 418
++	EOF	reduce by rule 418
++
++
++	.	error
++
++
++state 73:
++
++	bool : False .  (reduce by rule 430)
++
++	ARCHITECTURE	reduce by rule 430
++	END	reduce by rule 430
++	LOCAL	reduce by rule 430
++	IN	reduce by rule 430
++	OF	reduce by rule 430
++	DATATYPE	reduce by rule 430
++	TYPE	reduce by rule 430
++	EQ	reduce by rule 430
++	DOLLAR	reduce by rule 430
++	TIMES	reduce by rule 430
++	AND	reduce by rule 430
++	DEREF	reduce by rule 430
++	NOT	reduce by rule 430
++	LLBRACKET	reduce by rule 430
++	LHASHBRACKET	reduce by rule 430
++	LPAREN	reduce by rule 430
++	RPAREN	reduce by rule 430
++	LBRACKET	reduce by rule 430
++	RBRACKET	reduce by rule 430
++	LBRACE	reduce by rule 430
++	RBRACE	reduce by rule 430
++	SEMICOLON	reduce by rule 430
++	LDQUOTE	reduce by rule 430
++	RMETA	reduce by rule 430
++	CELLSET	reduce by rule 430
++	STORAGE	reduce by rule 430
++	LOCATIONS	reduce by rule 430
++	HASH	reduce by rule 430
++	COMMA	reduce by rule 430
++	COLON	reduce by rule 430
++	AT	reduce by rule 430
++	BAR	reduce by rule 430
++	DARROW	reduce by rule 430
++	THEN	reduce by rule 430
++	ELSE	reduce by rule 430
++	TRUE	reduce by rule 430
++	FALSE	reduce by rule 430
++	WILD	reduce by rule 430
++	HANDLE	reduce by rule 430
++	LET	reduce by rule 430
++	STRUCTURE	reduce by rule 430
++	FUNCTOR	reduce by rule 430
++	SIGNATURE	reduce by rule 430
++	WHERE	reduce by rule 430
++	SHARING	reduce by rule 430
++	INSTRUCTION	reduce by rule 430
++	VLIW	reduce by rule 430
++	SUPERSCALAR	reduce by rule 430
++	WITHTYPE	reduce by rule 430
++	FUN	reduce by rule 430
++	VAL	reduce by rule 430
++	INCLUDE	reduce by rule 430
++	OPEN	reduce by rule 430
++	OP	reduce by rule 430
++	LITTLE	reduce by rule 430
++	BIG	reduce by rule 430
++	PIPELINE	reduce by rule 430
++	LOWERCASE	reduce by rule 430
++	UPPERCASE	reduce by rule 430
++	VERBATIM	reduce by rule 430
++	RTL	reduce by rule 430
++	SPAN	reduce by rule 430
++	DELAYSLOT	reduce by rule 430
++	ALWAYS	reduce by rule 430
++	NEVER	reduce by rule 430
++	NONFIX	reduce by rule 430
++	INFIX	reduce by rule 430
++	INFIXR	reduce by rule 430
++	DEBUG	reduce by rule 430
++	ASM_COLON	reduce by rule 430
++	MC_COLON	reduce by rule 430
++	RTL_COLON	reduce by rule 430
++	DELAYSLOT_COLON	reduce by rule 430
++	NULLIFIED_COLON	reduce by rule 430
++	PADDING_COLON	reduce by rule 430
++	RESOURCE	reduce by rule 430
++	CPU	reduce by rule 430
++	LATENCY	reduce by rule 430
++	EXCEPTION	reduce by rule 430
++	ID	reduce by rule 430
++	SYMBOL	reduce by rule 430
++	WORD	reduce by rule 430
++	INT	reduce by rule 430
++	INTINF	reduce by rule 430
++	REAL	reduce by rule 430
++	STRING	reduce by rule 430
++	CHAR	reduce by rule 430
++	EOF	reduce by rule 430
++
++
++	.	error
++
++
++state 74:
++
++	bool : True .  (reduce by rule 431)
++
++	ARCHITECTURE	reduce by rule 431
++	END	reduce by rule 431
++	LOCAL	reduce by rule 431
++	IN	reduce by rule 431
++	OF	reduce by rule 431
++	DATATYPE	reduce by rule 431
++	TYPE	reduce by rule 431
++	EQ	reduce by rule 431
++	DOLLAR	reduce by rule 431
++	TIMES	reduce by rule 431
++	AND	reduce by rule 431
++	DEREF	reduce by rule 431
++	NOT	reduce by rule 431
++	LLBRACKET	reduce by rule 431
++	LHASHBRACKET	reduce by rule 431
++	LPAREN	reduce by rule 431
++	RPAREN	reduce by rule 431
++	LBRACKET	reduce by rule 431
++	RBRACKET	reduce by rule 431
++	LBRACE	reduce by rule 431
++	RBRACE	reduce by rule 431
++	SEMICOLON	reduce by rule 431
++	LDQUOTE	reduce by rule 431
++	RMETA	reduce by rule 431
++	CELLSET	reduce by rule 431
++	STORAGE	reduce by rule 431
++	LOCATIONS	reduce by rule 431
++	HASH	reduce by rule 431
++	COMMA	reduce by rule 431
++	COLON	reduce by rule 431
++	AT	reduce by rule 431
++	BAR	reduce by rule 431
++	DARROW	reduce by rule 431
++	THEN	reduce by rule 431
++	ELSE	reduce by rule 431
++	TRUE	reduce by rule 431
++	FALSE	reduce by rule 431
++	WILD	reduce by rule 431
++	HANDLE	reduce by rule 431
++	LET	reduce by rule 431
++	STRUCTURE	reduce by rule 431
++	FUNCTOR	reduce by rule 431
++	SIGNATURE	reduce by rule 431
++	WHERE	reduce by rule 431
++	SHARING	reduce by rule 431
++	INSTRUCTION	reduce by rule 431
++	VLIW	reduce by rule 431
++	SUPERSCALAR	reduce by rule 431
++	WITHTYPE	reduce by rule 431
++	FUN	reduce by rule 431
++	VAL	reduce by rule 431
++	INCLUDE	reduce by rule 431
++	OPEN	reduce by rule 431
++	OP	reduce by rule 431
++	LITTLE	reduce by rule 431
++	BIG	reduce by rule 431
++	PIPELINE	reduce by rule 431
++	LOWERCASE	reduce by rule 431
++	UPPERCASE	reduce by rule 431
++	VERBATIM	reduce by rule 431
++	RTL	reduce by rule 431
++	SPAN	reduce by rule 431
++	DELAYSLOT	reduce by rule 431
++	ALWAYS	reduce by rule 431
++	NEVER	reduce by rule 431
++	NONFIX	reduce by rule 431
++	INFIX	reduce by rule 431
++	INFIXR	reduce by rule 431
++	DEBUG	reduce by rule 431
++	ASM_COLON	reduce by rule 431
++	MC_COLON	reduce by rule 431
++	RTL_COLON	reduce by rule 431
++	DELAYSLOT_COLON	reduce by rule 431
++	NULLIFIED_COLON	reduce by rule 431
++	PADDING_COLON	reduce by rule 431
++	RESOURCE	reduce by rule 431
++	CPU	reduce by rule 431
++	LATENCY	reduce by rule 431
++	EXCEPTION	reduce by rule 431
++	ID	reduce by rule 431
++	SYMBOL	reduce by rule 431
++	WORD	reduce by rule 431
++	INT	reduce by rule 431
++	INTINF	reduce by rule 431
++	REAL	reduce by rule 431
++	STRING	reduce by rule 431
++	CHAR	reduce by rule 431
++	EOF	reduce by rule 431
++
++
++	.	error
++
++
++state 75:
++
++	apat : literal .  (reduce by rule 291)
++
++	EQ	reduce by rule 291
++	TIMES	reduce by rule 291
++	AND	reduce by rule 291
++	DEREF	reduce by rule 291
++	NOT	reduce by rule 291
++	LHASHBRACKET	reduce by rule 291
++	LPAREN	reduce by rule 291
++	RPAREN	reduce by rule 291
++	LBRACKET	reduce by rule 291
++	RBRACKET	reduce by rule 291
++	LBRACE	reduce by rule 291
++	RBRACE	reduce by rule 291
++	CELLSET	reduce by rule 291
++	COMMA	reduce by rule 291
++	COLON	reduce by rule 291
++	BAR	reduce by rule 291
++	DARROW	reduce by rule 291
++	TRUE	reduce by rule 291
++	FALSE	reduce by rule 291
++	WILD	reduce by rule 291
++	WHERE	reduce by rule 291
++	OP	reduce by rule 291
++	ALWAYS	reduce by rule 291
++	NEVER	reduce by rule 291
++	EXCEPTION	reduce by rule 291
++	ID	reduce by rule 291
++	SYMBOL	reduce by rule 291
++	WORD	reduce by rule 291
++	INT	reduce by rule 291
++	INTINF	reduce by rule 291
++	REAL	reduce by rule 291
++	STRING	reduce by rule 291
++	CHAR	reduce by rule 291
++
++
++	.	error
++
++
++state 76:
++
++	literal : bool .  (reduce by rule 239)
++
++	ARCHITECTURE	reduce by rule 239
++	END	reduce by rule 239
++	LOCAL	reduce by rule 239
++	IN	reduce by rule 239
++	OF	reduce by rule 239
++	DATATYPE	reduce by rule 239
++	TYPE	reduce by rule 239
++	EQ	reduce by rule 239
++	DOLLAR	reduce by rule 239
++	TIMES	reduce by rule 239
++	AND	reduce by rule 239
++	DEREF	reduce by rule 239
++	NOT	reduce by rule 239
++	LLBRACKET	reduce by rule 239
++	LHASHBRACKET	reduce by rule 239
++	LPAREN	reduce by rule 239
++	RPAREN	reduce by rule 239
++	LBRACKET	reduce by rule 239
++	RBRACKET	reduce by rule 239
++	LBRACE	reduce by rule 239
++	RBRACE	reduce by rule 239
++	SEMICOLON	reduce by rule 239
++	LDQUOTE	reduce by rule 239
++	RMETA	reduce by rule 239
++	CELLSET	reduce by rule 239
++	STORAGE	reduce by rule 239
++	LOCATIONS	reduce by rule 239
++	HASH	reduce by rule 239
++	COMMA	reduce by rule 239
++	COLON	reduce by rule 239
++	AT	reduce by rule 239
++	BAR	reduce by rule 239
++	DARROW	reduce by rule 239
++	THEN	reduce by rule 239
++	ELSE	reduce by rule 239
++	TRUE	reduce by rule 239
++	FALSE	reduce by rule 239
++	WILD	reduce by rule 239
++	HANDLE	reduce by rule 239
++	LET	reduce by rule 239
++	STRUCTURE	reduce by rule 239
++	FUNCTOR	reduce by rule 239
++	SIGNATURE	reduce by rule 239
++	WHERE	reduce by rule 239
++	SHARING	reduce by rule 239
++	INSTRUCTION	reduce by rule 239
++	VLIW	reduce by rule 239
++	SUPERSCALAR	reduce by rule 239
++	WITHTYPE	reduce by rule 239
++	FUN	reduce by rule 239
++	VAL	reduce by rule 239
++	INCLUDE	reduce by rule 239
++	OPEN	reduce by rule 239
++	OP	reduce by rule 239
++	LITTLE	reduce by rule 239
++	BIG	reduce by rule 239
++	PIPELINE	reduce by rule 239
++	LOWERCASE	reduce by rule 239
++	UPPERCASE	reduce by rule 239
++	VERBATIM	reduce by rule 239
++	RTL	reduce by rule 239
++	SPAN	reduce by rule 239
++	DELAYSLOT	reduce by rule 239
++	ALWAYS	reduce by rule 239
++	NEVER	reduce by rule 239
++	NONFIX	reduce by rule 239
++	INFIX	reduce by rule 239
++	INFIXR	reduce by rule 239
++	DEBUG	reduce by rule 239
++	ASM_COLON	reduce by rule 239
++	MC_COLON	reduce by rule 239
++	RTL_COLON	reduce by rule 239
++	DELAYSLOT_COLON	reduce by rule 239
++	NULLIFIED_COLON	reduce by rule 239
++	PADDING_COLON	reduce by rule 239
++	RESOURCE	reduce by rule 239
++	CPU	reduce by rule 239
++	LATENCY	reduce by rule 239
++	EXCEPTION	reduce by rule 239
++	ID	reduce by rule 239
++	SYMBOL	reduce by rule 239
++	WORD	reduce by rule 239
++	INT	reduce by rule 239
++	INTINF	reduce by rule 239
++	REAL	reduce by rule 239
++	STRING	reduce by rule 239
++	CHAR	reduce by rule 239
++	EOF	reduce by rule 239
++
++
++	.	error
++
++
++state 77:
++
++	literal : char .  (reduce by rule 238)
++
++	ARCHITECTURE	reduce by rule 238
++	END	reduce by rule 238
++	LOCAL	reduce by rule 238
++	IN	reduce by rule 238
++	OF	reduce by rule 238
++	DATATYPE	reduce by rule 238
++	TYPE	reduce by rule 238
++	EQ	reduce by rule 238
++	DOLLAR	reduce by rule 238
++	TIMES	reduce by rule 238
++	AND	reduce by rule 238
++	DEREF	reduce by rule 238
++	NOT	reduce by rule 238
++	LLBRACKET	reduce by rule 238
++	LHASHBRACKET	reduce by rule 238
++	LPAREN	reduce by rule 238
++	RPAREN	reduce by rule 238
++	LBRACKET	reduce by rule 238
++	RBRACKET	reduce by rule 238
++	LBRACE	reduce by rule 238
++	RBRACE	reduce by rule 238
++	SEMICOLON	reduce by rule 238
++	LDQUOTE	reduce by rule 238
++	RMETA	reduce by rule 238
++	CELLSET	reduce by rule 238
++	STORAGE	reduce by rule 238
++	LOCATIONS	reduce by rule 238
++	HASH	reduce by rule 238
++	COMMA	reduce by rule 238
++	COLON	reduce by rule 238
++	AT	reduce by rule 238
++	BAR	reduce by rule 238
++	DARROW	reduce by rule 238
++	THEN	reduce by rule 238
++	ELSE	reduce by rule 238
++	TRUE	reduce by rule 238
++	FALSE	reduce by rule 238
++	WILD	reduce by rule 238
++	HANDLE	reduce by rule 238
++	LET	reduce by rule 238
++	STRUCTURE	reduce by rule 238
++	FUNCTOR	reduce by rule 238
++	SIGNATURE	reduce by rule 238
++	WHERE	reduce by rule 238
++	SHARING	reduce by rule 238
++	INSTRUCTION	reduce by rule 238
++	VLIW	reduce by rule 238
++	SUPERSCALAR	reduce by rule 238
++	WITHTYPE	reduce by rule 238
++	FUN	reduce by rule 238
++	VAL	reduce by rule 238
++	INCLUDE	reduce by rule 238
++	OPEN	reduce by rule 238
++	OP	reduce by rule 238
++	LITTLE	reduce by rule 238
++	BIG	reduce by rule 238
++	PIPELINE	reduce by rule 238
++	LOWERCASE	reduce by rule 238
++	UPPERCASE	reduce by rule 238
++	VERBATIM	reduce by rule 238
++	RTL	reduce by rule 238
++	SPAN	reduce by rule 238
++	DELAYSLOT	reduce by rule 238
++	ALWAYS	reduce by rule 238
++	NEVER	reduce by rule 238
++	NONFIX	reduce by rule 238
++	INFIX	reduce by rule 238
++	INFIXR	reduce by rule 238
++	DEBUG	reduce by rule 238
++	ASM_COLON	reduce by rule 238
++	MC_COLON	reduce by rule 238
++	RTL_COLON	reduce by rule 238
++	DELAYSLOT_COLON	reduce by rule 238
++	NULLIFIED_COLON	reduce by rule 238
++	PADDING_COLON	reduce by rule 238
++	RESOURCE	reduce by rule 238
++	CPU	reduce by rule 238
++	LATENCY	reduce by rule 238
++	EXCEPTION	reduce by rule 238
++	ID	reduce by rule 238
++	SYMBOL	reduce by rule 238
++	WORD	reduce by rule 238
++	INT	reduce by rule 238
++	INTINF	reduce by rule 238
++	REAL	reduce by rule 238
++	STRING	reduce by rule 238
++	CHAR	reduce by rule 238
++	EOF	reduce by rule 238
++
++
++	.	error
++
++
++state 78:
++
++	literal : string .  (reduce by rule 237)
++
++	ARCHITECTURE	reduce by rule 237
++	END	reduce by rule 237
++	LOCAL	reduce by rule 237
++	IN	reduce by rule 237
++	OF	reduce by rule 237
++	DATATYPE	reduce by rule 237
++	TYPE	reduce by rule 237
++	EQ	reduce by rule 237
++	DOLLAR	reduce by rule 237
++	TIMES	reduce by rule 237
++	AND	reduce by rule 237
++	DEREF	reduce by rule 237
++	NOT	reduce by rule 237
++	LLBRACKET	reduce by rule 237
++	LHASHBRACKET	reduce by rule 237
++	LPAREN	reduce by rule 237
++	RPAREN	reduce by rule 237
++	LBRACKET	reduce by rule 237
++	RBRACKET	reduce by rule 237
++	LBRACE	reduce by rule 237
++	RBRACE	reduce by rule 237
++	SEMICOLON	reduce by rule 237
++	LDQUOTE	reduce by rule 237
++	RMETA	reduce by rule 237
++	CELLSET	reduce by rule 237
++	STORAGE	reduce by rule 237
++	LOCATIONS	reduce by rule 237
++	HASH	reduce by rule 237
++	COMMA	reduce by rule 237
++	COLON	reduce by rule 237
++	AT	reduce by rule 237
++	BAR	reduce by rule 237
++	DARROW	reduce by rule 237
++	THEN	reduce by rule 237
++	ELSE	reduce by rule 237
++	TRUE	reduce by rule 237
++	FALSE	reduce by rule 237
++	WILD	reduce by rule 237
++	HANDLE	reduce by rule 237
++	LET	reduce by rule 237
++	STRUCTURE	reduce by rule 237
++	FUNCTOR	reduce by rule 237
++	SIGNATURE	reduce by rule 237
++	WHERE	reduce by rule 237
++	SHARING	reduce by rule 237
++	INSTRUCTION	reduce by rule 237
++	VLIW	reduce by rule 237
++	SUPERSCALAR	reduce by rule 237
++	WITHTYPE	reduce by rule 237
++	FUN	reduce by rule 237
++	VAL	reduce by rule 237
++	INCLUDE	reduce by rule 237
++	OPEN	reduce by rule 237
++	OP	reduce by rule 237
++	LITTLE	reduce by rule 237
++	BIG	reduce by rule 237
++	PIPELINE	reduce by rule 237
++	LOWERCASE	reduce by rule 237
++	UPPERCASE	reduce by rule 237
++	VERBATIM	reduce by rule 237
++	RTL	reduce by rule 237
++	SPAN	reduce by rule 237
++	DELAYSLOT	reduce by rule 237
++	ALWAYS	reduce by rule 237
++	NEVER	reduce by rule 237
++	NONFIX	reduce by rule 237
++	INFIX	reduce by rule 237
++	INFIXR	reduce by rule 237
++	DEBUG	reduce by rule 237
++	ASM_COLON	reduce by rule 237
++	MC_COLON	reduce by rule 237
++	RTL_COLON	reduce by rule 237
++	DELAYSLOT_COLON	reduce by rule 237
++	NULLIFIED_COLON	reduce by rule 237
++	PADDING_COLON	reduce by rule 237
++	RESOURCE	reduce by rule 237
++	CPU	reduce by rule 237
++	LATENCY	reduce by rule 237
++	EXCEPTION	reduce by rule 237
++	ID	reduce by rule 237
++	SYMBOL	reduce by rule 237
++	WORD	reduce by rule 237
++	INT	reduce by rule 237
++	INTINF	reduce by rule 237
++	REAL	reduce by rule 237
++	STRING	reduce by rule 237
++	CHAR	reduce by rule 237
++	EOF	reduce by rule 237
++
++
++	.	error
++
++
++state 79:
++
++	literal : real .  (reduce by rule 240)
++
++	ARCHITECTURE	reduce by rule 240
++	END	reduce by rule 240
++	LOCAL	reduce by rule 240
++	IN	reduce by rule 240
++	OF	reduce by rule 240
++	DATATYPE	reduce by rule 240
++	TYPE	reduce by rule 240
++	EQ	reduce by rule 240
++	DOLLAR	reduce by rule 240
++	TIMES	reduce by rule 240
++	AND	reduce by rule 240
++	DEREF	reduce by rule 240
++	NOT	reduce by rule 240
++	LLBRACKET	reduce by rule 240
++	LHASHBRACKET	reduce by rule 240
++	LPAREN	reduce by rule 240
++	RPAREN	reduce by rule 240
++	LBRACKET	reduce by rule 240
++	RBRACKET	reduce by rule 240
++	LBRACE	reduce by rule 240
++	RBRACE	reduce by rule 240
++	SEMICOLON	reduce by rule 240
++	LDQUOTE	reduce by rule 240
++	RMETA	reduce by rule 240
++	CELLSET	reduce by rule 240
++	STORAGE	reduce by rule 240
++	LOCATIONS	reduce by rule 240
++	HASH	reduce by rule 240
++	COMMA	reduce by rule 240
++	COLON	reduce by rule 240
++	AT	reduce by rule 240
++	BAR	reduce by rule 240
++	DARROW	reduce by rule 240
++	THEN	reduce by rule 240
++	ELSE	reduce by rule 240
++	TRUE	reduce by rule 240
++	FALSE	reduce by rule 240
++	WILD	reduce by rule 240
++	HANDLE	reduce by rule 240
++	LET	reduce by rule 240
++	STRUCTURE	reduce by rule 240
++	FUNCTOR	reduce by rule 240
++	SIGNATURE	reduce by rule 240
++	WHERE	reduce by rule 240
++	SHARING	reduce by rule 240
++	INSTRUCTION	reduce by rule 240
++	VLIW	reduce by rule 240
++	SUPERSCALAR	reduce by rule 240
++	WITHTYPE	reduce by rule 240
++	FUN	reduce by rule 240
++	VAL	reduce by rule 240
++	INCLUDE	reduce by rule 240
++	OPEN	reduce by rule 240
++	OP	reduce by rule 240
++	LITTLE	reduce by rule 240
++	BIG	reduce by rule 240
++	PIPELINE	reduce by rule 240
++	LOWERCASE	reduce by rule 240
++	UPPERCASE	reduce by rule 240
++	VERBATIM	reduce by rule 240
++	RTL	reduce by rule 240
++	SPAN	reduce by rule 240
++	DELAYSLOT	reduce by rule 240
++	ALWAYS	reduce by rule 240
++	NEVER	reduce by rule 240
++	NONFIX	reduce by rule 240
++	INFIX	reduce by rule 240
++	INFIXR	reduce by rule 240
++	DEBUG	reduce by rule 240
++	ASM_COLON	reduce by rule 240
++	MC_COLON	reduce by rule 240
++	RTL_COLON	reduce by rule 240
++	DELAYSLOT_COLON	reduce by rule 240
++	NULLIFIED_COLON	reduce by rule 240
++	PADDING_COLON	reduce by rule 240
++	RESOURCE	reduce by rule 240
++	CPU	reduce by rule 240
++	LATENCY	reduce by rule 240
++	EXCEPTION	reduce by rule 240
++	ID	reduce by rule 240
++	SYMBOL	reduce by rule 240
++	WORD	reduce by rule 240
++	INT	reduce by rule 240
++	INTINF	reduce by rule 240
++	REAL	reduce by rule 240
++	STRING	reduce by rule 240
++	CHAR	reduce by rule 240
++	EOF	reduce by rule 240
++
++
++	.	error
++
++
++state 80:
++
++	literal : intinf .  (reduce by rule 236)
++
++	ARCHITECTURE	reduce by rule 236
++	END	reduce by rule 236
++	LOCAL	reduce by rule 236
++	IN	reduce by rule 236
++	OF	reduce by rule 236
++	DATATYPE	reduce by rule 236
++	TYPE	reduce by rule 236
++	EQ	reduce by rule 236
++	DOLLAR	reduce by rule 236
++	TIMES	reduce by rule 236
++	AND	reduce by rule 236
++	DEREF	reduce by rule 236
++	NOT	reduce by rule 236
++	LLBRACKET	reduce by rule 236
++	LHASHBRACKET	reduce by rule 236
++	LPAREN	reduce by rule 236
++	RPAREN	reduce by rule 236
++	LBRACKET	reduce by rule 236
++	RBRACKET	reduce by rule 236
++	LBRACE	reduce by rule 236
++	RBRACE	reduce by rule 236
++	SEMICOLON	reduce by rule 236
++	LDQUOTE	reduce by rule 236
++	RMETA	reduce by rule 236
++	CELLSET	reduce by rule 236
++	STORAGE	reduce by rule 236
++	LOCATIONS	reduce by rule 236
++	HASH	reduce by rule 236
++	COMMA	reduce by rule 236
++	COLON	reduce by rule 236
++	AT	reduce by rule 236
++	BAR	reduce by rule 236
++	DARROW	reduce by rule 236
++	THEN	reduce by rule 236
++	ELSE	reduce by rule 236
++	TRUE	reduce by rule 236
++	FALSE	reduce by rule 236
++	WILD	reduce by rule 236
++	HANDLE	reduce by rule 236
++	LET	reduce by rule 236
++	STRUCTURE	reduce by rule 236
++	FUNCTOR	reduce by rule 236
++	SIGNATURE	reduce by rule 236
++	WHERE	reduce by rule 236
++	SHARING	reduce by rule 236
++	INSTRUCTION	reduce by rule 236
++	VLIW	reduce by rule 236
++	SUPERSCALAR	reduce by rule 236
++	WITHTYPE	reduce by rule 236
++	FUN	reduce by rule 236
++	VAL	reduce by rule 236
++	INCLUDE	reduce by rule 236
++	OPEN	reduce by rule 236
++	OP	reduce by rule 236
++	LITTLE	reduce by rule 236
++	BIG	reduce by rule 236
++	PIPELINE	reduce by rule 236
++	LOWERCASE	reduce by rule 236
++	UPPERCASE	reduce by rule 236
++	VERBATIM	reduce by rule 236
++	RTL	reduce by rule 236
++	SPAN	reduce by rule 236
++	DELAYSLOT	reduce by rule 236
++	ALWAYS	reduce by rule 236
++	NEVER	reduce by rule 236
++	NONFIX	reduce by rule 236
++	INFIX	reduce by rule 236
++	INFIXR	reduce by rule 236
++	DEBUG	reduce by rule 236
++	ASM_COLON	reduce by rule 236
++	MC_COLON	reduce by rule 236
++	RTL_COLON	reduce by rule 236
++	DELAYSLOT_COLON	reduce by rule 236
++	NULLIFIED_COLON	reduce by rule 236
++	PADDING_COLON	reduce by rule 236
++	RESOURCE	reduce by rule 236
++	CPU	reduce by rule 236
++	LATENCY	reduce by rule 236
++	EXCEPTION	reduce by rule 236
++	ID	reduce by rule 236
++	SYMBOL	reduce by rule 236
++	WORD	reduce by rule 236
++	INT	reduce by rule 236
++	INTINF	reduce by rule 236
++	REAL	reduce by rule 236
++	STRING	reduce by rule 236
++	CHAR	reduce by rule 236
++	EOF	reduce by rule 236
++
++
++	.	error
++
++
++state 81:
++
++	literal : int .  (reduce by rule 235)
++
++	ARCHITECTURE	reduce by rule 235
++	END	reduce by rule 235
++	LOCAL	reduce by rule 235
++	IN	reduce by rule 235
++	OF	reduce by rule 235
++	DATATYPE	reduce by rule 235
++	TYPE	reduce by rule 235
++	EQ	reduce by rule 235
++	DOLLAR	reduce by rule 235
++	TIMES	reduce by rule 235
++	AND	reduce by rule 235
++	DEREF	reduce by rule 235
++	NOT	reduce by rule 235
++	LLBRACKET	reduce by rule 235
++	LHASHBRACKET	reduce by rule 235
++	LPAREN	reduce by rule 235
++	RPAREN	reduce by rule 235
++	LBRACKET	reduce by rule 235
++	RBRACKET	reduce by rule 235
++	LBRACE	reduce by rule 235
++	RBRACE	reduce by rule 235
++	SEMICOLON	reduce by rule 235
++	LDQUOTE	reduce by rule 235
++	RMETA	reduce by rule 235
++	CELLSET	reduce by rule 235
++	STORAGE	reduce by rule 235
++	LOCATIONS	reduce by rule 235
++	HASH	reduce by rule 235
++	COMMA	reduce by rule 235
++	COLON	reduce by rule 235
++	AT	reduce by rule 235
++	BAR	reduce by rule 235
++	DARROW	reduce by rule 235
++	THEN	reduce by rule 235
++	ELSE	reduce by rule 235
++	TRUE	reduce by rule 235
++	FALSE	reduce by rule 235
++	WILD	reduce by rule 235
++	HANDLE	reduce by rule 235
++	LET	reduce by rule 235
++	STRUCTURE	reduce by rule 235
++	FUNCTOR	reduce by rule 235
++	SIGNATURE	reduce by rule 235
++	WHERE	reduce by rule 235
++	SHARING	reduce by rule 235
++	INSTRUCTION	reduce by rule 235
++	VLIW	reduce by rule 235
++	SUPERSCALAR	reduce by rule 235
++	WITHTYPE	reduce by rule 235
++	FUN	reduce by rule 235
++	VAL	reduce by rule 235
++	INCLUDE	reduce by rule 235
++	OPEN	reduce by rule 235
++	OP	reduce by rule 235
++	LITTLE	reduce by rule 235
++	BIG	reduce by rule 235
++	PIPELINE	reduce by rule 235
++	LOWERCASE	reduce by rule 235
++	UPPERCASE	reduce by rule 235
++	VERBATIM	reduce by rule 235
++	RTL	reduce by rule 235
++	SPAN	reduce by rule 235
++	DELAYSLOT	reduce by rule 235
++	ALWAYS	reduce by rule 235
++	NEVER	reduce by rule 235
++	NONFIX	reduce by rule 235
++	INFIX	reduce by rule 235
++	INFIXR	reduce by rule 235
++	DEBUG	reduce by rule 235
++	ASM_COLON	reduce by rule 235
++	MC_COLON	reduce by rule 235
++	RTL_COLON	reduce by rule 235
++	DELAYSLOT_COLON	reduce by rule 235
++	NULLIFIED_COLON	reduce by rule 235
++	PADDING_COLON	reduce by rule 235
++	RESOURCE	reduce by rule 235
++	CPU	reduce by rule 235
++	LATENCY	reduce by rule 235
++	EXCEPTION	reduce by rule 235
++	ID	reduce by rule 235
++	SYMBOL	reduce by rule 235
++	WORD	reduce by rule 235
++	INT	reduce by rule 235
++	INTINF	reduce by rule 235
++	REAL	reduce by rule 235
++	STRING	reduce by rule 235
++	CHAR	reduce by rule 235
++	EOF	reduce by rule 235
++
++
++	.	error
++
++
++state 82:
++
++	literal : word .  (reduce by rule 234)
++
++	ARCHITECTURE	reduce by rule 234
++	END	reduce by rule 234
++	LOCAL	reduce by rule 234
++	IN	reduce by rule 234
++	OF	reduce by rule 234
++	DATATYPE	reduce by rule 234
++	TYPE	reduce by rule 234
++	EQ	reduce by rule 234
++	DOLLAR	reduce by rule 234
++	TIMES	reduce by rule 234
++	AND	reduce by rule 234
++	DEREF	reduce by rule 234
++	NOT	reduce by rule 234
++	LLBRACKET	reduce by rule 234
++	LHASHBRACKET	reduce by rule 234
++	LPAREN	reduce by rule 234
++	RPAREN	reduce by rule 234
++	LBRACKET	reduce by rule 234
++	RBRACKET	reduce by rule 234
++	LBRACE	reduce by rule 234
++	RBRACE	reduce by rule 234
++	SEMICOLON	reduce by rule 234
++	LDQUOTE	reduce by rule 234
++	RMETA	reduce by rule 234
++	CELLSET	reduce by rule 234
++	STORAGE	reduce by rule 234
++	LOCATIONS	reduce by rule 234
++	HASH	reduce by rule 234
++	COMMA	reduce by rule 234
++	COLON	reduce by rule 234
++	AT	reduce by rule 234
++	BAR	reduce by rule 234
++	DARROW	reduce by rule 234
++	THEN	reduce by rule 234
++	ELSE	reduce by rule 234
++	TRUE	reduce by rule 234
++	FALSE	reduce by rule 234
++	WILD	reduce by rule 234
++	HANDLE	reduce by rule 234
++	LET	reduce by rule 234
++	STRUCTURE	reduce by rule 234
++	FUNCTOR	reduce by rule 234
++	SIGNATURE	reduce by rule 234
++	WHERE	reduce by rule 234
++	SHARING	reduce by rule 234
++	INSTRUCTION	reduce by rule 234
++	VLIW	reduce by rule 234
++	SUPERSCALAR	reduce by rule 234
++	WITHTYPE	reduce by rule 234
++	FUN	reduce by rule 234
++	VAL	reduce by rule 234
++	INCLUDE	reduce by rule 234
++	OPEN	reduce by rule 234
++	OP	reduce by rule 234
++	LITTLE	reduce by rule 234
++	BIG	reduce by rule 234
++	PIPELINE	reduce by rule 234
++	LOWERCASE	reduce by rule 234
++	UPPERCASE	reduce by rule 234
++	VERBATIM	reduce by rule 234
++	RTL	reduce by rule 234
++	SPAN	reduce by rule 234
++	DELAYSLOT	reduce by rule 234
++	ALWAYS	reduce by rule 234
++	NEVER	reduce by rule 234
++	NONFIX	reduce by rule 234
++	INFIX	reduce by rule 234
++	INFIXR	reduce by rule 234
++	DEBUG	reduce by rule 234
++	ASM_COLON	reduce by rule 234
++	MC_COLON	reduce by rule 234
++	RTL_COLON	reduce by rule 234
++	DELAYSLOT_COLON	reduce by rule 234
++	NULLIFIED_COLON	reduce by rule 234
++	PADDING_COLON	reduce by rule 234
++	RESOURCE	reduce by rule 234
++	CPU	reduce by rule 234
++	LATENCY	reduce by rule 234
++	EXCEPTION	reduce by rule 234
++	ID	reduce by rule 234
++	SYMBOL	reduce by rule 234
++	WORD	reduce by rule 234
++	INT	reduce by rule 234
++	INTINF	reduce by rule 234
++	REAL	reduce by rule 234
++	STRING	reduce by rule 234
++	CHAR	reduce by rule 234
++	EOF	reduce by rule 234
++
++
++	.	error
++
++
++state 83:
++
++	mymldecl : RTL asapat . EQ exp 
++
++	EQ	shift 181
++
++
++	.	error
++
++
++state 84:
++
++	asapat : apat .  (reduce by rule 319)
++
++	EQ	reduce by rule 319
++
++
++	.	error
++
++
++state 85:
++
++	ident2 : path .  (reduce by rule 423)
++	path : path . DOT sym 
++
++	ARCHITECTURE	reduce by rule 423
++	END	reduce by rule 423
++	LOCAL	reduce by rule 423
++	IN	reduce by rule 423
++	OF	reduce by rule 423
++	DATATYPE	reduce by rule 423
++	TYPE	reduce by rule 423
++	EQ	reduce by rule 423
++	DOLLAR	reduce by rule 423
++	TIMES	reduce by rule 423
++	AND	reduce by rule 423
++	DEREF	reduce by rule 423
++	NOT	reduce by rule 423
++	LLBRACKET	reduce by rule 423
++	LHASHBRACKET	reduce by rule 423
++	LPAREN	reduce by rule 423
++	RPAREN	reduce by rule 423
++	LBRACKET	reduce by rule 423
++	RBRACKET	reduce by rule 423
++	LBRACE	reduce by rule 423
++	RBRACE	reduce by rule 423
++	SEMICOLON	reduce by rule 423
++	LDQUOTE	reduce by rule 423
++	RMETA	reduce by rule 423
++	CELLSET	reduce by rule 423
++	STORAGE	reduce by rule 423
++	LOCATIONS	reduce by rule 423
++	HASH	reduce by rule 423
++	COMMA	reduce by rule 423
++	COLON	reduce by rule 423
++	DOT	shift 182
++	AT	reduce by rule 423
++	BAR	reduce by rule 423
++	DARROW	reduce by rule 423
++	THEN	reduce by rule 423
++	ELSE	reduce by rule 423
++	TRUE	reduce by rule 423
++	FALSE	reduce by rule 423
++	WILD	reduce by rule 423
++	HANDLE	reduce by rule 423
++	LET	reduce by rule 423
++	STRUCTURE	reduce by rule 423
++	FUNCTOR	reduce by rule 423
++	SIGNATURE	reduce by rule 423
++	WHERE	reduce by rule 423
++	SHARING	reduce by rule 423
++	INSTRUCTION	reduce by rule 423
++	VLIW	reduce by rule 423
++	SUPERSCALAR	reduce by rule 423
++	WITHTYPE	reduce by rule 423
++	FUN	reduce by rule 423
++	VAL	reduce by rule 423
++	INCLUDE	reduce by rule 423
++	OPEN	reduce by rule 423
++	OP	reduce by rule 423
++	LITTLE	reduce by rule 423
++	BIG	reduce by rule 423
++	PIPELINE	reduce by rule 423
++	LOWERCASE	reduce by rule 423
++	UPPERCASE	reduce by rule 423
++	VERBATIM	reduce by rule 423
++	RTL	reduce by rule 423
++	SPAN	reduce by rule 423
++	DELAYSLOT	reduce by rule 423
++	ALWAYS	reduce by rule 423
++	NEVER	reduce by rule 423
++	NONFIX	reduce by rule 423
++	INFIX	reduce by rule 423
++	INFIXR	reduce by rule 423
++	DEBUG	reduce by rule 423
++	ASM_COLON	reduce by rule 423
++	MC_COLON	reduce by rule 423
++	RTL_COLON	reduce by rule 423
++	DELAYSLOT_COLON	reduce by rule 423
++	NULLIFIED_COLON	reduce by rule 423
++	PADDING_COLON	reduce by rule 423
++	RESOURCE	reduce by rule 423
++	CPU	reduce by rule 423
++	LATENCY	reduce by rule 423
++	EXCEPTION	reduce by rule 423
++	ID	reduce by rule 423
++	SYMBOL	reduce by rule 423
++	WORD	reduce by rule 423
++	INT	reduce by rule 423
++	INTINF	reduce by rule 423
++	REAL	reduce by rule 423
++	STRING	reduce by rule 423
++	CHAR	reduce by rule 423
++	EOF	reduce by rule 423
++
++
++	.	error
++
++
++state 86:
++
++	mymldecl : RTL syms . COLON ty 
++
++	COLON	shift 183
++
++
++	.	error
++
++
++state 87:
++
++	apat : ident2 .  (reduce by rule 290)
++
++	EQ	reduce by rule 290
++	TIMES	reduce by rule 290
++	AND	reduce by rule 290
++	DEREF	reduce by rule 290
++	NOT	reduce by rule 290
++	LHASHBRACKET	reduce by rule 290
++	LPAREN	reduce by rule 290
++	RPAREN	reduce by rule 290
++	LBRACKET	reduce by rule 290
++	RBRACKET	reduce by rule 290
++	LBRACE	reduce by rule 290
++	RBRACE	reduce by rule 290
++	CELLSET	reduce by rule 290
++	COMMA	reduce by rule 290
++	COLON	reduce by rule 290
++	BAR	reduce by rule 290
++	DARROW	reduce by rule 290
++	TRUE	reduce by rule 290
++	FALSE	reduce by rule 290
++	WILD	reduce by rule 290
++	WHERE	reduce by rule 290
++	OP	reduce by rule 290
++	ALWAYS	reduce by rule 290
++	NEVER	reduce by rule 290
++	EXCEPTION	reduce by rule 290
++	ID	reduce by rule 290
++	SYMBOL	reduce by rule 290
++	WORD	reduce by rule 290
++	INT	reduce by rule 290
++	INTINF	reduce by rule 290
++	REAL	reduce by rule 290
++	STRING	reduce by rule 290
++	CHAR	reduce by rule 290
++
++
++	.	error
++
++
++state 88:
++
++	syms : sym .  (reduce by rule 109)
++	syms : sym . syms 
++	apat : sym . CONCAT LBRACKET pats RBRACKET 
++	apat : sym . CONCAT LBRACKET pats RBRACKET CONCAT sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CONCAT	shift 184
++	CELLSET	shift 50
++	COLON	reduce by rule 109
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 180
++
++	.	error
++
++
++state 89:
++
++	sym : id .  (reduce by rule 416)
++	path : id . DOT sym 
++	mymldecl : RTL id . LBRACE labpats0 RBRACE EQ exp 
++	asapat : id . AS asapat 
++
++	TIMES	reduce by rule 416
++	DEREF	reduce by rule 416
++	NOT	reduce by rule 416
++	CONCAT	reduce by rule 416
++	LBRACE	shift 187
++	CELLSET	reduce by rule 416
++	COLON	reduce by rule 416
++	DOT	shift 186
++	AS	shift 185
++	ID	reduce by rule 416
++	SYMBOL	reduce by rule 416
++
++
++	.	error
++
++
++state 90:
++
++	char : CHAR .  (reduce by rule 429)
++
++	ARCHITECTURE	reduce by rule 429
++	END	reduce by rule 429
++	LOCAL	reduce by rule 429
++	IN	reduce by rule 429
++	OF	reduce by rule 429
++	DATATYPE	reduce by rule 429
++	TYPE	reduce by rule 429
++	EQ	reduce by rule 429
++	DOLLAR	reduce by rule 429
++	TIMES	reduce by rule 429
++	AND	reduce by rule 429
++	DEREF	reduce by rule 429
++	NOT	reduce by rule 429
++	LLBRACKET	reduce by rule 429
++	LHASHBRACKET	reduce by rule 429
++	LPAREN	reduce by rule 429
++	RPAREN	reduce by rule 429
++	LBRACKET	reduce by rule 429
++	RBRACKET	reduce by rule 429
++	LBRACE	reduce by rule 429
++	RBRACE	reduce by rule 429
++	SEMICOLON	reduce by rule 429
++	LDQUOTE	reduce by rule 429
++	RMETA	reduce by rule 429
++	CELLSET	reduce by rule 429
++	STORAGE	reduce by rule 429
++	LOCATIONS	reduce by rule 429
++	HASH	reduce by rule 429
++	COMMA	reduce by rule 429
++	COLON	reduce by rule 429
++	AT	reduce by rule 429
++	BAR	reduce by rule 429
++	DARROW	reduce by rule 429
++	THEN	reduce by rule 429
++	ELSE	reduce by rule 429
++	TRUE	reduce by rule 429
++	FALSE	reduce by rule 429
++	WILD	reduce by rule 429
++	HANDLE	reduce by rule 429
++	LET	reduce by rule 429
++	STRUCTURE	reduce by rule 429
++	FUNCTOR	reduce by rule 429
++	SIGNATURE	reduce by rule 429
++	WHERE	reduce by rule 429
++	SHARING	reduce by rule 429
++	INSTRUCTION	reduce by rule 429
++	VLIW	reduce by rule 429
++	SUPERSCALAR	reduce by rule 429
++	WITHTYPE	reduce by rule 429
++	FUN	reduce by rule 429
++	VAL	reduce by rule 429
++	INCLUDE	reduce by rule 429
++	OPEN	reduce by rule 429
++	OP	reduce by rule 429
++	LITTLE	reduce by rule 429
++	BIG	reduce by rule 429
++	PIPELINE	reduce by rule 429
++	LOWERCASE	reduce by rule 429
++	UPPERCASE	reduce by rule 429
++	VERBATIM	reduce by rule 429
++	RTL	reduce by rule 429
++	SPAN	reduce by rule 429
++	DELAYSLOT	reduce by rule 429
++	ALWAYS	reduce by rule 429
++	NEVER	reduce by rule 429
++	NONFIX	reduce by rule 429
++	INFIX	reduce by rule 429
++	INFIXR	reduce by rule 429
++	DEBUG	reduce by rule 429
++	ASM_COLON	reduce by rule 429
++	MC_COLON	reduce by rule 429
++	RTL_COLON	reduce by rule 429
++	DELAYSLOT_COLON	reduce by rule 429
++	NULLIFIED_COLON	reduce by rule 429
++	PADDING_COLON	reduce by rule 429
++	RESOURCE	reduce by rule 429
++	CPU	reduce by rule 429
++	LATENCY	reduce by rule 429
++	EXCEPTION	reduce by rule 429
++	ID	reduce by rule 429
++	SYMBOL	reduce by rule 429
++	WORD	reduce by rule 429
++	INT	reduce by rule 429
++	INTINF	reduce by rule 429
++	REAL	reduce by rule 429
++	STRING	reduce by rule 429
++	CHAR	reduce by rule 429
++	EOF	reduce by rule 429
++
++
++	.	error
++
++
++state 91:
++
++	string : STRING .  (reduce by rule 428)
++
++	ARCHITECTURE	reduce by rule 428
++	END	reduce by rule 428
++	LOCAL	reduce by rule 428
++	IN	reduce by rule 428
++	OF	reduce by rule 428
++	DATATYPE	reduce by rule 428
++	TYPE	reduce by rule 428
++	EQ	reduce by rule 428
++	DOLLAR	reduce by rule 428
++	TIMES	reduce by rule 428
++	AND	reduce by rule 428
++	DEREF	reduce by rule 428
++	NOT	reduce by rule 428
++	LLBRACKET	reduce by rule 428
++	RRBRACKET	reduce by rule 428
++	LHASHBRACKET	reduce by rule 428
++	LPAREN	reduce by rule 428
++	RPAREN	reduce by rule 428
++	LBRACKET	reduce by rule 428
++	RBRACKET	reduce by rule 428
++	LBRACE	reduce by rule 428
++	RBRACE	reduce by rule 428
++	SEMICOLON	reduce by rule 428
++	LDQUOTE	reduce by rule 428
++	RMETA	reduce by rule 428
++	CELLSET	reduce by rule 428
++	STORAGE	reduce by rule 428
++	LOCATIONS	reduce by rule 428
++	HASH	reduce by rule 428
++	COMMA	reduce by rule 428
++	COLON	reduce by rule 428
++	AT	reduce by rule 428
++	BAR	reduce by rule 428
++	DARROW	reduce by rule 428
++	THEN	reduce by rule 428
++	ELSE	reduce by rule 428
++	TRUE	reduce by rule 428
++	FALSE	reduce by rule 428
++	WILD	reduce by rule 428
++	HANDLE	reduce by rule 428
++	LET	reduce by rule 428
++	STRUCTURE	reduce by rule 428
++	FUNCTOR	reduce by rule 428
++	SIGNATURE	reduce by rule 428
++	WHERE	reduce by rule 428
++	SHARING	reduce by rule 428
++	INSTRUCTION	reduce by rule 428
++	VLIW	reduce by rule 428
++	SUPERSCALAR	reduce by rule 428
++	WITHTYPE	reduce by rule 428
++	FUN	reduce by rule 428
++	VAL	reduce by rule 428
++	INCLUDE	reduce by rule 428
++	OPEN	reduce by rule 428
++	OP	reduce by rule 428
++	LITTLE	reduce by rule 428
++	BIG	reduce by rule 428
++	PIPELINE	reduce by rule 428
++	LOWERCASE	reduce by rule 428
++	UPPERCASE	reduce by rule 428
++	VERBATIM	reduce by rule 428
++	RTL	reduce by rule 428
++	SPAN	reduce by rule 428
++	DELAYSLOT	reduce by rule 428
++	ALWAYS	reduce by rule 428
++	NEVER	reduce by rule 428
++	NONFIX	reduce by rule 428
++	INFIX	reduce by rule 428
++	INFIXR	reduce by rule 428
++	DEBUG	reduce by rule 428
++	ASM_COLON	reduce by rule 428
++	MC_COLON	reduce by rule 428
++	RTL_COLON	reduce by rule 428
++	DELAYSLOT_COLON	reduce by rule 428
++	NULLIFIED_COLON	reduce by rule 428
++	PADDING_COLON	reduce by rule 428
++	RESOURCE	reduce by rule 428
++	CPU	reduce by rule 428
++	LATENCY	reduce by rule 428
++	EXCEPTION	reduce by rule 428
++	ID	reduce by rule 428
++	SYMBOL	reduce by rule 428
++	WORD	reduce by rule 428
++	INT	reduce by rule 428
++	INTINF	reduce by rule 428
++	REAL	reduce by rule 428
++	STRING	reduce by rule 428
++	CHAR	reduce by rule 428
++	EOF	reduce by rule 428
++
++
++	.	error
++
++
++state 92:
++
++	real : REAL .  (reduce by rule 399)
++
++	ARCHITECTURE	reduce by rule 399
++	END	reduce by rule 399
++	LOCAL	reduce by rule 399
++	IN	reduce by rule 399
++	OF	reduce by rule 399
++	DATATYPE	reduce by rule 399
++	TYPE	reduce by rule 399
++	EQ	reduce by rule 399
++	DOLLAR	reduce by rule 399
++	TIMES	reduce by rule 399
++	AND	reduce by rule 399
++	DEREF	reduce by rule 399
++	NOT	reduce by rule 399
++	LLBRACKET	reduce by rule 399
++	LHASHBRACKET	reduce by rule 399
++	LPAREN	reduce by rule 399
++	RPAREN	reduce by rule 399
++	LBRACKET	reduce by rule 399
++	RBRACKET	reduce by rule 399
++	LBRACE	reduce by rule 399
++	RBRACE	reduce by rule 399
++	SEMICOLON	reduce by rule 399
++	LDQUOTE	reduce by rule 399
++	RMETA	reduce by rule 399
++	CELLSET	reduce by rule 399
++	STORAGE	reduce by rule 399
++	LOCATIONS	reduce by rule 399
++	HASH	reduce by rule 399
++	COMMA	reduce by rule 399
++	COLON	reduce by rule 399
++	AT	reduce by rule 399
++	BAR	reduce by rule 399
++	DARROW	reduce by rule 399
++	THEN	reduce by rule 399
++	ELSE	reduce by rule 399
++	TRUE	reduce by rule 399
++	FALSE	reduce by rule 399
++	WILD	reduce by rule 399
++	HANDLE	reduce by rule 399
++	LET	reduce by rule 399
++	STRUCTURE	reduce by rule 399
++	FUNCTOR	reduce by rule 399
++	SIGNATURE	reduce by rule 399
++	WHERE	reduce by rule 399
++	SHARING	reduce by rule 399
++	INSTRUCTION	reduce by rule 399
++	VLIW	reduce by rule 399
++	SUPERSCALAR	reduce by rule 399
++	WITHTYPE	reduce by rule 399
++	FUN	reduce by rule 399
++	VAL	reduce by rule 399
++	INCLUDE	reduce by rule 399
++	OPEN	reduce by rule 399
++	OP	reduce by rule 399
++	LITTLE	reduce by rule 399
++	BIG	reduce by rule 399
++	PIPELINE	reduce by rule 399
++	LOWERCASE	reduce by rule 399
++	UPPERCASE	reduce by rule 399
++	VERBATIM	reduce by rule 399
++	RTL	reduce by rule 399
++	SPAN	reduce by rule 399
++	DELAYSLOT	reduce by rule 399
++	ALWAYS	reduce by rule 399
++	NEVER	reduce by rule 399
++	NONFIX	reduce by rule 399
++	INFIX	reduce by rule 399
++	INFIXR	reduce by rule 399
++	DEBUG	reduce by rule 399
++	ASM_COLON	reduce by rule 399
++	MC_COLON	reduce by rule 399
++	RTL_COLON	reduce by rule 399
++	DELAYSLOT_COLON	reduce by rule 399
++	NULLIFIED_COLON	reduce by rule 399
++	PADDING_COLON	reduce by rule 399
++	RESOURCE	reduce by rule 399
++	CPU	reduce by rule 399
++	LATENCY	reduce by rule 399
++	EXCEPTION	reduce by rule 399
++	ID	reduce by rule 399
++	SYMBOL	reduce by rule 399
++	WORD	reduce by rule 399
++	INT	reduce by rule 399
++	INTINF	reduce by rule 399
++	REAL	reduce by rule 399
++	STRING	reduce by rule 399
++	CHAR	reduce by rule 399
++	EOF	reduce by rule 399
++
++
++	.	error
++
++
++state 93:
++
++	intinf : INTINF .  (reduce by rule 398)
++
++	ARCHITECTURE	reduce by rule 398
++	END	reduce by rule 398
++	LOCAL	reduce by rule 398
++	IN	reduce by rule 398
++	OF	reduce by rule 398
++	DATATYPE	reduce by rule 398
++	TYPE	reduce by rule 398
++	EQ	reduce by rule 398
++	DOLLAR	reduce by rule 398
++	TIMES	reduce by rule 398
++	AND	reduce by rule 398
++	DEREF	reduce by rule 398
++	NOT	reduce by rule 398
++	LLBRACKET	reduce by rule 398
++	LHASHBRACKET	reduce by rule 398
++	LPAREN	reduce by rule 398
++	RPAREN	reduce by rule 398
++	LBRACKET	reduce by rule 398
++	RBRACKET	reduce by rule 398
++	LBRACE	reduce by rule 398
++	RBRACE	reduce by rule 398
++	SEMICOLON	reduce by rule 398
++	LDQUOTE	reduce by rule 398
++	RMETA	reduce by rule 398
++	CELLSET	reduce by rule 398
++	STORAGE	reduce by rule 398
++	LOCATIONS	reduce by rule 398
++	HASH	reduce by rule 398
++	COMMA	reduce by rule 398
++	COLON	reduce by rule 398
++	AT	reduce by rule 398
++	BAR	reduce by rule 398
++	DARROW	reduce by rule 398
++	THEN	reduce by rule 398
++	ELSE	reduce by rule 398
++	TRUE	reduce by rule 398
++	FALSE	reduce by rule 398
++	WILD	reduce by rule 398
++	HANDLE	reduce by rule 398
++	LET	reduce by rule 398
++	STRUCTURE	reduce by rule 398
++	FUNCTOR	reduce by rule 398
++	SIGNATURE	reduce by rule 398
++	WHERE	reduce by rule 398
++	SHARING	reduce by rule 398
++	INSTRUCTION	reduce by rule 398
++	VLIW	reduce by rule 398
++	SUPERSCALAR	reduce by rule 398
++	WITHTYPE	reduce by rule 398
++	FUN	reduce by rule 398
++	VAL	reduce by rule 398
++	INCLUDE	reduce by rule 398
++	OPEN	reduce by rule 398
++	OP	reduce by rule 398
++	LITTLE	reduce by rule 398
++	BIG	reduce by rule 398
++	PIPELINE	reduce by rule 398
++	LOWERCASE	reduce by rule 398
++	UPPERCASE	reduce by rule 398
++	VERBATIM	reduce by rule 398
++	RTL	reduce by rule 398
++	SPAN	reduce by rule 398
++	DELAYSLOT	reduce by rule 398
++	ALWAYS	reduce by rule 398
++	NEVER	reduce by rule 398
++	NONFIX	reduce by rule 398
++	INFIX	reduce by rule 398
++	INFIXR	reduce by rule 398
++	DEBUG	reduce by rule 398
++	ASM_COLON	reduce by rule 398
++	MC_COLON	reduce by rule 398
++	RTL_COLON	reduce by rule 398
++	DELAYSLOT_COLON	reduce by rule 398
++	NULLIFIED_COLON	reduce by rule 398
++	PADDING_COLON	reduce by rule 398
++	RESOURCE	reduce by rule 398
++	CPU	reduce by rule 398
++	LATENCY	reduce by rule 398
++	EXCEPTION	reduce by rule 398
++	ID	reduce by rule 398
++	SYMBOL	reduce by rule 398
++	WORD	reduce by rule 398
++	INT	reduce by rule 398
++	INTINF	reduce by rule 398
++	REAL	reduce by rule 398
++	STRING	reduce by rule 398
++	CHAR	reduce by rule 398
++	EOF	reduce by rule 398
++
++
++	.	error
++
++
++state 94:
++
++	word : WORD .  (reduce by rule 394)
++
++	ARCHITECTURE	reduce by rule 394
++	END	reduce by rule 394
++	LOCAL	reduce by rule 394
++	IN	reduce by rule 394
++	OF	reduce by rule 394
++	DATATYPE	reduce by rule 394
++	TYPE	reduce by rule 394
++	EQ	reduce by rule 394
++	DOLLAR	reduce by rule 394
++	TIMES	reduce by rule 394
++	AND	reduce by rule 394
++	DEREF	reduce by rule 394
++	NOT	reduce by rule 394
++	LLBRACKET	reduce by rule 394
++	LHASHBRACKET	reduce by rule 394
++	LPAREN	reduce by rule 394
++	RPAREN	reduce by rule 394
++	LBRACKET	reduce by rule 394
++	RBRACKET	reduce by rule 394
++	LBRACE	reduce by rule 394
++	RBRACE	reduce by rule 394
++	SEMICOLON	reduce by rule 394
++	LDQUOTE	reduce by rule 394
++	RMETA	reduce by rule 394
++	CELLSET	reduce by rule 394
++	STORAGE	reduce by rule 394
++	LOCATIONS	reduce by rule 394
++	HASH	reduce by rule 394
++	COMMA	reduce by rule 394
++	COLON	reduce by rule 394
++	AT	reduce by rule 394
++	BAR	reduce by rule 394
++	DARROW	reduce by rule 394
++	THEN	reduce by rule 394
++	ELSE	reduce by rule 394
++	TRUE	reduce by rule 394
++	FALSE	reduce by rule 394
++	WILD	reduce by rule 394
++	HANDLE	reduce by rule 394
++	LET	reduce by rule 394
++	STRUCTURE	reduce by rule 394
++	FUNCTOR	reduce by rule 394
++	SIGNATURE	reduce by rule 394
++	WHERE	reduce by rule 394
++	SHARING	reduce by rule 394
++	INSTRUCTION	reduce by rule 394
++	VLIW	reduce by rule 394
++	SUPERSCALAR	reduce by rule 394
++	WITHTYPE	reduce by rule 394
++	FUN	reduce by rule 394
++	VAL	reduce by rule 394
++	INCLUDE	reduce by rule 394
++	OPEN	reduce by rule 394
++	OP	reduce by rule 394
++	LITTLE	reduce by rule 394
++	BIG	reduce by rule 394
++	PIPELINE	reduce by rule 394
++	LOWERCASE	reduce by rule 394
++	UPPERCASE	reduce by rule 394
++	VERBATIM	reduce by rule 394
++	RTL	reduce by rule 394
++	SPAN	reduce by rule 394
++	DELAYSLOT	reduce by rule 394
++	ALWAYS	reduce by rule 394
++	NEVER	reduce by rule 394
++	NONFIX	reduce by rule 394
++	INFIX	reduce by rule 394
++	INFIXR	reduce by rule 394
++	DEBUG	reduce by rule 394
++	ASM_COLON	reduce by rule 394
++	MC_COLON	reduce by rule 394
++	RTL_COLON	reduce by rule 394
++	DELAYSLOT_COLON	reduce by rule 394
++	NULLIFIED_COLON	reduce by rule 394
++	PADDING_COLON	reduce by rule 394
++	RESOURCE	reduce by rule 394
++	CPU	reduce by rule 394
++	LATENCY	reduce by rule 394
++	EXCEPTION	reduce by rule 394
++	ID	reduce by rule 394
++	SYMBOL	reduce by rule 394
++	WORD	reduce by rule 394
++	INT	reduce by rule 394
++	INTINF	reduce by rule 394
++	REAL	reduce by rule 394
++	STRING	reduce by rule 394
++	CHAR	reduce by rule 394
++	EOF	reduce by rule 394
++
++
++	.	error
++
++
++state 95:
++
++	False : NEVER .  (reduce by rule 160)
++
++	ARCHITECTURE	reduce by rule 160
++	END	reduce by rule 160
++	LOCAL	reduce by rule 160
++	IN	reduce by rule 160
++	OF	reduce by rule 160
++	DATATYPE	reduce by rule 160
++	TYPE	reduce by rule 160
++	EQ	reduce by rule 160
++	DOLLAR	reduce by rule 160
++	TIMES	reduce by rule 160
++	AND	reduce by rule 160
++	DEREF	reduce by rule 160
++	NOT	reduce by rule 160
++	LLBRACKET	reduce by rule 160
++	LHASHBRACKET	reduce by rule 160
++	LPAREN	reduce by rule 160
++	RPAREN	reduce by rule 160
++	LBRACKET	reduce by rule 160
++	RBRACKET	reduce by rule 160
++	LBRACE	reduce by rule 160
++	RBRACE	reduce by rule 160
++	SEMICOLON	reduce by rule 160
++	LDQUOTE	reduce by rule 160
++	RMETA	reduce by rule 160
++	CELLSET	reduce by rule 160
++	STORAGE	reduce by rule 160
++	LOCATIONS	reduce by rule 160
++	HASH	reduce by rule 160
++	COMMA	reduce by rule 160
++	COLON	reduce by rule 160
++	AT	reduce by rule 160
++	BAR	reduce by rule 160
++	DARROW	reduce by rule 160
++	THEN	reduce by rule 160
++	ELSE	reduce by rule 160
++	TRUE	reduce by rule 160
++	FALSE	reduce by rule 160
++	WILD	reduce by rule 160
++	HANDLE	reduce by rule 160
++	LET	reduce by rule 160
++	STRUCTURE	reduce by rule 160
++	FUNCTOR	reduce by rule 160
++	SIGNATURE	reduce by rule 160
++	WHERE	reduce by rule 160
++	SHARING	reduce by rule 160
++	INSTRUCTION	reduce by rule 160
++	VLIW	reduce by rule 160
++	SUPERSCALAR	reduce by rule 160
++	WITHTYPE	reduce by rule 160
++	FUN	reduce by rule 160
++	VAL	reduce by rule 160
++	INCLUDE	reduce by rule 160
++	OPEN	reduce by rule 160
++	OP	reduce by rule 160
++	LITTLE	reduce by rule 160
++	BIG	reduce by rule 160
++	PIPELINE	reduce by rule 160
++	LOWERCASE	reduce by rule 160
++	UPPERCASE	reduce by rule 160
++	VERBATIM	reduce by rule 160
++	RTL	reduce by rule 160
++	SPAN	reduce by rule 160
++	DELAYSLOT	reduce by rule 160
++	ALWAYS	reduce by rule 160
++	NEVER	reduce by rule 160
++	NONFIX	reduce by rule 160
++	INFIX	reduce by rule 160
++	INFIXR	reduce by rule 160
++	DEBUG	reduce by rule 160
++	ASM_COLON	reduce by rule 160
++	MC_COLON	reduce by rule 160
++	RTL_COLON	reduce by rule 160
++	DELAYSLOT_COLON	reduce by rule 160
++	NULLIFIED_COLON	reduce by rule 160
++	PADDING_COLON	reduce by rule 160
++	RESOURCE	reduce by rule 160
++	CPU	reduce by rule 160
++	LATENCY	reduce by rule 160
++	EXCEPTION	reduce by rule 160
++	ID	reduce by rule 160
++	SYMBOL	reduce by rule 160
++	WORD	reduce by rule 160
++	INT	reduce by rule 160
++	INTINF	reduce by rule 160
++	REAL	reduce by rule 160
++	STRING	reduce by rule 160
++	CHAR	reduce by rule 160
++	EOF	reduce by rule 160
++
++
++	.	error
++
++
++state 96:
++
++	True : ALWAYS .  (reduce by rule 158)
++
++	ARCHITECTURE	reduce by rule 158
++	END	reduce by rule 158
++	LOCAL	reduce by rule 158
++	IN	reduce by rule 158
++	OF	reduce by rule 158
++	DATATYPE	reduce by rule 158
++	TYPE	reduce by rule 158
++	EQ	reduce by rule 158
++	DOLLAR	reduce by rule 158
++	TIMES	reduce by rule 158
++	AND	reduce by rule 158
++	DEREF	reduce by rule 158
++	NOT	reduce by rule 158
++	LLBRACKET	reduce by rule 158
++	LHASHBRACKET	reduce by rule 158
++	LPAREN	reduce by rule 158
++	RPAREN	reduce by rule 158
++	LBRACKET	reduce by rule 158
++	RBRACKET	reduce by rule 158
++	LBRACE	reduce by rule 158
++	RBRACE	reduce by rule 158
++	SEMICOLON	reduce by rule 158
++	LDQUOTE	reduce by rule 158
++	RMETA	reduce by rule 158
++	CELLSET	reduce by rule 158
++	STORAGE	reduce by rule 158
++	LOCATIONS	reduce by rule 158
++	HASH	reduce by rule 158
++	COMMA	reduce by rule 158
++	COLON	reduce by rule 158
++	AT	reduce by rule 158
++	BAR	reduce by rule 158
++	DARROW	reduce by rule 158
++	THEN	reduce by rule 158
++	ELSE	reduce by rule 158
++	TRUE	reduce by rule 158
++	FALSE	reduce by rule 158
++	WILD	reduce by rule 158
++	HANDLE	reduce by rule 158
++	LET	reduce by rule 158
++	STRUCTURE	reduce by rule 158
++	FUNCTOR	reduce by rule 158
++	SIGNATURE	reduce by rule 158
++	WHERE	reduce by rule 158
++	SHARING	reduce by rule 158
++	INSTRUCTION	reduce by rule 158
++	VLIW	reduce by rule 158
++	SUPERSCALAR	reduce by rule 158
++	WITHTYPE	reduce by rule 158
++	FUN	reduce by rule 158
++	VAL	reduce by rule 158
++	INCLUDE	reduce by rule 158
++	OPEN	reduce by rule 158
++	OP	reduce by rule 158
++	LITTLE	reduce by rule 158
++	BIG	reduce by rule 158
++	PIPELINE	reduce by rule 158
++	LOWERCASE	reduce by rule 158
++	UPPERCASE	reduce by rule 158
++	VERBATIM	reduce by rule 158
++	RTL	reduce by rule 158
++	SPAN	reduce by rule 158
++	DELAYSLOT	reduce by rule 158
++	ALWAYS	reduce by rule 158
++	NEVER	reduce by rule 158
++	NONFIX	reduce by rule 158
++	INFIX	reduce by rule 158
++	INFIXR	reduce by rule 158
++	DEBUG	reduce by rule 158
++	ASM_COLON	reduce by rule 158
++	MC_COLON	reduce by rule 158
++	RTL_COLON	reduce by rule 158
++	DELAYSLOT_COLON	reduce by rule 158
++	NULLIFIED_COLON	reduce by rule 158
++	PADDING_COLON	reduce by rule 158
++	RESOURCE	reduce by rule 158
++	CPU	reduce by rule 158
++	LATENCY	reduce by rule 158
++	EXCEPTION	reduce by rule 158
++	ID	reduce by rule 158
++	SYMBOL	reduce by rule 158
++	WORD	reduce by rule 158
++	INT	reduce by rule 158
++	INTINF	reduce by rule 158
++	REAL	reduce by rule 158
++	STRING	reduce by rule 158
++	CHAR	reduce by rule 158
++	EOF	reduce by rule 158
++
++
++	.	error
++
++
++state 97:
++
++	apat : WILD .  (reduce by rule 292)
++
++	EQ	reduce by rule 292
++	TIMES	reduce by rule 292
++	AND	reduce by rule 292
++	DEREF	reduce by rule 292
++	NOT	reduce by rule 292
++	LHASHBRACKET	reduce by rule 292
++	LPAREN	reduce by rule 292
++	RPAREN	reduce by rule 292
++	LBRACKET	reduce by rule 292
++	RBRACKET	reduce by rule 292
++	LBRACE	reduce by rule 292
++	RBRACE	reduce by rule 292
++	CELLSET	reduce by rule 292
++	COMMA	reduce by rule 292
++	COLON	reduce by rule 292
++	BAR	reduce by rule 292
++	DARROW	reduce by rule 292
++	TRUE	reduce by rule 292
++	FALSE	reduce by rule 292
++	WILD	reduce by rule 292
++	WHERE	reduce by rule 292
++	OP	reduce by rule 292
++	ALWAYS	reduce by rule 292
++	NEVER	reduce by rule 292
++	EXCEPTION	reduce by rule 292
++	ID	reduce by rule 292
++	SYMBOL	reduce by rule 292
++	WORD	reduce by rule 292
++	INT	reduce by rule 292
++	INTINF	reduce by rule 292
++	REAL	reduce by rule 292
++	STRING	reduce by rule 292
++	CHAR	reduce by rule 292
++
++
++	.	error
++
++
++state 98:
++
++	False : FALSE .  (reduce by rule 159)
++
++	ARCHITECTURE	reduce by rule 159
++	END	reduce by rule 159
++	LOCAL	reduce by rule 159
++	IN	reduce by rule 159
++	OF	reduce by rule 159
++	DATATYPE	reduce by rule 159
++	TYPE	reduce by rule 159
++	EQ	reduce by rule 159
++	DOLLAR	reduce by rule 159
++	TIMES	reduce by rule 159
++	AND	reduce by rule 159
++	DEREF	reduce by rule 159
++	NOT	reduce by rule 159
++	LLBRACKET	reduce by rule 159
++	LHASHBRACKET	reduce by rule 159
++	LPAREN	reduce by rule 159
++	RPAREN	reduce by rule 159
++	LBRACKET	reduce by rule 159
++	RBRACKET	reduce by rule 159
++	LBRACE	reduce by rule 159
++	RBRACE	reduce by rule 159
++	SEMICOLON	reduce by rule 159
++	LDQUOTE	reduce by rule 159
++	RMETA	reduce by rule 159
++	CELLSET	reduce by rule 159
++	STORAGE	reduce by rule 159
++	LOCATIONS	reduce by rule 159
++	HASH	reduce by rule 159
++	COMMA	reduce by rule 159
++	COLON	reduce by rule 159
++	AT	reduce by rule 159
++	BAR	reduce by rule 159
++	DARROW	reduce by rule 159
++	THEN	reduce by rule 159
++	ELSE	reduce by rule 159
++	TRUE	reduce by rule 159
++	FALSE	reduce by rule 159
++	WILD	reduce by rule 159
++	HANDLE	reduce by rule 159
++	LET	reduce by rule 159
++	STRUCTURE	reduce by rule 159
++	FUNCTOR	reduce by rule 159
++	SIGNATURE	reduce by rule 159
++	WHERE	reduce by rule 159
++	SHARING	reduce by rule 159
++	INSTRUCTION	reduce by rule 159
++	VLIW	reduce by rule 159
++	SUPERSCALAR	reduce by rule 159
++	WITHTYPE	reduce by rule 159
++	FUN	reduce by rule 159
++	VAL	reduce by rule 159
++	INCLUDE	reduce by rule 159
++	OPEN	reduce by rule 159
++	OP	reduce by rule 159
++	LITTLE	reduce by rule 159
++	BIG	reduce by rule 159
++	PIPELINE	reduce by rule 159
++	LOWERCASE	reduce by rule 159
++	UPPERCASE	reduce by rule 159
++	VERBATIM	reduce by rule 159
++	RTL	reduce by rule 159
++	SPAN	reduce by rule 159
++	DELAYSLOT	reduce by rule 159
++	ALWAYS	reduce by rule 159
++	NEVER	reduce by rule 159
++	NONFIX	reduce by rule 159
++	INFIX	reduce by rule 159
++	INFIXR	reduce by rule 159
++	DEBUG	reduce by rule 159
++	ASM_COLON	reduce by rule 159
++	MC_COLON	reduce by rule 159
++	RTL_COLON	reduce by rule 159
++	DELAYSLOT_COLON	reduce by rule 159
++	NULLIFIED_COLON	reduce by rule 159
++	PADDING_COLON	reduce by rule 159
++	RESOURCE	reduce by rule 159
++	CPU	reduce by rule 159
++	LATENCY	reduce by rule 159
++	EXCEPTION	reduce by rule 159
++	ID	reduce by rule 159
++	SYMBOL	reduce by rule 159
++	WORD	reduce by rule 159
++	INT	reduce by rule 159
++	INTINF	reduce by rule 159
++	REAL	reduce by rule 159
++	STRING	reduce by rule 159
++	CHAR	reduce by rule 159
++	EOF	reduce by rule 159
++
++
++	.	error
++
++
++state 99:
++
++	True : TRUE .  (reduce by rule 157)
++
++	ARCHITECTURE	reduce by rule 157
++	END	reduce by rule 157
++	LOCAL	reduce by rule 157
++	IN	reduce by rule 157
++	OF	reduce by rule 157
++	DATATYPE	reduce by rule 157
++	TYPE	reduce by rule 157
++	EQ	reduce by rule 157
++	DOLLAR	reduce by rule 157
++	TIMES	reduce by rule 157
++	AND	reduce by rule 157
++	DEREF	reduce by rule 157
++	NOT	reduce by rule 157
++	LLBRACKET	reduce by rule 157
++	LHASHBRACKET	reduce by rule 157
++	LPAREN	reduce by rule 157
++	RPAREN	reduce by rule 157
++	LBRACKET	reduce by rule 157
++	RBRACKET	reduce by rule 157
++	LBRACE	reduce by rule 157
++	RBRACE	reduce by rule 157
++	SEMICOLON	reduce by rule 157
++	LDQUOTE	reduce by rule 157
++	RMETA	reduce by rule 157
++	CELLSET	reduce by rule 157
++	STORAGE	reduce by rule 157
++	LOCATIONS	reduce by rule 157
++	HASH	reduce by rule 157
++	COMMA	reduce by rule 157
++	COLON	reduce by rule 157
++	AT	reduce by rule 157
++	BAR	reduce by rule 157
++	DARROW	reduce by rule 157
++	THEN	reduce by rule 157
++	ELSE	reduce by rule 157
++	TRUE	reduce by rule 157
++	FALSE	reduce by rule 157
++	WILD	reduce by rule 157
++	HANDLE	reduce by rule 157
++	LET	reduce by rule 157
++	STRUCTURE	reduce by rule 157
++	FUNCTOR	reduce by rule 157
++	SIGNATURE	reduce by rule 157
++	WHERE	reduce by rule 157
++	SHARING	reduce by rule 157
++	INSTRUCTION	reduce by rule 157
++	VLIW	reduce by rule 157
++	SUPERSCALAR	reduce by rule 157
++	WITHTYPE	reduce by rule 157
++	FUN	reduce by rule 157
++	VAL	reduce by rule 157
++	INCLUDE	reduce by rule 157
++	OPEN	reduce by rule 157
++	OP	reduce by rule 157
++	LITTLE	reduce by rule 157
++	BIG	reduce by rule 157
++	PIPELINE	reduce by rule 157
++	LOWERCASE	reduce by rule 157
++	UPPERCASE	reduce by rule 157
++	VERBATIM	reduce by rule 157
++	RTL	reduce by rule 157
++	SPAN	reduce by rule 157
++	DELAYSLOT	reduce by rule 157
++	ALWAYS	reduce by rule 157
++	NEVER	reduce by rule 157
++	NONFIX	reduce by rule 157
++	INFIX	reduce by rule 157
++	INFIXR	reduce by rule 157
++	DEBUG	reduce by rule 157
++	ASM_COLON	reduce by rule 157
++	MC_COLON	reduce by rule 157
++	RTL_COLON	reduce by rule 157
++	DELAYSLOT_COLON	reduce by rule 157
++	NULLIFIED_COLON	reduce by rule 157
++	PADDING_COLON	reduce by rule 157
++	RESOURCE	reduce by rule 157
++	CPU	reduce by rule 157
++	LATENCY	reduce by rule 157
++	EXCEPTION	reduce by rule 157
++	ID	reduce by rule 157
++	SYMBOL	reduce by rule 157
++	WORD	reduce by rule 157
++	INT	reduce by rule 157
++	INTINF	reduce by rule 157
++	REAL	reduce by rule 157
++	STRING	reduce by rule 157
++	CHAR	reduce by rule 157
++	EOF	reduce by rule 157
++
++
++	.	error
++
++
++state 100:
++
++	apat : LBRACE . labpats0 RBRACE 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	RBRACE	reduce by rule 326
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 191
++	symb	goto 67
++	labpat	goto 190
++	labpats0	goto 189
++	labpats	goto 188
++
++	.	error
++
++
++state 101:
++
++	apat : LBRACKET . pats RBRACKET 
++	apat : LBRACKET . pats RBRACKET CONCAT sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	RBRACKET	reduce by rule 321
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 194
++	pats	goto 193
++	pats1	goto 192
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 102:
++
++	apat : LPAREN . RPAREN 
++	apat : LPAREN . pats2 RPAREN 
++	apat : LPAREN . orpats2 RPAREN 
++	apat : LPAREN . andpats2 RPAREN 
++	apat : LPAREN . typedpat RPAREN 
++	apat : LPAREN . typedpat WHERE typedexp RPAREN 
++	apat : LPAREN . typedpat WHERE typedexp IN typedpat RPAREN 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	RPAREN	shift 200
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 199
++	pats2	goto 198
++	orpats2	goto 197
++	andpats2	goto 196
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 103:
++
++	apat : LHASHBRACKET . pats RBRACKET 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	RBRACKET	reduce by rule 321
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 194
++	pats	goto 201
++	pats1	goto 192
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 104:
++
++	pipelineclauses : pipelineclause .  (reduce by rule 42)
++	pipelineclauses : pipelineclause . BAR pipelineclauses 
++
++	ARCHITECTURE	reduce by rule 42
++	END	reduce by rule 42
++	LOCAL	reduce by rule 42
++	IN	reduce by rule 42
++	DATATYPE	reduce by rule 42
++	TYPE	reduce by rule 42
++	AND	reduce by rule 42
++	RPAREN	reduce by rule 42
++	SEMICOLON	reduce by rule 42
++	STORAGE	reduce by rule 42
++	LOCATIONS	reduce by rule 42
++	BAR	shift 202
++	STRUCTURE	reduce by rule 42
++	FUNCTOR	reduce by rule 42
++	SIGNATURE	reduce by rule 42
++	SHARING	reduce by rule 42
++	INSTRUCTION	reduce by rule 42
++	VLIW	reduce by rule 42
++	SUPERSCALAR	reduce by rule 42
++	FUN	reduce by rule 42
++	VAL	reduce by rule 42
++	INCLUDE	reduce by rule 42
++	OPEN	reduce by rule 42
++	LITTLE	reduce by rule 42
++	BIG	reduce by rule 42
++	PIPELINE	reduce by rule 42
++	LOWERCASE	reduce by rule 42
++	UPPERCASE	reduce by rule 42
++	VERBATIM	reduce by rule 42
++	RTL	reduce by rule 42
++	NONFIX	reduce by rule 42
++	INFIX	reduce by rule 42
++	INFIXR	reduce by rule 42
++	DEBUG	reduce by rule 42
++	RESOURCE	reduce by rule 42
++	CPU	reduce by rule 42
++	LATENCY	reduce by rule 42
++	EXCEPTION	reduce by rule 42
++	EOF	reduce by rule 42
++
++
++	.	error
++
++
++state 105:
++
++	pipelinebind : pipelineclauses .  (reduce by rule 41)
++
++	ARCHITECTURE	reduce by rule 41
++	END	reduce by rule 41
++	LOCAL	reduce by rule 41
++	IN	reduce by rule 41
++	DATATYPE	reduce by rule 41
++	TYPE	reduce by rule 41
++	AND	reduce by rule 41
++	RPAREN	reduce by rule 41
++	SEMICOLON	reduce by rule 41
++	STORAGE	reduce by rule 41
++	LOCATIONS	reduce by rule 41
++	STRUCTURE	reduce by rule 41
++	FUNCTOR	reduce by rule 41
++	SIGNATURE	reduce by rule 41
++	SHARING	reduce by rule 41
++	INSTRUCTION	reduce by rule 41
++	VLIW	reduce by rule 41
++	SUPERSCALAR	reduce by rule 41
++	FUN	reduce by rule 41
++	VAL	reduce by rule 41
++	INCLUDE	reduce by rule 41
++	OPEN	reduce by rule 41
++	LITTLE	reduce by rule 41
++	BIG	reduce by rule 41
++	PIPELINE	reduce by rule 41
++	LOWERCASE	reduce by rule 41
++	UPPERCASE	reduce by rule 41
++	VERBATIM	reduce by rule 41
++	RTL	reduce by rule 41
++	NONFIX	reduce by rule 41
++	INFIX	reduce by rule 41
++	INFIXR	reduce by rule 41
++	DEBUG	reduce by rule 41
++	RESOURCE	reduce by rule 41
++	CPU	reduce by rule 41
++	LATENCY	reduce by rule 41
++	EXCEPTION	reduce by rule 41
++	EOF	reduce by rule 41
++
++
++	.	error
++
++
++state 106:
++
++	pipelinebinds : pipelinebind .  (reduce by rule 39)
++	pipelinebinds : pipelinebind . AND pipelinebinds 
++
++	ARCHITECTURE	reduce by rule 39
++	END	reduce by rule 39
++	LOCAL	reduce by rule 39
++	IN	reduce by rule 39
++	DATATYPE	reduce by rule 39
++	TYPE	reduce by rule 39
++	AND	shift 203
++	RPAREN	reduce by rule 39
++	SEMICOLON	reduce by rule 39
++	STORAGE	reduce by rule 39
++	LOCATIONS	reduce by rule 39
++	STRUCTURE	reduce by rule 39
++	FUNCTOR	reduce by rule 39
++	SIGNATURE	reduce by rule 39
++	SHARING	reduce by rule 39
++	INSTRUCTION	reduce by rule 39
++	VLIW	reduce by rule 39
++	SUPERSCALAR	reduce by rule 39
++	FUN	reduce by rule 39
++	VAL	reduce by rule 39
++	INCLUDE	reduce by rule 39
++	OPEN	reduce by rule 39
++	LITTLE	reduce by rule 39
++	BIG	reduce by rule 39
++	PIPELINE	reduce by rule 39
++	LOWERCASE	reduce by rule 39
++	UPPERCASE	reduce by rule 39
++	VERBATIM	reduce by rule 39
++	RTL	reduce by rule 39
++	NONFIX	reduce by rule 39
++	INFIX	reduce by rule 39
++	INFIXR	reduce by rule 39
++	DEBUG	reduce by rule 39
++	RESOURCE	reduce by rule 39
++	CPU	reduce by rule 39
++	LATENCY	reduce by rule 39
++	EXCEPTION	reduce by rule 39
++	EOF	reduce by rule 39
++
++
++	.	error
++
++
++state 107:
++
++	mymddecl : PIPELINE pipelinebinds .  (reduce by rule 26)
++
++	ARCHITECTURE	reduce by rule 26
++	END	reduce by rule 26
++	LOCAL	reduce by rule 26
++	IN	reduce by rule 26
++	DATATYPE	reduce by rule 26
++	TYPE	reduce by rule 26
++	RPAREN	reduce by rule 26
++	SEMICOLON	reduce by rule 26
++	STORAGE	reduce by rule 26
++	LOCATIONS	reduce by rule 26
++	STRUCTURE	reduce by rule 26
++	FUNCTOR	reduce by rule 26
++	SIGNATURE	reduce by rule 26
++	SHARING	reduce by rule 26
++	INSTRUCTION	reduce by rule 26
++	VLIW	reduce by rule 26
++	SUPERSCALAR	reduce by rule 26
++	FUN	reduce by rule 26
++	VAL	reduce by rule 26
++	INCLUDE	reduce by rule 26
++	OPEN	reduce by rule 26
++	LITTLE	reduce by rule 26
++	BIG	reduce by rule 26
++	PIPELINE	reduce by rule 26
++	LOWERCASE	reduce by rule 26
++	UPPERCASE	reduce by rule 26
++	VERBATIM	reduce by rule 26
++	RTL	reduce by rule 26
++	NONFIX	reduce by rule 26
++	INFIX	reduce by rule 26
++	INFIXR	reduce by rule 26
++	DEBUG	reduce by rule 26
++	RESOURCE	reduce by rule 26
++	CPU	reduce by rule 26
++	LATENCY	reduce by rule 26
++	EXCEPTION	reduce by rule 26
++	EOF	reduce by rule 26
++
++
++	.	error
++
++
++state 108:
++
++	pipelineclause : id . pat EQ LBRACKET cycles0 RBRACKET 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 204
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 109:
++
++	mymddecl : BIG ENDIAN .  (reduce by rule 14)
++
++	ARCHITECTURE	reduce by rule 14
++	END	reduce by rule 14
++	LOCAL	reduce by rule 14
++	IN	reduce by rule 14
++	DATATYPE	reduce by rule 14
++	TYPE	reduce by rule 14
++	RPAREN	reduce by rule 14
++	SEMICOLON	reduce by rule 14
++	STORAGE	reduce by rule 14
++	LOCATIONS	reduce by rule 14
++	STRUCTURE	reduce by rule 14
++	FUNCTOR	reduce by rule 14
++	SIGNATURE	reduce by rule 14
++	SHARING	reduce by rule 14
++	INSTRUCTION	reduce by rule 14
++	VLIW	reduce by rule 14
++	SUPERSCALAR	reduce by rule 14
++	FUN	reduce by rule 14
++	VAL	reduce by rule 14
++	INCLUDE	reduce by rule 14
++	OPEN	reduce by rule 14
++	LITTLE	reduce by rule 14
++	BIG	reduce by rule 14
++	PIPELINE	reduce by rule 14
++	LOWERCASE	reduce by rule 14
++	UPPERCASE	reduce by rule 14
++	VERBATIM	reduce by rule 14
++	RTL	reduce by rule 14
++	NONFIX	reduce by rule 14
++	INFIX	reduce by rule 14
++	INFIXR	reduce by rule 14
++	DEBUG	reduce by rule 14
++	RESOURCE	reduce by rule 14
++	CPU	reduce by rule 14
++	LATENCY	reduce by rule 14
++	EXCEPTION	reduce by rule 14
++	EOF	reduce by rule 14
++
++
++	.	error
++
++
++state 110:
++
++	mymddecl : LITTLE ENDIAN .  (reduce by rule 13)
++
++	ARCHITECTURE	reduce by rule 13
++	END	reduce by rule 13
++	LOCAL	reduce by rule 13
++	IN	reduce by rule 13
++	DATATYPE	reduce by rule 13
++	TYPE	reduce by rule 13
++	RPAREN	reduce by rule 13
++	SEMICOLON	reduce by rule 13
++	STORAGE	reduce by rule 13
++	LOCATIONS	reduce by rule 13
++	STRUCTURE	reduce by rule 13
++	FUNCTOR	reduce by rule 13
++	SIGNATURE	reduce by rule 13
++	SHARING	reduce by rule 13
++	INSTRUCTION	reduce by rule 13
++	VLIW	reduce by rule 13
++	SUPERSCALAR	reduce by rule 13
++	FUN	reduce by rule 13
++	VAL	reduce by rule 13
++	INCLUDE	reduce by rule 13
++	OPEN	reduce by rule 13
++	LITTLE	reduce by rule 13
++	BIG	reduce by rule 13
++	PIPELINE	reduce by rule 13
++	LOWERCASE	reduce by rule 13
++	UPPERCASE	reduce by rule 13
++	VERBATIM	reduce by rule 13
++	RTL	reduce by rule 13
++	NONFIX	reduce by rule 13
++	INFIX	reduce by rule 13
++	INFIXR	reduce by rule 13
++	DEBUG	reduce by rule 13
++	RESOURCE	reduce by rule 13
++	CPU	reduce by rule 13
++	LATENCY	reduce by rule 13
++	EXCEPTION	reduce by rule 13
++	EOF	reduce by rule 13
++
++
++	.	error
++
++
++state 111:
++
++	mymldecl : OPEN idents .  (reduce by rule 80)
++
++	ARCHITECTURE	reduce by rule 80
++	END	reduce by rule 80
++	LOCAL	reduce by rule 80
++	IN	reduce by rule 80
++	DATATYPE	reduce by rule 80
++	TYPE	reduce by rule 80
++	RPAREN	reduce by rule 80
++	SEMICOLON	reduce by rule 80
++	STORAGE	reduce by rule 80
++	LOCATIONS	reduce by rule 80
++	STRUCTURE	reduce by rule 80
++	FUNCTOR	reduce by rule 80
++	SIGNATURE	reduce by rule 80
++	SHARING	reduce by rule 80
++	INSTRUCTION	reduce by rule 80
++	VLIW	reduce by rule 80
++	SUPERSCALAR	reduce by rule 80
++	FUN	reduce by rule 80
++	VAL	reduce by rule 80
++	INCLUDE	reduce by rule 80
++	OPEN	reduce by rule 80
++	LITTLE	reduce by rule 80
++	BIG	reduce by rule 80
++	PIPELINE	reduce by rule 80
++	LOWERCASE	reduce by rule 80
++	UPPERCASE	reduce by rule 80
++	VERBATIM	reduce by rule 80
++	RTL	reduce by rule 80
++	NONFIX	reduce by rule 80
++	INFIX	reduce by rule 80
++	INFIXR	reduce by rule 80
++	DEBUG	reduce by rule 80
++	RESOURCE	reduce by rule 80
++	CPU	reduce by rule 80
++	LATENCY	reduce by rule 80
++	EXCEPTION	reduce by rule 80
++	EOF	reduce by rule 80
++
++
++	.	error
++
++
++state 112:
++
++	ident : ident2 .  (reduce by rule 422)
++
++	ARCHITECTURE	reduce by rule 422
++	END	reduce by rule 422
++	LOCAL	reduce by rule 422
++	IN	reduce by rule 422
++	DATATYPE	reduce by rule 422
++	TYPE	reduce by rule 422
++	EQ	reduce by rule 422
++	AND	reduce by rule 422
++	LPAREN	reduce by rule 422
++	RPAREN	reduce by rule 422
++	SEMICOLON	reduce by rule 422
++	CELLSET	reduce by rule 422
++	STORAGE	reduce by rule 422
++	LOCATIONS	reduce by rule 422
++	STRUCTURE	reduce by rule 422
++	FUNCTOR	reduce by rule 422
++	SIGNATURE	reduce by rule 422
++	WHERE	reduce by rule 422
++	SHARING	reduce by rule 422
++	INSTRUCTION	reduce by rule 422
++	VLIW	reduce by rule 422
++	SUPERSCALAR	reduce by rule 422
++	FUN	reduce by rule 422
++	VAL	reduce by rule 422
++	INCLUDE	reduce by rule 422
++	OPEN	reduce by rule 422
++	LITTLE	reduce by rule 422
++	BIG	reduce by rule 422
++	PIPELINE	reduce by rule 422
++	LOWERCASE	reduce by rule 422
++	UPPERCASE	reduce by rule 422
++	VERBATIM	reduce by rule 422
++	RTL	reduce by rule 422
++	NONFIX	reduce by rule 422
++	INFIX	reduce by rule 422
++	INFIXR	reduce by rule 422
++	DEBUG	reduce by rule 422
++	RESOURCE	reduce by rule 422
++	CPU	reduce by rule 422
++	LATENCY	reduce by rule 422
++	EXCEPTION	reduce by rule 422
++	ID	reduce by rule 422
++	SYMBOL	reduce by rule 422
++	EOF	reduce by rule 422
++
++
++	.	error
++
++
++state 113:
++
++	idents : ident .  (reduce by rule 111)
++	idents : ident . idents 
++
++	ARCHITECTURE	reduce by rule 111
++	END	reduce by rule 111
++	LOCAL	reduce by rule 111
++	IN	reduce by rule 111
++	DATATYPE	reduce by rule 111
++	TYPE	reduce by rule 111
++	RPAREN	reduce by rule 111
++	SEMICOLON	reduce by rule 111
++	CELLSET	shift 50
++	STORAGE	reduce by rule 111
++	LOCATIONS	reduce by rule 111
++	STRUCTURE	reduce by rule 111
++	FUNCTOR	reduce by rule 111
++	SIGNATURE	reduce by rule 111
++	SHARING	reduce by rule 111
++	INSTRUCTION	reduce by rule 111
++	VLIW	reduce by rule 111
++	SUPERSCALAR	reduce by rule 111
++	FUN	reduce by rule 111
++	VAL	reduce by rule 111
++	INCLUDE	reduce by rule 111
++	OPEN	reduce by rule 111
++	LITTLE	reduce by rule 111
++	BIG	reduce by rule 111
++	PIPELINE	reduce by rule 111
++	LOWERCASE	reduce by rule 111
++	UPPERCASE	reduce by rule 111
++	VERBATIM	reduce by rule 111
++	RTL	reduce by rule 111
++	NONFIX	reduce by rule 111
++	INFIX	reduce by rule 111
++	INFIXR	reduce by rule 111
++	DEBUG	reduce by rule 111
++	RESOURCE	reduce by rule 111
++	CPU	reduce by rule 111
++	LATENCY	reduce by rule 111
++	EXCEPTION	reduce by rule 111
++	ID	shift 49
++	SYMBOL	shift 48
++	EOF	reduce by rule 111
++
++	id	goto 114
++	ident	goto 113
++	ident2	goto 112
++	idents	goto 205
++	path	goto 85
++
++	.	error
++
++
++state 114:
++
++	ident : id .  (reduce by rule 421)
++	path : id . DOT sym 
++
++	ARCHITECTURE	reduce by rule 421
++	END	reduce by rule 421
++	LOCAL	reduce by rule 421
++	IN	reduce by rule 421
++	DATATYPE	reduce by rule 421
++	TYPE	reduce by rule 421
++	EQ	reduce by rule 421
++	AND	reduce by rule 421
++	LPAREN	reduce by rule 421
++	RPAREN	reduce by rule 421
++	SEMICOLON	reduce by rule 421
++	CELLSET	reduce by rule 421
++	STORAGE	reduce by rule 421
++	LOCATIONS	reduce by rule 421
++	DOT	shift 186
++	STRUCTURE	reduce by rule 421
++	FUNCTOR	reduce by rule 421
++	SIGNATURE	reduce by rule 421
++	WHERE	reduce by rule 421
++	SHARING	reduce by rule 421
++	INSTRUCTION	reduce by rule 421
++	VLIW	reduce by rule 421
++	SUPERSCALAR	reduce by rule 421
++	FUN	reduce by rule 421
++	VAL	reduce by rule 421
++	INCLUDE	reduce by rule 421
++	OPEN	reduce by rule 421
++	LITTLE	reduce by rule 421
++	BIG	reduce by rule 421
++	PIPELINE	reduce by rule 421
++	LOWERCASE	reduce by rule 421
++	UPPERCASE	reduce by rule 421
++	VERBATIM	reduce by rule 421
++	RTL	reduce by rule 421
++	NONFIX	reduce by rule 421
++	INFIX	reduce by rule 421
++	INFIXR	reduce by rule 421
++	DEBUG	reduce by rule 421
++	RESOURCE	reduce by rule 421
++	CPU	reduce by rule 421
++	LATENCY	reduce by rule 421
++	EXCEPTION	reduce by rule 421
++	ID	reduce by rule 421
++	SYMBOL	reduce by rule 421
++	EOF	reduce by rule 421
++
++
++	.	error
++
++
++state 115:
++
++	mymldecl : INCLUDE sigexp .  (reduce by rule 81)
++	sigexp : sigexp . WHERE sigsubs 
++
++	ARCHITECTURE	reduce by rule 81
++	END	reduce by rule 81
++	LOCAL	reduce by rule 81
++	IN	reduce by rule 81
++	DATATYPE	reduce by rule 81
++	TYPE	reduce by rule 81
++	RPAREN	reduce by rule 81
++	SEMICOLON	reduce by rule 81
++	STORAGE	reduce by rule 81
++	LOCATIONS	reduce by rule 81
++	STRUCTURE	reduce by rule 81
++	FUNCTOR	reduce by rule 81
++	SIGNATURE	reduce by rule 81
++	WHERE	shift 206
++	SHARING	reduce by rule 81
++	INSTRUCTION	reduce by rule 81
++	VLIW	reduce by rule 81
++	SUPERSCALAR	reduce by rule 81
++	FUN	reduce by rule 81
++	VAL	reduce by rule 81
++	INCLUDE	reduce by rule 81
++	OPEN	reduce by rule 81
++	LITTLE	reduce by rule 81
++	BIG	reduce by rule 81
++	PIPELINE	reduce by rule 81
++	LOWERCASE	reduce by rule 81
++	UPPERCASE	reduce by rule 81
++	VERBATIM	reduce by rule 81
++	RTL	reduce by rule 81
++	NONFIX	reduce by rule 81
++	INFIX	reduce by rule 81
++	INFIXR	reduce by rule 81
++	DEBUG	reduce by rule 81
++	RESOURCE	reduce by rule 81
++	CPU	reduce by rule 81
++	LATENCY	reduce by rule 81
++	EXCEPTION	reduce by rule 81
++	EOF	reduce by rule 81
++
++
++	.	error
++
++
++state 116:
++
++	decl : INCLUDE string . optsemi 
++
++	ARCHITECTURE	reduce by rule 5
++	END	reduce by rule 5
++	LOCAL	reduce by rule 5
++	IN	reduce by rule 5
++	DATATYPE	reduce by rule 5
++	TYPE	reduce by rule 5
++	RPAREN	reduce by rule 5
++	SEMICOLON	shift 42
++	STORAGE	reduce by rule 5
++	LOCATIONS	reduce by rule 5
++	STRUCTURE	reduce by rule 5
++	FUNCTOR	reduce by rule 5
++	SIGNATURE	reduce by rule 5
++	SHARING	reduce by rule 5
++	INSTRUCTION	reduce by rule 5
++	VLIW	reduce by rule 5
++	SUPERSCALAR	reduce by rule 5
++	FUN	reduce by rule 5
++	VAL	reduce by rule 5
++	INCLUDE	reduce by rule 5
++	OPEN	reduce by rule 5
++	LITTLE	reduce by rule 5
++	BIG	reduce by rule 5
++	PIPELINE	reduce by rule 5
++	LOWERCASE	reduce by rule 5
++	UPPERCASE	reduce by rule 5
++	VERBATIM	reduce by rule 5
++	RTL	reduce by rule 5
++	NONFIX	reduce by rule 5
++	INFIX	reduce by rule 5
++	INFIXR	reduce by rule 5
++	DEBUG	reduce by rule 5
++	RESOURCE	reduce by rule 5
++	CPU	reduce by rule 5
++	LATENCY	reduce by rule 5
++	EXCEPTION	reduce by rule 5
++	EOF	reduce by rule 5
++
++	optsemi	goto 207
++
++	.	error
++
++
++state 117:
++
++	sigexp : ident .  (reduce by rule 90)
++
++	ARCHITECTURE	reduce by rule 90
++	END	reduce by rule 90
++	LOCAL	reduce by rule 90
++	IN	reduce by rule 90
++	DATATYPE	reduce by rule 90
++	TYPE	reduce by rule 90
++	EQ	reduce by rule 90
++	RPAREN	reduce by rule 90
++	SEMICOLON	reduce by rule 90
++	STORAGE	reduce by rule 90
++	LOCATIONS	reduce by rule 90
++	STRUCTURE	reduce by rule 90
++	FUNCTOR	reduce by rule 90
++	SIGNATURE	reduce by rule 90
++	WHERE	reduce by rule 90
++	SHARING	reduce by rule 90
++	INSTRUCTION	reduce by rule 90
++	VLIW	reduce by rule 90
++	SUPERSCALAR	reduce by rule 90
++	FUN	reduce by rule 90
++	VAL	reduce by rule 90
++	INCLUDE	reduce by rule 90
++	OPEN	reduce by rule 90
++	LITTLE	reduce by rule 90
++	BIG	reduce by rule 90
++	PIPELINE	reduce by rule 90
++	LOWERCASE	reduce by rule 90
++	UPPERCASE	reduce by rule 90
++	VERBATIM	reduce by rule 90
++	RTL	reduce by rule 90
++	NONFIX	reduce by rule 90
++	INFIX	reduce by rule 90
++	INFIXR	reduce by rule 90
++	DEBUG	reduce by rule 90
++	RESOURCE	reduce by rule 90
++	CPU	reduce by rule 90
++	LATENCY	reduce by rule 90
++	EXCEPTION	reduce by rule 90
++	EOF	reduce by rule 90
++
++
++	.	error
++
++
++state 118:
++
++	sigexp : SIG . decls END 
++
++	ARCHITECTURE	shift 39
++	END	reduce by rule 1
++	LOCAL	shift 38
++	DATATYPE	shift 37
++	TYPE	shift 36
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++
++	decls	goto 208
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 119:
++
++	mymldecl : VAL valbinds .  (reduce by rule 65)
++
++	ARCHITECTURE	reduce by rule 65
++	END	reduce by rule 65
++	LOCAL	reduce by rule 65
++	IN	reduce by rule 65
++	DATATYPE	reduce by rule 65
++	TYPE	reduce by rule 65
++	RPAREN	reduce by rule 65
++	SEMICOLON	reduce by rule 65
++	STORAGE	reduce by rule 65
++	LOCATIONS	reduce by rule 65
++	STRUCTURE	reduce by rule 65
++	FUNCTOR	reduce by rule 65
++	SIGNATURE	reduce by rule 65
++	SHARING	reduce by rule 65
++	INSTRUCTION	reduce by rule 65
++	VLIW	reduce by rule 65
++	SUPERSCALAR	reduce by rule 65
++	FUN	reduce by rule 65
++	VAL	reduce by rule 65
++	INCLUDE	reduce by rule 65
++	OPEN	reduce by rule 65
++	LITTLE	reduce by rule 65
++	BIG	reduce by rule 65
++	PIPELINE	reduce by rule 65
++	LOWERCASE	reduce by rule 65
++	UPPERCASE	reduce by rule 65
++	VERBATIM	reduce by rule 65
++	RTL	reduce by rule 65
++	NONFIX	reduce by rule 65
++	INFIX	reduce by rule 65
++	INFIXR	reduce by rule 65
++	DEBUG	reduce by rule 65
++	RESOURCE	reduce by rule 65
++	CPU	reduce by rule 65
++	LATENCY	reduce by rule 65
++	EXCEPTION	reduce by rule 65
++	EOF	reduce by rule 65
++
++
++	.	error
++
++
++state 120:
++
++	valbinds : valbind .  (reduce by rule 231)
++	valbinds : valbind . AND valbinds 
++
++	ARCHITECTURE	reduce by rule 231
++	END	reduce by rule 231
++	LOCAL	reduce by rule 231
++	IN	reduce by rule 231
++	DATATYPE	reduce by rule 231
++	TYPE	reduce by rule 231
++	AND	shift 209
++	RPAREN	reduce by rule 231
++	SEMICOLON	reduce by rule 231
++	STORAGE	reduce by rule 231
++	LOCATIONS	reduce by rule 231
++	STRUCTURE	reduce by rule 231
++	FUNCTOR	reduce by rule 231
++	SIGNATURE	reduce by rule 231
++	SHARING	reduce by rule 231
++	INSTRUCTION	reduce by rule 231
++	VLIW	reduce by rule 231
++	SUPERSCALAR	reduce by rule 231
++	FUN	reduce by rule 231
++	VAL	reduce by rule 231
++	INCLUDE	reduce by rule 231
++	OPEN	reduce by rule 231
++	LITTLE	reduce by rule 231
++	BIG	reduce by rule 231
++	PIPELINE	reduce by rule 231
++	LOWERCASE	reduce by rule 231
++	UPPERCASE	reduce by rule 231
++	VERBATIM	reduce by rule 231
++	RTL	reduce by rule 231
++	NONFIX	reduce by rule 231
++	INFIX	reduce by rule 231
++	INFIXR	reduce by rule 231
++	DEBUG	reduce by rule 231
++	RESOURCE	reduce by rule 231
++	CPU	reduce by rule 231
++	LATENCY	reduce by rule 231
++	EXCEPTION	reduce by rule 231
++	EOF	reduce by rule 231
++
++
++	.	error
++
++
++state 121:
++
++	valbind : pat . EQ typedexp 
++
++	EQ	shift 210
++
++
++	.	error
++
++
++state 122:
++
++	apppat : apppat . apat2 
++	pat : apppat .  (reduce by rule 315)
++
++	EQ	reduce by rule 315
++	TIMES	shift 72
++	AND	reduce by rule 315
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	RPAREN	reduce by rule 315
++	LBRACKET	shift 101
++	RBRACKET	reduce by rule 315
++	LBRACE	shift 100
++	RBRACE	reduce by rule 315
++	CELLSET	shift 50
++	COMMA	reduce by rule 315
++	COLON	reduce by rule 315
++	BAR	reduce by rule 315
++	DARROW	reduce by rule 315
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	WHERE	reduce by rule 315
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	EXCEPTION	reduce by rule 315
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 211
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 123:
++
++	apppat : apat2 .  (reduce by rule 313)
++
++	EQ	reduce by rule 313
++	TIMES	reduce by rule 313
++	AND	reduce by rule 313
++	DEREF	reduce by rule 313
++	NOT	reduce by rule 313
++	LHASHBRACKET	reduce by rule 313
++	LPAREN	reduce by rule 313
++	RPAREN	reduce by rule 313
++	LBRACKET	reduce by rule 313
++	RBRACKET	reduce by rule 313
++	LBRACE	reduce by rule 313
++	RBRACE	reduce by rule 313
++	CELLSET	reduce by rule 313
++	COMMA	reduce by rule 313
++	COLON	reduce by rule 313
++	BAR	reduce by rule 313
++	DARROW	reduce by rule 313
++	TRUE	reduce by rule 313
++	FALSE	reduce by rule 313
++	WILD	reduce by rule 313
++	WHERE	reduce by rule 313
++	OP	reduce by rule 313
++	ALWAYS	reduce by rule 313
++	NEVER	reduce by rule 313
++	EXCEPTION	reduce by rule 313
++	ID	reduce by rule 313
++	SYMBOL	reduce by rule 313
++	WORD	reduce by rule 313
++	INT	reduce by rule 313
++	INTINF	reduce by rule 313
++	REAL	reduce by rule 313
++	STRING	reduce by rule 313
++	CHAR	reduce by rule 313
++
++
++	.	error
++
++
++state 124:
++
++	apat2 : apat .  (reduce by rule 310)
++
++	EQ	reduce by rule 310
++	TIMES	reduce by rule 310
++	AND	reduce by rule 310
++	DEREF	reduce by rule 310
++	NOT	reduce by rule 310
++	LHASHBRACKET	reduce by rule 310
++	LPAREN	reduce by rule 310
++	RPAREN	reduce by rule 310
++	LBRACKET	reduce by rule 310
++	RBRACKET	reduce by rule 310
++	LBRACE	reduce by rule 310
++	RBRACE	reduce by rule 310
++	CELLSET	reduce by rule 310
++	COMMA	reduce by rule 310
++	COLON	reduce by rule 310
++	BAR	reduce by rule 310
++	DARROW	reduce by rule 310
++	TRUE	reduce by rule 310
++	FALSE	reduce by rule 310
++	WILD	reduce by rule 310
++	WHERE	reduce by rule 310
++	OP	reduce by rule 310
++	ALWAYS	reduce by rule 310
++	NEVER	reduce by rule 310
++	EXCEPTION	reduce by rule 310
++	ID	reduce by rule 310
++	SYMBOL	reduce by rule 310
++	WORD	reduce by rule 310
++	INT	reduce by rule 310
++	INTINF	reduce by rule 310
++	REAL	reduce by rule 310
++	STRING	reduce by rule 310
++	CHAR	reduce by rule 310
++
++
++	.	error
++
++
++state 125:
++
++	mymldecl : VAL syms . COLON ty 
++
++	COLON	shift 212
++
++
++	.	error
++
++error:  state 126: shift/reduce conflict (shift SYMBOL, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift ID, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift CELLSET, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift NOT, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift DEREF, reduce by rule 311)
++error:  state 126: shift/reduce conflict (shift TIMES, reduce by rule 311)
++
++state 126:
++
++	syms : sym .  (reduce by rule 109)
++	syms : sym . syms 
++	apat : sym . CONCAT LBRACKET pats RBRACKET 
++	apat : sym . CONCAT LBRACKET pats RBRACKET CONCAT sym 
++	apat2 : sym .  (reduce by rule 311)
++
++	EQ	reduce by rule 311
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CONCAT	shift 184
++	LHASHBRACKET	reduce by rule 311
++	LPAREN	reduce by rule 311
++	LBRACKET	reduce by rule 311
++	LBRACE	reduce by rule 311
++	CELLSET	shift 50
++	COLON	reduce by rule 109
++	TRUE	reduce by rule 311
++	FALSE	reduce by rule 311
++	WILD	reduce by rule 311
++	OP	reduce by rule 311
++	ALWAYS	reduce by rule 311
++	NEVER	reduce by rule 311
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	reduce by rule 311
++	INT	reduce by rule 311
++	INTINF	reduce by rule 311
++	REAL	reduce by rule 311
++	STRING	reduce by rule 311
++	CHAR	reduce by rule 311
++
++	id	goto 69
++	sym	goto 68
++	symb	goto 67
++	syms	goto 180
++
++	.	error
++
++
++state 127:
++
++	sym : id .  (reduce by rule 416)
++	path : id . DOT sym 
++	pat : id . AS pat 
++
++	EQ	reduce by rule 416
++	TIMES	reduce by rule 416
++	AND	reduce by rule 416
++	DEREF	reduce by rule 416
++	NOT	reduce by rule 416
++	CONCAT	reduce by rule 416
++	LHASHBRACKET	reduce by rule 416
++	LPAREN	reduce by rule 416
++	RPAREN	reduce by rule 416
++	LBRACKET	reduce by rule 416
++	RBRACKET	reduce by rule 416
++	LBRACE	reduce by rule 416
++	RBRACE	reduce by rule 416
++	CELLSET	reduce by rule 416
++	COMMA	reduce by rule 416
++	COLON	reduce by rule 416
++	DOT	shift 186
++	BAR	reduce by rule 416
++	DARROW	reduce by rule 416
++	TRUE	reduce by rule 416
++	FALSE	reduce by rule 416
++	WILD	reduce by rule 416
++	WHERE	reduce by rule 416
++	AS	shift 213
++	OP	reduce by rule 416
++	ALWAYS	reduce by rule 416
++	NEVER	reduce by rule 416
++	EXCEPTION	reduce by rule 416
++	ID	reduce by rule 416
++	SYMBOL	reduce by rule 416
++	WORD	reduce by rule 416
++	INT	reduce by rule 416
++	INTINF	reduce by rule 416
++	REAL	reduce by rule 416
++	STRING	reduce by rule 416
++	CHAR	reduce by rule 416
++
++
++	.	error
++
++
++state 128:
++
++	apat2 : OP . sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 214
++	symb	goto 67
++
++	.	error
++
++
++state 129:
++
++	mymldecl : FUN funbinds .  (reduce by rule 61)
++
++	ARCHITECTURE	reduce by rule 61
++	END	reduce by rule 61
++	LOCAL	reduce by rule 61
++	IN	reduce by rule 61
++	DATATYPE	reduce by rule 61
++	TYPE	reduce by rule 61
++	RPAREN	reduce by rule 61
++	SEMICOLON	reduce by rule 61
++	STORAGE	reduce by rule 61
++	LOCATIONS	reduce by rule 61
++	STRUCTURE	reduce by rule 61
++	FUNCTOR	reduce by rule 61
++	SIGNATURE	reduce by rule 61
++	SHARING	reduce by rule 61
++	INSTRUCTION	reduce by rule 61
++	VLIW	reduce by rule 61
++	SUPERSCALAR	reduce by rule 61
++	FUN	reduce by rule 61
++	VAL	reduce by rule 61
++	INCLUDE	reduce by rule 61
++	OPEN	reduce by rule 61
++	LITTLE	reduce by rule 61
++	BIG	reduce by rule 61
++	PIPELINE	reduce by rule 61
++	LOWERCASE	reduce by rule 61
++	UPPERCASE	reduce by rule 61
++	VERBATIM	reduce by rule 61
++	RTL	reduce by rule 61
++	NONFIX	reduce by rule 61
++	INFIX	reduce by rule 61
++	INFIXR	reduce by rule 61
++	DEBUG	reduce by rule 61
++	RESOURCE	reduce by rule 61
++	CPU	reduce by rule 61
++	LATENCY	reduce by rule 61
++	EXCEPTION	reduce by rule 61
++	EOF	reduce by rule 61
++
++
++	.	error
++
++
++state 130:
++
++	funbinds : funbind .  (reduce by rule 228)
++	funbinds : funbind . AND funbinds 
++
++	ARCHITECTURE	reduce by rule 228
++	END	reduce by rule 228
++	LOCAL	reduce by rule 228
++	IN	reduce by rule 228
++	DATATYPE	reduce by rule 228
++	TYPE	reduce by rule 228
++	AND	shift 215
++	RPAREN	reduce by rule 228
++	SEMICOLON	reduce by rule 228
++	STORAGE	reduce by rule 228
++	LOCATIONS	reduce by rule 228
++	STRUCTURE	reduce by rule 228
++	FUNCTOR	reduce by rule 228
++	SIGNATURE	reduce by rule 228
++	SHARING	reduce by rule 228
++	INSTRUCTION	reduce by rule 228
++	VLIW	reduce by rule 228
++	SUPERSCALAR	reduce by rule 228
++	FUN	reduce by rule 228
++	VAL	reduce by rule 228
++	INCLUDE	reduce by rule 228
++	OPEN	reduce by rule 228
++	LITTLE	reduce by rule 228
++	BIG	reduce by rule 228
++	PIPELINE	reduce by rule 228
++	LOWERCASE	reduce by rule 228
++	UPPERCASE	reduce by rule 228
++	VERBATIM	reduce by rule 228
++	RTL	reduce by rule 228
++	NONFIX	reduce by rule 228
++	INFIX	reduce by rule 228
++	INFIXR	reduce by rule 228
++	DEBUG	reduce by rule 228
++	RESOURCE	reduce by rule 228
++	CPU	reduce by rule 228
++	LATENCY	reduce by rule 228
++	EXCEPTION	reduce by rule 228
++	EOF	reduce by rule 228
++
++
++	.	error
++
++
++state 131:
++
++	funbind : funclauses .  (reduce by rule 230)
++
++	ARCHITECTURE	reduce by rule 230
++	END	reduce by rule 230
++	LOCAL	reduce by rule 230
++	IN	reduce by rule 230
++	DATATYPE	reduce by rule 230
++	TYPE	reduce by rule 230
++	AND	reduce by rule 230
++	RPAREN	reduce by rule 230
++	SEMICOLON	reduce by rule 230
++	STORAGE	reduce by rule 230
++	LOCATIONS	reduce by rule 230
++	STRUCTURE	reduce by rule 230
++	FUNCTOR	reduce by rule 230
++	SIGNATURE	reduce by rule 230
++	SHARING	reduce by rule 230
++	INSTRUCTION	reduce by rule 230
++	VLIW	reduce by rule 230
++	SUPERSCALAR	reduce by rule 230
++	FUN	reduce by rule 230
++	VAL	reduce by rule 230
++	INCLUDE	reduce by rule 230
++	OPEN	reduce by rule 230
++	LITTLE	reduce by rule 230
++	BIG	reduce by rule 230
++	PIPELINE	reduce by rule 230
++	LOWERCASE	reduce by rule 230
++	UPPERCASE	reduce by rule 230
++	VERBATIM	reduce by rule 230
++	RTL	reduce by rule 230
++	NONFIX	reduce by rule 230
++	INFIX	reduce by rule 230
++	INFIXR	reduce by rule 230
++	DEBUG	reduce by rule 230
++	RESOURCE	reduce by rule 230
++	CPU	reduce by rule 230
++	LATENCY	reduce by rule 230
++	EXCEPTION	reduce by rule 230
++	EOF	reduce by rule 230
++
++
++	.	error
++
++
++state 132:
++
++	funclauses : funclause .  (reduce by rule 348)
++	funclauses : funclause . BAR funclauses 
++
++	ARCHITECTURE	reduce by rule 348
++	END	reduce by rule 348
++	LOCAL	reduce by rule 348
++	IN	reduce by rule 348
++	DATATYPE	reduce by rule 348
++	TYPE	reduce by rule 348
++	AND	reduce by rule 348
++	RPAREN	reduce by rule 348
++	SEMICOLON	reduce by rule 348
++	STORAGE	reduce by rule 348
++	LOCATIONS	reduce by rule 348
++	BAR	shift 216
++	STRUCTURE	reduce by rule 348
++	FUNCTOR	reduce by rule 348
++	SIGNATURE	reduce by rule 348
++	SHARING	reduce by rule 348
++	INSTRUCTION	reduce by rule 348
++	VLIW	reduce by rule 348
++	SUPERSCALAR	reduce by rule 348
++	FUN	reduce by rule 348
++	VAL	reduce by rule 348
++	INCLUDE	reduce by rule 348
++	OPEN	reduce by rule 348
++	LITTLE	reduce by rule 348
++	BIG	reduce by rule 348
++	PIPELINE	reduce by rule 348
++	LOWERCASE	reduce by rule 348
++	UPPERCASE	reduce by rule 348
++	VERBATIM	reduce by rule 348
++	RTL	reduce by rule 348
++	NONFIX	reduce by rule 348
++	INFIX	reduce by rule 348
++	INFIXR	reduce by rule 348
++	DEBUG	reduce by rule 348
++	RESOURCE	reduce by rule 348
++	CPU	reduce by rule 348
++	LATENCY	reduce by rule 348
++	EXCEPTION	reduce by rule 348
++	EOF	reduce by rule 348
++
++
++	.	error
++
++
++state 133:
++
++	apppat : apppat . apat2 
++	funclause : apppat . funguard return_ty cont EQ typedexp 
++
++	EQ	reduce by rule 346
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	COLON	reduce by rule 346
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	WHERE	shift 218
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	EXCEPTION	reduce by rule 346
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	funguard	goto 217
++	apat	goto 124
++	apat2	goto 211
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 134:
++
++	apat : sym . CONCAT LBRACKET pats RBRACKET 
++	apat : sym . CONCAT LBRACKET pats RBRACKET CONCAT sym 
++	apat2 : sym .  (reduce by rule 311)
++
++	EQ	reduce by rule 311
++	TIMES	reduce by rule 311
++	AND	reduce by rule 311
++	DEREF	reduce by rule 311
++	NOT	reduce by rule 311
++	CONCAT	shift 184
++	LHASHBRACKET	reduce by rule 311
++	LPAREN	reduce by rule 311
++	RPAREN	reduce by rule 311
++	LBRACKET	reduce by rule 311
++	RBRACKET	reduce by rule 311
++	LBRACE	reduce by rule 311
++	RBRACE	reduce by rule 311
++	CELLSET	reduce by rule 311
++	COMMA	reduce by rule 311
++	COLON	reduce by rule 311
++	BAR	reduce by rule 311
++	DARROW	reduce by rule 311
++	TRUE	reduce by rule 311
++	FALSE	reduce by rule 311
++	WILD	reduce by rule 311
++	WHERE	reduce by rule 311
++	OP	reduce by rule 311
++	ALWAYS	reduce by rule 311
++	NEVER	reduce by rule 311
++	EXCEPTION	reduce by rule 311
++	ID	reduce by rule 311
++	SYMBOL	reduce by rule 311
++	WORD	reduce by rule 311
++	INT	reduce by rule 311
++	INTINF	reduce by rule 311
++	REAL	reduce by rule 311
++	STRING	reduce by rule 311
++	CHAR	reduce by rule 311
++
++
++	.	error
++
++
++state 135:
++
++	sym : id .  (reduce by rule 416)
++	path : id . DOT sym 
++
++	ARCHITECTURE	reduce by rule 416
++	END	reduce by rule 416
++	LOCAL	reduce by rule 416
++	IN	reduce by rule 416
++	OF	reduce by rule 416
++	DATATYPE	reduce by rule 416
++	TYPE	reduce by rule 416
++	EQ	reduce by rule 416
++	DOLLAR	reduce by rule 416
++	TIMES	reduce by rule 416
++	AND	reduce by rule 416
++	DEREF	reduce by rule 416
++	NOT	reduce by rule 416
++	CONCAT	reduce by rule 416
++	LLBRACKET	reduce by rule 416
++	LHASHBRACKET	reduce by rule 416
++	LPAREN	reduce by rule 416
++	RPAREN	reduce by rule 416
++	LBRACKET	reduce by rule 416
++	RBRACKET	reduce by rule 416
++	LBRACE	reduce by rule 416
++	RBRACE	reduce by rule 416
++	SEMICOLON	reduce by rule 416
++	LDQUOTE	reduce by rule 416
++	RMETA	reduce by rule 416
++	CELLSET	reduce by rule 416
++	STORAGE	reduce by rule 416
++	LOCATIONS	reduce by rule 416
++	HASH	reduce by rule 416
++	COMMA	reduce by rule 416
++	COLON	reduce by rule 416
++	DOT	shift 186
++	AT	reduce by rule 416
++	BAR	reduce by rule 416
++	DARROW	reduce by rule 416
++	THEN	reduce by rule 416
++	ELSE	reduce by rule 416
++	TRUE	reduce by rule 416
++	FALSE	reduce by rule 416
++	WILD	reduce by rule 416
++	HANDLE	reduce by rule 416
++	LET	reduce by rule 416
++	STRUCTURE	reduce by rule 416
++	FUNCTOR	reduce by rule 416
++	SIGNATURE	reduce by rule 416
++	WHERE	reduce by rule 416
++	SHARING	reduce by rule 416
++	INSTRUCTION	reduce by rule 416
++	VLIW	reduce by rule 416
++	SUPERSCALAR	reduce by rule 416
++	WITHTYPE	reduce by rule 416
++	FUN	reduce by rule 416
++	VAL	reduce by rule 416
++	INCLUDE	reduce by rule 416
++	OPEN	reduce by rule 416
++	OP	reduce by rule 416
++	LITTLE	reduce by rule 416
++	BIG	reduce by rule 416
++	PIPELINE	reduce by rule 416
++	LOWERCASE	reduce by rule 416
++	UPPERCASE	reduce by rule 416
++	VERBATIM	reduce by rule 416
++	RTL	reduce by rule 416
++	SPAN	reduce by rule 416
++	DELAYSLOT	reduce by rule 416
++	ALWAYS	reduce by rule 416
++	NEVER	reduce by rule 416
++	NONFIX	reduce by rule 416
++	INFIX	reduce by rule 416
++	INFIXR	reduce by rule 416
++	DEBUG	reduce by rule 416
++	ASM_COLON	reduce by rule 416
++	MC_COLON	reduce by rule 416
++	RTL_COLON	reduce by rule 416
++	DELAYSLOT_COLON	reduce by rule 416
++	NULLIFIED_COLON	reduce by rule 416
++	PADDING_COLON	reduce by rule 416
++	RESOURCE	reduce by rule 416
++	CPU	reduce by rule 416
++	LATENCY	reduce by rule 416
++	EXCEPTION	reduce by rule 416
++	ID	reduce by rule 416
++	SYMBOL	reduce by rule 416
++	WORD	reduce by rule 416
++	INT	reduce by rule 416
++	INTINF	reduce by rule 416
++	REAL	reduce by rule 416
++	STRING	reduce by rule 416
++	CHAR	reduce by rule 416
++	EOF	reduce by rule 416
++
++
++	.	error
++
++
++state 136:
++
++	consbinds : consbind .  (reduce by rule 142)
++	consbinds : consbind . BAR consbinds 
++
++	ARCHITECTURE	reduce by rule 142
++	END	reduce by rule 142
++	LOCAL	reduce by rule 142
++	IN	reduce by rule 142
++	DATATYPE	reduce by rule 142
++	TYPE	reduce by rule 142
++	AND	reduce by rule 142
++	RPAREN	reduce by rule 142
++	SEMICOLON	reduce by rule 142
++	STORAGE	reduce by rule 142
++	LOCATIONS	reduce by rule 142
++	BAR	shift 219
++	STRUCTURE	reduce by rule 142
++	FUNCTOR	reduce by rule 142
++	SIGNATURE	reduce by rule 142
++	SHARING	reduce by rule 142
++	INSTRUCTION	reduce by rule 142
++	VLIW	reduce by rule 142
++	SUPERSCALAR	reduce by rule 142
++	WITHTYPE	reduce by rule 142
++	FUN	reduce by rule 142
++	VAL	reduce by rule 142
++	INCLUDE	reduce by rule 142
++	OPEN	reduce by rule 142
++	LITTLE	reduce by rule 142
++	BIG	reduce by rule 142
++	PIPELINE	reduce by rule 142
++	LOWERCASE	reduce by rule 142
++	UPPERCASE	reduce by rule 142
++	VERBATIM	reduce by rule 142
++	RTL	reduce by rule 142
++	NONFIX	reduce by rule 142
++	INFIX	reduce by rule 142
++	INFIXR	reduce by rule 142
++	DEBUG	reduce by rule 142
++	RESOURCE	reduce by rule 142
++	CPU	reduce by rule 142
++	LATENCY	reduce by rule 142
++	EXCEPTION	reduce by rule 142
++	EOF	reduce by rule 142
++
++
++	.	error
++
++
++state 137:
++
++	mymddecl : INSTRUCTION consbinds .  (reduce by rule 22)
++
++	ARCHITECTURE	reduce by rule 22
++	END	reduce by rule 22
++	LOCAL	reduce by rule 22
++	IN	reduce by rule 22
++	DATATYPE	reduce by rule 22
++	TYPE	reduce by rule 22
++	RPAREN	reduce by rule 22
++	SEMICOLON	reduce by rule 22
++	STORAGE	reduce by rule 22
++	LOCATIONS	reduce by rule 22
++	STRUCTURE	reduce by rule 22
++	FUNCTOR	reduce by rule 22
++	SIGNATURE	reduce by rule 22
++	SHARING	reduce by rule 22
++	INSTRUCTION	reduce by rule 22
++	VLIW	reduce by rule 22
++	SUPERSCALAR	reduce by rule 22
++	FUN	reduce by rule 22
++	VAL	reduce by rule 22
++	INCLUDE	reduce by rule 22
++	OPEN	reduce by rule 22
++	LITTLE	reduce by rule 22
++	BIG	reduce by rule 22
++	PIPELINE	reduce by rule 22
++	LOWERCASE	reduce by rule 22
++	UPPERCASE	reduce by rule 22
++	VERBATIM	reduce by rule 22
++	RTL	reduce by rule 22
++	NONFIX	reduce by rule 22
++	INFIX	reduce by rule 22
++	INFIXR	reduce by rule 22
++	DEBUG	reduce by rule 22
++	RESOURCE	reduce by rule 22
++	CPU	reduce by rule 22
++	LATENCY	reduce by rule 22
++	EXCEPTION	reduce by rule 22
++	EOF	reduce by rule 22
++
++
++	.	error
++
++
++state 138:
++
++	consbind : sym . of_ty consassembly consencoding rtl nop nullified delayslot delayslotcandidate sdi latency pipeline 
++
++	ARCHITECTURE	reduce by rule 151
++	END	reduce by rule 151
++	LOCAL	reduce by rule 151
++	IN	reduce by rule 151
++	OF	shift 221
++	DATATYPE	reduce by rule 151
++	TYPE	reduce by rule 151
++	AND	reduce by rule 151
++	LPAREN	reduce by rule 151
++	RPAREN	reduce by rule 151
++	SEMICOLON	reduce by rule 151
++	LDQUOTE	reduce by rule 151
++	CELLSET	reduce by rule 151
++	STORAGE	reduce by rule 151
++	LOCATIONS	reduce by rule 151
++	BAR	reduce by rule 151
++	STRUCTURE	reduce by rule 151
++	FUNCTOR	reduce by rule 151
++	SIGNATURE	reduce by rule 151
++	SHARING	reduce by rule 151
++	INSTRUCTION	reduce by rule 151
++	VLIW	reduce by rule 151
++	SUPERSCALAR	reduce by rule 151
++	WITHTYPE	reduce by rule 151
++	FUN	reduce by rule 151
++	VAL	reduce by rule 151
++	INCLUDE	reduce by rule 151
++	OPEN	reduce by rule 151
++	LITTLE	reduce by rule 151
++	BIG	reduce by rule 151
++	PIPELINE	reduce by rule 151
++	LOWERCASE	reduce by rule 151
++	UPPERCASE	reduce by rule 151
++	VERBATIM	reduce by rule 151
++	RTL	reduce by rule 151
++	SPAN	reduce by rule 151
++	DELAYSLOT	reduce by rule 151
++	NONFIX	reduce by rule 151
++	INFIX	reduce by rule 151
++	INFIXR	reduce by rule 151
++	DEBUG	reduce by rule 151
++	ASM_COLON	reduce by rule 151
++	MC_COLON	reduce by rule 151
++	RTL_COLON	reduce by rule 151
++	DELAYSLOT_COLON	reduce by rule 151
++	NULLIFIED_COLON	reduce by rule 151
++	PADDING_COLON	reduce by rule 151
++	RESOURCE	reduce by rule 151
++	CPU	reduce by rule 151
++	LATENCY	reduce by rule 151
++	EXCEPTION	reduce by rule 151
++	ID	reduce by rule 151
++	SYMBOL	reduce by rule 151
++	WORD	reduce by rule 151
++	INT	reduce by rule 151
++	STRING	reduce by rule 151
++	EOF	reduce by rule 151
++
++	of_ty	goto 220
++
++	.	error
++
++
++state 139:
++
++	mymddecl : INSTRUCTION FORMATS . int BITS formatbinds 
++	mymddecl : INSTRUCTION FORMATS . formatbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++	INT	shift 64
++
++	id	goto 225
++	int	goto 224
++	formatbind	goto 223
++	formatbinds	goto 222
++
++	.	error
++
++
++state 140:
++
++	sharingdecl : sharelist .  (reduce by rule 102)
++
++	ARCHITECTURE	reduce by rule 102
++	END	reduce by rule 102
++	LOCAL	reduce by rule 102
++	IN	reduce by rule 102
++	DATATYPE	reduce by rule 102
++	TYPE	reduce by rule 102
++	AND	reduce by rule 102
++	RPAREN	reduce by rule 102
++	SEMICOLON	reduce by rule 102
++	STORAGE	reduce by rule 102
++	LOCATIONS	reduce by rule 102
++	STRUCTURE	reduce by rule 102
++	FUNCTOR	reduce by rule 102
++	SIGNATURE	reduce by rule 102
++	SHARING	reduce by rule 102
++	INSTRUCTION	reduce by rule 102
++	VLIW	reduce by rule 102
++	SUPERSCALAR	reduce by rule 102
++	FUN	reduce by rule 102
++	VAL	reduce by rule 102
++	INCLUDE	reduce by rule 102
++	OPEN	reduce by rule 102
++	LITTLE	reduce by rule 102
++	BIG	reduce by rule 102
++	PIPELINE	reduce by rule 102
++	LOWERCASE	reduce by rule 102
++	UPPERCASE	reduce by rule 102
++	VERBATIM	reduce by rule 102
++	RTL	reduce by rule 102
++	NONFIX	reduce by rule 102
++	INFIX	reduce by rule 102
++	INFIXR	reduce by rule 102
++	DEBUG	reduce by rule 102
++	RESOURCE	reduce by rule 102
++	CPU	reduce by rule 102
++	LATENCY	reduce by rule 102
++	EXCEPTION	reduce by rule 102
++	EOF	reduce by rule 102
++
++
++	.	error
++
++
++state 141:
++
++	mymldecl : SHARING sharingdecls .  (reduce by rule 76)
++
++	ARCHITECTURE	reduce by rule 76
++	END	reduce by rule 76
++	LOCAL	reduce by rule 76
++	IN	reduce by rule 76
++	DATATYPE	reduce by rule 76
++	TYPE	reduce by rule 76
++	RPAREN	reduce by rule 76
++	SEMICOLON	reduce by rule 76
++	STORAGE	reduce by rule 76
++	LOCATIONS	reduce by rule 76
++	STRUCTURE	reduce by rule 76
++	FUNCTOR	reduce by rule 76
++	SIGNATURE	reduce by rule 76
++	SHARING	reduce by rule 76
++	INSTRUCTION	reduce by rule 76
++	VLIW	reduce by rule 76
++	SUPERSCALAR	reduce by rule 76
++	FUN	reduce by rule 76
++	VAL	reduce by rule 76
++	INCLUDE	reduce by rule 76
++	OPEN	reduce by rule 76
++	LITTLE	reduce by rule 76
++	BIG	reduce by rule 76
++	PIPELINE	reduce by rule 76
++	LOWERCASE	reduce by rule 76
++	UPPERCASE	reduce by rule 76
++	VERBATIM	reduce by rule 76
++	RTL	reduce by rule 76
++	NONFIX	reduce by rule 76
++	INFIX	reduce by rule 76
++	INFIXR	reduce by rule 76
++	DEBUG	reduce by rule 76
++	RESOURCE	reduce by rule 76
++	CPU	reduce by rule 76
++	LATENCY	reduce by rule 76
++	EXCEPTION	reduce by rule 76
++	EOF	reduce by rule 76
++
++
++	.	error
++
++
++state 142:
++
++	sharingdecls : sharingdecl .  (reduce by rule 99)
++	sharingdecls : sharingdecl . AND sharingdecls 
++
++	ARCHITECTURE	reduce by rule 99
++	END	reduce by rule 99
++	LOCAL	reduce by rule 99
++	IN	reduce by rule 99
++	DATATYPE	reduce by rule 99
++	TYPE	reduce by rule 99
++	AND	shift 226
++	RPAREN	reduce by rule 99
++	SEMICOLON	reduce by rule 99
++	STORAGE	reduce by rule 99
++	LOCATIONS	reduce by rule 99
++	STRUCTURE	reduce by rule 99
++	FUNCTOR	reduce by rule 99
++	SIGNATURE	reduce by rule 99
++	SHARING	reduce by rule 99
++	INSTRUCTION	reduce by rule 99
++	VLIW	reduce by rule 99
++	SUPERSCALAR	reduce by rule 99
++	FUN	reduce by rule 99
++	VAL	reduce by rule 99
++	INCLUDE	reduce by rule 99
++	OPEN	reduce by rule 99
++	LITTLE	reduce by rule 99
++	BIG	reduce by rule 99
++	PIPELINE	reduce by rule 99
++	LOWERCASE	reduce by rule 99
++	UPPERCASE	reduce by rule 99
++	VERBATIM	reduce by rule 99
++	RTL	reduce by rule 99
++	NONFIX	reduce by rule 99
++	INFIX	reduce by rule 99
++	INFIXR	reduce by rule 99
++	DEBUG	reduce by rule 99
++	RESOURCE	reduce by rule 99
++	CPU	reduce by rule 99
++	LATENCY	reduce by rule 99
++	EXCEPTION	reduce by rule 99
++	EOF	reduce by rule 99
++
++
++	.	error
++
++
++state 143:
++
++	sharelist : ident . EQ ident 
++	sharelist : ident . EQ sharelist 
++
++	EQ	shift 227
++
++
++	.	error
++
++
++state 144:
++
++	sharingdecl : TYPE . sharelist 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 143
++	ident2	goto 112
++	path	goto 85
++	sharelist	goto 228
++
++	.	error
++
++
++state 145:
++
++	mymldecl : SIGNATURE id . EQ sigexp 
++
++	EQ	shift 229
++
++
++	.	error
++
++
++state 146:
++
++	mymldecl : FUNCTOR id . LPAREN functorarg RPAREN EQ structexp 
++	mymldecl : FUNCTOR id . LPAREN functorarg RPAREN sigcon EQ structexp 
++	mymldecl : FUNCTOR id . EQ structexp 
++
++	EQ	shift 231
++	LPAREN	shift 230
++
++
++	.	error
++
++
++state 147:
++
++	mymldecl : STRUCTURE id . EQ structexp 
++	mymldecl : STRUCTURE id . sigcon EQ structexp 
++	mymldecl : STRUCTURE id . COLON sigexp 
++
++	EQ	shift 235
++	COLON	shift 234
++	COLONGREATER	shift 233
++
++	sigcon	goto 232
++
++	.	error
++
++
++state 148:
++
++	mymddecl : LOCATIONS locbinds .  (reduce by rule 21)
++
++	ARCHITECTURE	reduce by rule 21
++	END	reduce by rule 21
++	LOCAL	reduce by rule 21
++	IN	reduce by rule 21
++	DATATYPE	reduce by rule 21
++	TYPE	reduce by rule 21
++	RPAREN	reduce by rule 21
++	SEMICOLON	reduce by rule 21
++	STORAGE	reduce by rule 21
++	LOCATIONS	reduce by rule 21
++	STRUCTURE	reduce by rule 21
++	FUNCTOR	reduce by rule 21
++	SIGNATURE	reduce by rule 21
++	SHARING	reduce by rule 21
++	INSTRUCTION	reduce by rule 21
++	VLIW	reduce by rule 21
++	SUPERSCALAR	reduce by rule 21
++	FUN	reduce by rule 21
++	VAL	reduce by rule 21
++	INCLUDE	reduce by rule 21
++	OPEN	reduce by rule 21
++	LITTLE	reduce by rule 21
++	BIG	reduce by rule 21
++	PIPELINE	reduce by rule 21
++	LOWERCASE	reduce by rule 21
++	UPPERCASE	reduce by rule 21
++	VERBATIM	reduce by rule 21
++	RTL	reduce by rule 21
++	NONFIX	reduce by rule 21
++	INFIX	reduce by rule 21
++	INFIXR	reduce by rule 21
++	DEBUG	reduce by rule 21
++	RESOURCE	reduce by rule 21
++	CPU	reduce by rule 21
++	LATENCY	reduce by rule 21
++	EXCEPTION	reduce by rule 21
++	EOF	reduce by rule 21
++
++
++	.	error
++
++
++state 149:
++
++	locbinds : locbind .  (reduce by rule 392)
++	locbinds : locbind . AND locbinds 
++
++	ARCHITECTURE	reduce by rule 392
++	END	reduce by rule 392
++	LOCAL	reduce by rule 392
++	IN	reduce by rule 392
++	DATATYPE	reduce by rule 392
++	TYPE	reduce by rule 392
++	AND	shift 236
++	RPAREN	reduce by rule 392
++	SEMICOLON	reduce by rule 392
++	STORAGE	reduce by rule 392
++	LOCATIONS	reduce by rule 392
++	STRUCTURE	reduce by rule 392
++	FUNCTOR	reduce by rule 392
++	SIGNATURE	reduce by rule 392
++	SHARING	reduce by rule 392
++	INSTRUCTION	reduce by rule 392
++	VLIW	reduce by rule 392
++	SUPERSCALAR	reduce by rule 392
++	FUN	reduce by rule 392
++	VAL	reduce by rule 392
++	INCLUDE	reduce by rule 392
++	OPEN	reduce by rule 392
++	LITTLE	reduce by rule 392
++	BIG	reduce by rule 392
++	PIPELINE	reduce by rule 392
++	LOWERCASE	reduce by rule 392
++	UPPERCASE	reduce by rule 392
++	VERBATIM	reduce by rule 392
++	RTL	reduce by rule 392
++	NONFIX	reduce by rule 392
++	INFIX	reduce by rule 392
++	INFIXR	reduce by rule 392
++	DEBUG	reduce by rule 392
++	RESOURCE	reduce by rule 392
++	CPU	reduce by rule 392
++	LATENCY	reduce by rule 392
++	EXCEPTION	reduce by rule 392
++	EOF	reduce by rule 392
++
++
++	.	error
++
++
++state 150:
++
++	locbind : id . EQ exp 
++	locbind : id . pat EQ exp 
++
++	EQ	shift 238
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 237
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 151:
++
++	mymddecl : STORAGE storagedecls .  (reduce by rule 20)
++
++	ARCHITECTURE	reduce by rule 20
++	END	reduce by rule 20
++	LOCAL	reduce by rule 20
++	IN	reduce by rule 20
++	DATATYPE	reduce by rule 20
++	TYPE	reduce by rule 20
++	RPAREN	reduce by rule 20
++	SEMICOLON	reduce by rule 20
++	STORAGE	reduce by rule 20
++	LOCATIONS	reduce by rule 20
++	STRUCTURE	reduce by rule 20
++	FUNCTOR	reduce by rule 20
++	SIGNATURE	reduce by rule 20
++	SHARING	reduce by rule 20
++	INSTRUCTION	reduce by rule 20
++	VLIW	reduce by rule 20
++	SUPERSCALAR	reduce by rule 20
++	FUN	reduce by rule 20
++	VAL	reduce by rule 20
++	INCLUDE	reduce by rule 20
++	OPEN	reduce by rule 20
++	LITTLE	reduce by rule 20
++	BIG	reduce by rule 20
++	PIPELINE	reduce by rule 20
++	LOWERCASE	reduce by rule 20
++	UPPERCASE	reduce by rule 20
++	VERBATIM	reduce by rule 20
++	RTL	reduce by rule 20
++	NONFIX	reduce by rule 20
++	INFIX	reduce by rule 20
++	INFIXR	reduce by rule 20
++	DEBUG	reduce by rule 20
++	RESOURCE	reduce by rule 20
++	CPU	reduce by rule 20
++	LATENCY	reduce by rule 20
++	EXCEPTION	reduce by rule 20
++	EOF	reduce by rule 20
++
++
++	.	error
++
++
++state 152:
++
++	storagedecls : storagedecl .  (reduce by rule 381)
++	storagedecls : storagedecl . BAR storagedecls 
++
++	ARCHITECTURE	reduce by rule 381
++	END	reduce by rule 381
++	LOCAL	reduce by rule 381
++	IN	reduce by rule 381
++	DATATYPE	reduce by rule 381
++	TYPE	reduce by rule 381
++	RPAREN	reduce by rule 381
++	SEMICOLON	reduce by rule 381
++	STORAGE	reduce by rule 381
++	LOCATIONS	reduce by rule 381
++	BAR	shift 239
++	STRUCTURE	reduce by rule 381
++	FUNCTOR	reduce by rule 381
++	SIGNATURE	reduce by rule 381
++	SHARING	reduce by rule 381
++	INSTRUCTION	reduce by rule 381
++	VLIW	reduce by rule 381
++	SUPERSCALAR	reduce by rule 381
++	FUN	reduce by rule 381
++	VAL	reduce by rule 381
++	INCLUDE	reduce by rule 381
++	OPEN	reduce by rule 381
++	LITTLE	reduce by rule 381
++	BIG	reduce by rule 381
++	PIPELINE	reduce by rule 381
++	LOWERCASE	reduce by rule 381
++	UPPERCASE	reduce by rule 381
++	VERBATIM	reduce by rule 381
++	RTL	reduce by rule 381
++	NONFIX	reduce by rule 381
++	INFIX	reduce by rule 381
++	INFIXR	reduce by rule 381
++	DEBUG	reduce by rule 381
++	RESOURCE	reduce by rule 381
++	CPU	reduce by rule 381
++	LATENCY	reduce by rule 381
++	EXCEPTION	reduce by rule 381
++	EOF	reduce by rule 381
++
++
++	.	error
++
++
++state 153:
++
++	storagedecl : id . EQ DOLLAR id LBRACKET cellcount RBRACKET bitSize aliasing defaults printcell 
++
++	EQ	shift 240
++
++
++	.	error
++
++
++state 154:
++
++	mymldecl : TYPE tyvarseq . tid 
++	typebind : tyvarseq . tid EQ ty 
++
++	CELLSET	shift 50
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 243
++	tid	goto 242
++	tid2	goto 241
++
++	.	error
++
++
++state 155:
++
++	tyvarseq : tyvar .  (reduce by rule 200)
++
++	CELLSET	reduce by rule 200
++	BITS	reduce by rule 200
++	INSTRUCTION	reduce by rule 200
++	CELL	reduce by rule 200
++	ID	reduce by rule 200
++	SYMBOL	reduce by rule 200
++
++
++	.	error
++
++
++state 156:
++
++	typebinds : typebind .  (reduce by rule 196)
++	typebinds : typebind . AND typebinds 
++
++	ARCHITECTURE	reduce by rule 196
++	END	reduce by rule 196
++	LOCAL	reduce by rule 196
++	IN	reduce by rule 196
++	DATATYPE	reduce by rule 196
++	TYPE	reduce by rule 196
++	AND	shift 247
++	RPAREN	reduce by rule 196
++	SEMICOLON	reduce by rule 196
++	STORAGE	reduce by rule 196
++	LOCATIONS	reduce by rule 196
++	STRUCTURE	reduce by rule 196
++	FUNCTOR	reduce by rule 196
++	SIGNATURE	reduce by rule 196
++	SHARING	reduce by rule 196
++	INSTRUCTION	reduce by rule 196
++	VLIW	reduce by rule 196
++	SUPERSCALAR	reduce by rule 196
++	FUN	reduce by rule 196
++	VAL	reduce by rule 196
++	INCLUDE	reduce by rule 196
++	OPEN	reduce by rule 196
++	LITTLE	reduce by rule 196
++	BIG	reduce by rule 196
++	PIPELINE	reduce by rule 196
++	LOWERCASE	reduce by rule 196
++	UPPERCASE	reduce by rule 196
++	VERBATIM	reduce by rule 196
++	RTL	reduce by rule 196
++	NONFIX	reduce by rule 196
++	INFIX	reduce by rule 196
++	INFIXR	reduce by rule 196
++	DEBUG	reduce by rule 196
++	RESOURCE	reduce by rule 196
++	CPU	reduce by rule 196
++	LATENCY	reduce by rule 196
++	EXCEPTION	reduce by rule 196
++	EOF	reduce by rule 196
++
++
++	.	error
++
++
++state 157:
++
++	mymldecl : TYPE typebinds .  (reduce by rule 60)
++
++	ARCHITECTURE	reduce by rule 60
++	END	reduce by rule 60
++	LOCAL	reduce by rule 60
++	IN	reduce by rule 60
++	DATATYPE	reduce by rule 60
++	TYPE	reduce by rule 60
++	RPAREN	reduce by rule 60
++	SEMICOLON	reduce by rule 60
++	STORAGE	reduce by rule 60
++	LOCATIONS	reduce by rule 60
++	STRUCTURE	reduce by rule 60
++	FUNCTOR	reduce by rule 60
++	SIGNATURE	reduce by rule 60
++	SHARING	reduce by rule 60
++	INSTRUCTION	reduce by rule 60
++	VLIW	reduce by rule 60
++	SUPERSCALAR	reduce by rule 60
++	FUN	reduce by rule 60
++	VAL	reduce by rule 60
++	INCLUDE	reduce by rule 60
++	OPEN	reduce by rule 60
++	LITTLE	reduce by rule 60
++	BIG	reduce by rule 60
++	PIPELINE	reduce by rule 60
++	LOWERCASE	reduce by rule 60
++	UPPERCASE	reduce by rule 60
++	VERBATIM	reduce by rule 60
++	RTL	reduce by rule 60
++	NONFIX	reduce by rule 60
++	INFIX	reduce by rule 60
++	INFIXR	reduce by rule 60
++	DEBUG	reduce by rule 60
++	RESOURCE	reduce by rule 60
++	CPU	reduce by rule 60
++	LATENCY	reduce by rule 60
++	EXCEPTION	reduce by rule 60
++	EOF	reduce by rule 60
++
++
++	.	error
++
++
++state 158:
++
++	tyvar : TYVAR .  (reduce by rule 426)
++
++	ARCHITECTURE	reduce by rule 426
++	END	reduce by rule 426
++	LOCAL	reduce by rule 426
++	IN	reduce by rule 426
++	OF	reduce by rule 426
++	DATATYPE	reduce by rule 426
++	TYPE	reduce by rule 426
++	EQ	reduce by rule 426
++	TIMES	reduce by rule 426
++	AND	reduce by rule 426
++	LPAREN	reduce by rule 426
++	RPAREN	reduce by rule 426
++	RBRACKET	reduce by rule 426
++	RBRACE	reduce by rule 426
++	SEMICOLON	reduce by rule 426
++	LDQUOTE	reduce by rule 426
++	CELLSET	reduce by rule 426
++	STORAGE	reduce by rule 426
++	LOCATIONS	reduce by rule 426
++	COMMA	reduce by rule 426
++	COLON	reduce by rule 426
++	BAR	reduce by rule 426
++	ARROW	reduce by rule 426
++	DARROW	reduce by rule 426
++	BITS	reduce by rule 426
++	THEN	reduce by rule 426
++	ELSE	reduce by rule 426
++	STRUCTURE	reduce by rule 426
++	FUNCTOR	reduce by rule 426
++	SIGNATURE	reduce by rule 426
++	WHERE	reduce by rule 426
++	SHARING	reduce by rule 426
++	INSTRUCTION	reduce by rule 426
++	CELL	reduce by rule 426
++	VLIW	reduce by rule 426
++	SUPERSCALAR	reduce by rule 426
++	WITHTYPE	reduce by rule 426
++	FUN	reduce by rule 426
++	VAL	reduce by rule 426
++	INCLUDE	reduce by rule 426
++	OPEN	reduce by rule 426
++	LITTLE	reduce by rule 426
++	BIG	reduce by rule 426
++	PIPELINE	reduce by rule 426
++	LOWERCASE	reduce by rule 426
++	UPPERCASE	reduce by rule 426
++	VERBATIM	reduce by rule 426
++	RTL	reduce by rule 426
++	SPAN	reduce by rule 426
++	DELAYSLOT	reduce by rule 426
++	NONFIX	reduce by rule 426
++	INFIX	reduce by rule 426
++	INFIXR	reduce by rule 426
++	DEBUG	reduce by rule 426
++	ASM_COLON	reduce by rule 426
++	MC_COLON	reduce by rule 426
++	RTL_COLON	reduce by rule 426
++	DELAYSLOT_COLON	reduce by rule 426
++	NULLIFIED_COLON	reduce by rule 426
++	PADDING_COLON	reduce by rule 426
++	RESOURCE	reduce by rule 426
++	CPU	reduce by rule 426
++	LATENCY	reduce by rule 426
++	EXCEPTION	reduce by rule 426
++	ID	reduce by rule 426
++	SYMBOL	reduce by rule 426
++	WORD	reduce by rule 426
++	INT	reduce by rule 426
++	STRING	reduce by rule 426
++	EOF	reduce by rule 426
++
++
++	.	error
++
++
++state 159:
++
++	tyvar : HASH . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 248
++
++	.	error
++
++
++state 160:
++
++	tyvarseq : LPAREN . tyvars RPAREN 
++
++	HASH	shift 159
++	TYVAR	shift 158
++
++	tyvar	goto 250
++	tyvars	goto 249
++
++	.	error
++
++
++state 161:
++
++	datatypebind : tyvarseq . id opcodeencoding fieldty hasasm EQ consbinds 
++	datatypebind : tyvarseq . id opcodeencoding fieldty hasasm EQ DATATYPE ty 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 251
++
++	.	error
++
++
++state 162:
++
++	datatypebinds : datatypebind .  (reduce by rule 127)
++	datatypebinds : datatypebind . AND datatypebinds 
++
++	ARCHITECTURE	reduce by rule 127
++	END	reduce by rule 127
++	LOCAL	reduce by rule 127
++	IN	reduce by rule 127
++	DATATYPE	reduce by rule 127
++	TYPE	reduce by rule 127
++	AND	shift 252
++	RPAREN	reduce by rule 127
++	SEMICOLON	reduce by rule 127
++	STORAGE	reduce by rule 127
++	LOCATIONS	reduce by rule 127
++	STRUCTURE	reduce by rule 127
++	FUNCTOR	reduce by rule 127
++	SIGNATURE	reduce by rule 127
++	SHARING	reduce by rule 127
++	INSTRUCTION	reduce by rule 127
++	VLIW	reduce by rule 127
++	SUPERSCALAR	reduce by rule 127
++	WITHTYPE	reduce by rule 127
++	FUN	reduce by rule 127
++	VAL	reduce by rule 127
++	INCLUDE	reduce by rule 127
++	OPEN	reduce by rule 127
++	LITTLE	reduce by rule 127
++	BIG	reduce by rule 127
++	PIPELINE	reduce by rule 127
++	LOWERCASE	reduce by rule 127
++	UPPERCASE	reduce by rule 127
++	VERBATIM	reduce by rule 127
++	RTL	reduce by rule 127
++	NONFIX	reduce by rule 127
++	INFIX	reduce by rule 127
++	INFIXR	reduce by rule 127
++	DEBUG	reduce by rule 127
++	RESOURCE	reduce by rule 127
++	CPU	reduce by rule 127
++	LATENCY	reduce by rule 127
++	EXCEPTION	reduce by rule 127
++	EOF	reduce by rule 127
++
++
++	.	error
++
++
++state 163:
++
++	mymldecl : DATATYPE datatypebinds . withtypeclause 
++
++	ARCHITECTURE	reduce by rule 194
++	END	reduce by rule 194
++	LOCAL	reduce by rule 194
++	IN	reduce by rule 194
++	DATATYPE	reduce by rule 194
++	TYPE	reduce by rule 194
++	RPAREN	reduce by rule 194
++	SEMICOLON	reduce by rule 194
++	STORAGE	reduce by rule 194
++	LOCATIONS	reduce by rule 194
++	STRUCTURE	reduce by rule 194
++	FUNCTOR	reduce by rule 194
++	SIGNATURE	reduce by rule 194
++	SHARING	reduce by rule 194
++	INSTRUCTION	reduce by rule 194
++	VLIW	reduce by rule 194
++	SUPERSCALAR	reduce by rule 194
++	WITHTYPE	shift 254
++	FUN	reduce by rule 194
++	VAL	reduce by rule 194
++	INCLUDE	reduce by rule 194
++	OPEN	reduce by rule 194
++	LITTLE	reduce by rule 194
++	BIG	reduce by rule 194
++	PIPELINE	reduce by rule 194
++	LOWERCASE	reduce by rule 194
++	UPPERCASE	reduce by rule 194
++	VERBATIM	reduce by rule 194
++	RTL	reduce by rule 194
++	NONFIX	reduce by rule 194
++	INFIX	reduce by rule 194
++	INFIXR	reduce by rule 194
++	DEBUG	reduce by rule 194
++	RESOURCE	reduce by rule 194
++	CPU	reduce by rule 194
++	LATENCY	reduce by rule 194
++	EXCEPTION	reduce by rule 194
++	EOF	reduce by rule 194
++
++	withtypeclause	goto 253
++
++	.	error
++
++
++state 164:
++
++	scopeddecls : newScope . decls oldScope 
++
++	ARCHITECTURE	shift 39
++	END	reduce by rule 1
++	LOCAL	shift 38
++	IN	reduce by rule 1
++	DATATYPE	shift 37
++	TYPE	shift 36
++	RPAREN	reduce by rule 1
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++
++	decls	goto 255
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 165:
++
++	mymldecl : LOCAL scopeddecls . IN scopeddecls END 
++
++	IN	shift 256
++
++
++	.	error
++
++
++state 166:
++
++	mymddecl : ARCHITECTURE id . EQ STRUCT decls END 
++
++	EQ	shift 257
++
++
++	.	error
++
++
++state 167:
++
++	optsemi : SEMICOLON optsemi .  (reduce by rule 6)
++
++	ARCHITECTURE	reduce by rule 6
++	END	reduce by rule 6
++	LOCAL	reduce by rule 6
++	IN	reduce by rule 6
++	DATATYPE	reduce by rule 6
++	TYPE	reduce by rule 6
++	RPAREN	reduce by rule 6
++	STORAGE	reduce by rule 6
++	LOCATIONS	reduce by rule 6
++	STRUCTURE	reduce by rule 6
++	FUNCTOR	reduce by rule 6
++	SIGNATURE	reduce by rule 6
++	SHARING	reduce by rule 6
++	INSTRUCTION	reduce by rule 6
++	VLIW	reduce by rule 6
++	SUPERSCALAR	reduce by rule 6
++	FUN	reduce by rule 6
++	VAL	reduce by rule 6
++	INCLUDE	reduce by rule 6
++	OPEN	reduce by rule 6
++	LITTLE	reduce by rule 6
++	BIG	reduce by rule 6
++	PIPELINE	reduce by rule 6
++	LOWERCASE	reduce by rule 6
++	UPPERCASE	reduce by rule 6
++	VERBATIM	reduce by rule 6
++	RTL	reduce by rule 6
++	NONFIX	reduce by rule 6
++	INFIX	reduce by rule 6
++	INFIXR	reduce by rule 6
++	DEBUG	reduce by rule 6
++	RESOURCE	reduce by rule 6
++	CPU	reduce by rule 6
++	LATENCY	reduce by rule 6
++	EXCEPTION	reduce by rule 6
++	EOF	reduce by rule 6
++
++
++	.	error
++
++
++state 168:
++
++	exceptionbinds : exceptionbind AND . exceptionbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 47
++	exceptionbind	goto 46
++	exceptionbinds	goto 258
++
++	.	error
++
++
++state 169:
++
++	exceptionbind : id EQ . ident 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 259
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 170:
++
++	exceptionbind : id OF . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 264
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 171:
++
++	latencyclauses : latencyclause BAR . latencyclauses 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 55
++	latencyclauses	goto 272
++	latencyclause	goto 51
++
++	.	error
++
++
++state 172:
++
++	latencybinds : latencybind AND . latencybinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 55
++	latencybinds	goto 273
++	latencybind	goto 53
++	latencyclauses	goto 52
++	latencyclause	goto 51
++
++	.	error
++
++
++state 173:
++
++	latencyclause : id pat . EQ exp 
++
++	EQ	shift 274
++
++
++	.	error
++
++
++state 174:
++
++	cpubinds : cpubind AND . cpubinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 58
++	cpubinds	goto 275
++	cpubind	goto 56
++
++	.	error
++
++
++state 175:
++
++	cpubind : id aliases . int LBRACKET resources RBRACKET 
++
++	INT	shift 64
++
++	int	goto 276
++
++	.	error
++
++
++state 176:
++
++	aliases : string . aliases 
++
++	INT	reduce by rule 33
++	STRING	shift 91
++
++	string	goto 176
++	aliases	goto 277
++
++	.	error
++
++
++state 177:
++
++	resourcebinds : id AND . resourcebinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 60
++	resourcebinds	goto 278
++
++	.	error
++
++
++state 178:
++
++	mymldecl : INFIXR intopt syms .  (reduce by rule 78)
++
++	ARCHITECTURE	reduce by rule 78
++	END	reduce by rule 78
++	LOCAL	reduce by rule 78
++	IN	reduce by rule 78
++	DATATYPE	reduce by rule 78
++	TYPE	reduce by rule 78
++	RPAREN	reduce by rule 78
++	SEMICOLON	reduce by rule 78
++	STORAGE	reduce by rule 78
++	LOCATIONS	reduce by rule 78
++	STRUCTURE	reduce by rule 78
++	FUNCTOR	reduce by rule 78
++	SIGNATURE	reduce by rule 78
++	SHARING	reduce by rule 78
++	INSTRUCTION	reduce by rule 78
++	VLIW	reduce by rule 78
++	SUPERSCALAR	reduce by rule 78
++	FUN	reduce by rule 78
++	VAL	reduce by rule 78
++	INCLUDE	reduce by rule 78
++	OPEN	reduce by rule 78
++	LITTLE	reduce by rule 78
++	BIG	reduce by rule 78
++	PIPELINE	reduce by rule 78
++	LOWERCASE	reduce by rule 78
++	UPPERCASE	reduce by rule 78
++	VERBATIM	reduce by rule 78
++	RTL	reduce by rule 78
++	NONFIX	reduce by rule 78
++	INFIX	reduce by rule 78
++	INFIXR	reduce by rule 78
++	DEBUG	reduce by rule 78
++	RESOURCE	reduce by rule 78
++	CPU	reduce by rule 78
++	LATENCY	reduce by rule 78
++	EXCEPTION	reduce by rule 78
++	EOF	reduce by rule 78
++
++
++	.	error
++
++
++state 179:
++
++	mymldecl : INFIX intopt syms .  (reduce by rule 77)
++
++	ARCHITECTURE	reduce by rule 77
++	END	reduce by rule 77
++	LOCAL	reduce by rule 77
++	IN	reduce by rule 77
++	DATATYPE	reduce by rule 77
++	TYPE	reduce by rule 77
++	RPAREN	reduce by rule 77
++	SEMICOLON	reduce by rule 77
++	STORAGE	reduce by rule 77
++	LOCATIONS	reduce by rule 77
++	STRUCTURE	reduce by rule 77
++	FUNCTOR	reduce by rule 77
++	SIGNATURE	reduce by rule 77
++	SHARING	reduce by rule 77
++	INSTRUCTION	reduce by rule 77
++	VLIW	reduce by rule 77
++	SUPERSCALAR	reduce by rule 77
++	FUN	reduce by rule 77
++	VAL	reduce by rule 77
++	INCLUDE	reduce by rule 77
++	OPEN	reduce by rule 77
++	LITTLE	reduce by rule 77
++	BIG	reduce by rule 77
++	PIPELINE	reduce by rule 77
++	LOWERCASE	reduce by rule 77
++	UPPERCASE	reduce by rule 77
++	VERBATIM	reduce by rule 77
++	RTL	reduce by rule 77
++	NONFIX	reduce by rule 77
++	INFIX	reduce by rule 77
++	INFIXR	reduce by rule 77
++	DEBUG	reduce by rule 77
++	RESOURCE	reduce by rule 77
++	CPU	reduce by rule 77
++	LATENCY	reduce by rule 77
++	EXCEPTION	reduce by rule 77
++	EOF	reduce by rule 77
++
++
++	.	error
++
++
++state 180:
++
++	syms : sym syms .  (reduce by rule 110)
++
++	ARCHITECTURE	reduce by rule 110
++	END	reduce by rule 110
++	LOCAL	reduce by rule 110
++	IN	reduce by rule 110
++	DATATYPE	reduce by rule 110
++	TYPE	reduce by rule 110
++	RPAREN	reduce by rule 110
++	SEMICOLON	reduce by rule 110
++	STORAGE	reduce by rule 110
++	LOCATIONS	reduce by rule 110
++	COLON	reduce by rule 110
++	STRUCTURE	reduce by rule 110
++	FUNCTOR	reduce by rule 110
++	SIGNATURE	reduce by rule 110
++	SHARING	reduce by rule 110
++	INSTRUCTION	reduce by rule 110
++	VLIW	reduce by rule 110
++	SUPERSCALAR	reduce by rule 110
++	FUN	reduce by rule 110
++	VAL	reduce by rule 110
++	INCLUDE	reduce by rule 110
++	OPEN	reduce by rule 110
++	LITTLE	reduce by rule 110
++	BIG	reduce by rule 110
++	PIPELINE	reduce by rule 110
++	LOWERCASE	reduce by rule 110
++	UPPERCASE	reduce by rule 110
++	VERBATIM	reduce by rule 110
++	RTL	reduce by rule 110
++	NONFIX	reduce by rule 110
++	INFIX	reduce by rule 110
++	INFIXR	reduce by rule 110
++	DEBUG	reduce by rule 110
++	RESOURCE	reduce by rule 110
++	CPU	reduce by rule 110
++	LATENCY	reduce by rule 110
++	EXCEPTION	reduce by rule 110
++	EOF	reduce by rule 110
++
++
++	.	error
++
++
++state 181:
++
++	mymldecl : RTL asapat EQ . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 281
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 182:
++
++	path : path DOT . sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 302
++	symb	goto 67
++
++	.	error
++
++
++state 183:
++
++	mymldecl : RTL syms COLON . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 303
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 184:
++
++	apat : sym CONCAT . LBRACKET pats RBRACKET 
++	apat : sym CONCAT . LBRACKET pats RBRACKET CONCAT sym 
++
++	LBRACKET	shift 304
++
++
++	.	error
++
++
++state 185:
++
++	asapat : id AS . asapat 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 307
++	sym	goto 306
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 84
++	asapat	goto 305
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 186:
++
++	path : id DOT . sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 308
++	symb	goto 67
++
++	.	error
++
++
++state 187:
++
++	mymldecl : RTL id LBRACE . labpats0 RBRACE EQ exp 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	RBRACE	reduce by rule 326
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 191
++	symb	goto 67
++	labpat	goto 190
++	labpats0	goto 309
++	labpats	goto 188
++
++	.	error
++
++
++state 188:
++
++	labpats0 : labpats .  (reduce by rule 327)
++
++	RBRACE	reduce by rule 327
++
++
++	.	error
++
++
++state 189:
++
++	apat : LBRACE labpats0 . RBRACE 
++
++	RBRACE	shift 310
++
++
++	.	error
++
++
++state 190:
++
++	labpats : labpat .  (reduce by rule 328)
++	labpats : labpat . COMMA DOTDOT 
++	labpats : labpat . COMMA labpats 
++
++	RBRACE	reduce by rule 328
++	COMMA	shift 311
++
++
++	.	error
++
++
++state 191:
++
++	labpat : sym .  (reduce by rule 331)
++	labpat : sym . EQ typedpat 
++	labpat : sym . AS typedpat 
++	labpat : sym . WHERE typedexp 
++	labpat : sym . WHERE typedexp IN typedpat 
++
++	EQ	shift 314
++	RBRACE	reduce by rule 331
++	COMMA	reduce by rule 331
++	WHERE	shift 313
++	AS	shift 312
++
++
++	.	error
++
++
++state 192:
++
++	pats : pats1 .  (reduce by rule 322)
++
++	RBRACKET	reduce by rule 322
++
++
++	.	error
++
++
++state 193:
++
++	apat : LBRACKET pats . RBRACKET 
++	apat : LBRACKET pats . RBRACKET CONCAT sym 
++
++	RBRACKET	shift 315
++
++
++	.	error
++
++
++state 194:
++
++	typedpat : typedpat . COLON ty 
++	pats1 : typedpat .  (reduce by rule 323)
++	pats1 : typedpat . COMMA pats1 
++
++	RPAREN	reduce by rule 323
++	RBRACKET	reduce by rule 323
++	COMMA	shift 317
++	COLON	shift 316
++
++
++	.	error
++
++
++state 195:
++
++	typedpat : pat .  (reduce by rule 317)
++
++	AND	reduce by rule 317
++	RPAREN	reduce by rule 317
++	RBRACKET	reduce by rule 317
++	RBRACE	reduce by rule 317
++	COMMA	reduce by rule 317
++	COLON	reduce by rule 317
++	BAR	reduce by rule 317
++	DARROW	reduce by rule 317
++	WHERE	reduce by rule 317
++	EXCEPTION	reduce by rule 317
++
++
++	.	error
++
++
++state 196:
++
++	apat : LPAREN andpats2 . RPAREN 
++
++	RPAREN	shift 318
++
++
++	.	error
++
++
++state 197:
++
++	apat : LPAREN orpats2 . RPAREN 
++
++	RPAREN	shift 319
++
++
++	.	error
++
++
++state 198:
++
++	apat : LPAREN pats2 . RPAREN 
++
++	RPAREN	shift 320
++
++
++	.	error
++
++
++state 199:
++
++	apat : LPAREN typedpat . RPAREN 
++	apat : LPAREN typedpat . WHERE typedexp RPAREN 
++	apat : LPAREN typedpat . WHERE typedexp IN typedpat RPAREN 
++	typedpat : typedpat . COLON ty 
++	pats2 : typedpat . COMMA pats1 
++	orpats2 : typedpat . BAR typedpat 
++	orpats2 : typedpat . BAR orpats2 
++	andpats2 : typedpat . AND typedpat 
++	andpats2 : typedpat . AND andpats2 
++
++	AND	shift 325
++	RPAREN	shift 324
++	COMMA	shift 323
++	COLON	shift 316
++	BAR	shift 322
++	WHERE	shift 321
++
++
++	.	error
++
++
++state 200:
++
++	apat : LPAREN RPAREN .  (reduce by rule 293)
++
++	EQ	reduce by rule 293
++	TIMES	reduce by rule 293
++	AND	reduce by rule 293
++	DEREF	reduce by rule 293
++	NOT	reduce by rule 293
++	LHASHBRACKET	reduce by rule 293
++	LPAREN	reduce by rule 293
++	RPAREN	reduce by rule 293
++	LBRACKET	reduce by rule 293
++	RBRACKET	reduce by rule 293
++	LBRACE	reduce by rule 293
++	RBRACE	reduce by rule 293
++	CELLSET	reduce by rule 293
++	COMMA	reduce by rule 293
++	COLON	reduce by rule 293
++	BAR	reduce by rule 293
++	DARROW	reduce by rule 293
++	TRUE	reduce by rule 293
++	FALSE	reduce by rule 293
++	WILD	reduce by rule 293
++	WHERE	reduce by rule 293
++	OP	reduce by rule 293
++	ALWAYS	reduce by rule 293
++	NEVER	reduce by rule 293
++	EXCEPTION	reduce by rule 293
++	ID	reduce by rule 293
++	SYMBOL	reduce by rule 293
++	WORD	reduce by rule 293
++	INT	reduce by rule 293
++	INTINF	reduce by rule 293
++	REAL	reduce by rule 293
++	STRING	reduce by rule 293
++	CHAR	reduce by rule 293
++
++
++	.	error
++
++
++state 201:
++
++	apat : LHASHBRACKET pats . RBRACKET 
++
++	RBRACKET	shift 326
++
++
++	.	error
++
++
++state 202:
++
++	pipelineclauses : pipelineclause BAR . pipelineclauses 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 108
++	pipelineclauses	goto 327
++	pipelineclause	goto 104
++
++	.	error
++
++
++state 203:
++
++	pipelinebinds : pipelinebind AND . pipelinebinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 108
++	pipelinebinds	goto 328
++	pipelinebind	goto 106
++	pipelineclauses	goto 105
++	pipelineclause	goto 104
++
++	.	error
++
++
++state 204:
++
++	pipelineclause : id pat . EQ LBRACKET cycles0 RBRACKET 
++
++	EQ	shift 329
++
++
++	.	error
++
++
++state 205:
++
++	idents : ident idents .  (reduce by rule 112)
++
++	ARCHITECTURE	reduce by rule 112
++	END	reduce by rule 112
++	LOCAL	reduce by rule 112
++	IN	reduce by rule 112
++	DATATYPE	reduce by rule 112
++	TYPE	reduce by rule 112
++	RPAREN	reduce by rule 112
++	SEMICOLON	reduce by rule 112
++	STORAGE	reduce by rule 112
++	LOCATIONS	reduce by rule 112
++	STRUCTURE	reduce by rule 112
++	FUNCTOR	reduce by rule 112
++	SIGNATURE	reduce by rule 112
++	SHARING	reduce by rule 112
++	INSTRUCTION	reduce by rule 112
++	VLIW	reduce by rule 112
++	SUPERSCALAR	reduce by rule 112
++	FUN	reduce by rule 112
++	VAL	reduce by rule 112
++	INCLUDE	reduce by rule 112
++	OPEN	reduce by rule 112
++	LITTLE	reduce by rule 112
++	BIG	reduce by rule 112
++	PIPELINE	reduce by rule 112
++	LOWERCASE	reduce by rule 112
++	UPPERCASE	reduce by rule 112
++	VERBATIM	reduce by rule 112
++	RTL	reduce by rule 112
++	NONFIX	reduce by rule 112
++	INFIX	reduce by rule 112
++	INFIXR	reduce by rule 112
++	DEBUG	reduce by rule 112
++	RESOURCE	reduce by rule 112
++	CPU	reduce by rule 112
++	LATENCY	reduce by rule 112
++	EXCEPTION	reduce by rule 112
++	EOF	reduce by rule 112
++
++
++	.	error
++
++
++state 206:
++
++	sigexp : sigexp WHERE . sigsubs 
++
++	TYPE	shift 333
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 332
++	ident2	goto 112
++	path	goto 85
++	sigsub	goto 331
++	sigsubs	goto 330
++
++	.	error
++
++
++state 207:
++
++	decl : INCLUDE string optsemi .  (reduce by rule 9)
++
++	ARCHITECTURE	reduce by rule 9
++	END	reduce by rule 9
++	LOCAL	reduce by rule 9
++	IN	reduce by rule 9
++	DATATYPE	reduce by rule 9
++	TYPE	reduce by rule 9
++	RPAREN	reduce by rule 9
++	STORAGE	reduce by rule 9
++	LOCATIONS	reduce by rule 9
++	STRUCTURE	reduce by rule 9
++	FUNCTOR	reduce by rule 9
++	SIGNATURE	reduce by rule 9
++	SHARING	reduce by rule 9
++	INSTRUCTION	reduce by rule 9
++	VLIW	reduce by rule 9
++	SUPERSCALAR	reduce by rule 9
++	FUN	reduce by rule 9
++	VAL	reduce by rule 9
++	INCLUDE	reduce by rule 9
++	OPEN	reduce by rule 9
++	LITTLE	reduce by rule 9
++	BIG	reduce by rule 9
++	PIPELINE	reduce by rule 9
++	LOWERCASE	reduce by rule 9
++	UPPERCASE	reduce by rule 9
++	VERBATIM	reduce by rule 9
++	RTL	reduce by rule 9
++	NONFIX	reduce by rule 9
++	INFIX	reduce by rule 9
++	INFIXR	reduce by rule 9
++	DEBUG	reduce by rule 9
++	RESOURCE	reduce by rule 9
++	CPU	reduce by rule 9
++	LATENCY	reduce by rule 9
++	EXCEPTION	reduce by rule 9
++	EOF	reduce by rule 9
++
++
++	.	error
++
++
++state 208:
++
++	sigexp : SIG decls . END 
++
++	END	shift 334
++
++
++	.	error
++
++
++state 209:
++
++	valbinds : valbind AND . valbinds 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 121
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	valbind	goto 120
++	valbinds	goto 335
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 210:
++
++	valbind : pat EQ . typedexp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 336
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 211:
++
++	apppat : apppat apat2 .  (reduce by rule 314)
++
++	EQ	reduce by rule 314
++	TIMES	reduce by rule 314
++	AND	reduce by rule 314
++	DEREF	reduce by rule 314
++	NOT	reduce by rule 314
++	LHASHBRACKET	reduce by rule 314
++	LPAREN	reduce by rule 314
++	RPAREN	reduce by rule 314
++	LBRACKET	reduce by rule 314
++	RBRACKET	reduce by rule 314
++	LBRACE	reduce by rule 314
++	RBRACE	reduce by rule 314
++	CELLSET	reduce by rule 314
++	COMMA	reduce by rule 314
++	COLON	reduce by rule 314
++	BAR	reduce by rule 314
++	DARROW	reduce by rule 314
++	TRUE	reduce by rule 314
++	FALSE	reduce by rule 314
++	WILD	reduce by rule 314
++	WHERE	reduce by rule 314
++	OP	reduce by rule 314
++	ALWAYS	reduce by rule 314
++	NEVER	reduce by rule 314
++	EXCEPTION	reduce by rule 314
++	ID	reduce by rule 314
++	SYMBOL	reduce by rule 314
++	WORD	reduce by rule 314
++	INT	reduce by rule 314
++	INTINF	reduce by rule 314
++	REAL	reduce by rule 314
++	STRING	reduce by rule 314
++	CHAR	reduce by rule 314
++
++
++	.	error
++
++
++state 212:
++
++	mymldecl : VAL syms COLON . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 338
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 213:
++
++	pat : id AS . pat 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 339
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 214:
++
++	apat2 : OP sym .  (reduce by rule 312)
++
++	EQ	reduce by rule 312
++	TIMES	reduce by rule 312
++	AND	reduce by rule 312
++	DEREF	reduce by rule 312
++	NOT	reduce by rule 312
++	LHASHBRACKET	reduce by rule 312
++	LPAREN	reduce by rule 312
++	RPAREN	reduce by rule 312
++	LBRACKET	reduce by rule 312
++	RBRACKET	reduce by rule 312
++	LBRACE	reduce by rule 312
++	RBRACE	reduce by rule 312
++	CELLSET	reduce by rule 312
++	COMMA	reduce by rule 312
++	COLON	reduce by rule 312
++	BAR	reduce by rule 312
++	DARROW	reduce by rule 312
++	TRUE	reduce by rule 312
++	FALSE	reduce by rule 312
++	WILD	reduce by rule 312
++	WHERE	reduce by rule 312
++	OP	reduce by rule 312
++	ALWAYS	reduce by rule 312
++	NEVER	reduce by rule 312
++	EXCEPTION	reduce by rule 312
++	ID	reduce by rule 312
++	SYMBOL	reduce by rule 312
++	WORD	reduce by rule 312
++	INT	reduce by rule 312
++	INTINF	reduce by rule 312
++	REAL	reduce by rule 312
++	STRING	reduce by rule 312
++	CHAR	reduce by rule 312
++
++
++	.	error
++
++
++state 215:
++
++	funbinds : funbind AND . funbinds 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 133
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	funclause	goto 132
++	funclauses	goto 131
++	funbind	goto 130
++	funbinds	goto 340
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 216:
++
++	funclauses : funclause BAR . funclauses 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 133
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	funclause	goto 132
++	funclauses	goto 341
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 217:
++
++	funclause : apppat funguard . return_ty cont EQ typedexp 
++
++	EQ	reduce by rule 344
++	COLON	shift 343
++	EXCEPTION	reduce by rule 344
++
++	return_ty	goto 342
++
++	.	error
++
++
++state 218:
++
++	funguard : WHERE . LPAREN typedexp RPAREN 
++
++	LPAREN	shift 344
++
++
++	.	error
++
++
++state 219:
++
++	consbinds : consbind BAR . consbinds 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 138
++	symb	goto 67
++	consbinds	goto 345
++	consbind	goto 136
++
++	.	error
++
++
++state 220:
++
++	consbind : sym of_ty . consassembly consencoding rtl nop nullified delayslot delayslotcandidate sdi latency pipeline 
++
++	ARCHITECTURE	reduce by rule 182
++	END	reduce by rule 182
++	LOCAL	reduce by rule 182
++	IN	reduce by rule 182
++	DATATYPE	reduce by rule 182
++	TYPE	reduce by rule 182
++	AND	reduce by rule 182
++	LPAREN	reduce by rule 182
++	RPAREN	reduce by rule 182
++	SEMICOLON	reduce by rule 182
++	LDQUOTE	shift 293
++	CELLSET	reduce by rule 182
++	STORAGE	reduce by rule 182
++	LOCATIONS	reduce by rule 182
++	BAR	reduce by rule 182
++	STRUCTURE	reduce by rule 182
++	FUNCTOR	reduce by rule 182
++	SIGNATURE	reduce by rule 182
++	SHARING	reduce by rule 182
++	INSTRUCTION	reduce by rule 182
++	VLIW	reduce by rule 182
++	SUPERSCALAR	reduce by rule 182
++	WITHTYPE	reduce by rule 182
++	FUN	reduce by rule 182
++	VAL	reduce by rule 182
++	INCLUDE	reduce by rule 182
++	OPEN	reduce by rule 182
++	LITTLE	reduce by rule 182
++	BIG	reduce by rule 182
++	PIPELINE	reduce by rule 182
++	LOWERCASE	reduce by rule 182
++	UPPERCASE	reduce by rule 182
++	VERBATIM	reduce by rule 182
++	RTL	reduce by rule 182
++	SPAN	reduce by rule 182
++	DELAYSLOT	reduce by rule 182
++	NONFIX	reduce by rule 182
++	INFIX	reduce by rule 182
++	INFIXR	reduce by rule 182
++	DEBUG	reduce by rule 182
++	ASM_COLON	shift 349
++	MC_COLON	reduce by rule 182
++	RTL_COLON	reduce by rule 182
++	DELAYSLOT_COLON	reduce by rule 182
++	NULLIFIED_COLON	reduce by rule 182
++	PADDING_COLON	reduce by rule 182
++	RESOURCE	reduce by rule 182
++	CPU	reduce by rule 182
++	LATENCY	reduce by rule 182
++	EXCEPTION	reduce by rule 182
++	ID	reduce by rule 182
++	SYMBOL	reduce by rule 182
++	WORD	reduce by rule 182
++	INT	reduce by rule 182
++	STRING	shift 91
++	EOF	reduce by rule 182
++
++	string	goto 348
++	consassembly	goto 347
++	asm_strings	goto 346
++
++	.	error
++
++
++state 221:
++
++	of_ty : OF . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 350
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 222:
++
++	mymddecl : INSTRUCTION FORMATS formatbinds .  (reduce by rule 19)
++
++	ARCHITECTURE	reduce by rule 19
++	END	reduce by rule 19
++	LOCAL	reduce by rule 19
++	IN	reduce by rule 19
++	DATATYPE	reduce by rule 19
++	TYPE	reduce by rule 19
++	RPAREN	reduce by rule 19
++	SEMICOLON	reduce by rule 19
++	STORAGE	reduce by rule 19
++	LOCATIONS	reduce by rule 19
++	STRUCTURE	reduce by rule 19
++	FUNCTOR	reduce by rule 19
++	SIGNATURE	reduce by rule 19
++	SHARING	reduce by rule 19
++	INSTRUCTION	reduce by rule 19
++	VLIW	reduce by rule 19
++	SUPERSCALAR	reduce by rule 19
++	FUN	reduce by rule 19
++	VAL	reduce by rule 19
++	INCLUDE	reduce by rule 19
++	OPEN	reduce by rule 19
++	LITTLE	reduce by rule 19
++	BIG	reduce by rule 19
++	PIPELINE	reduce by rule 19
++	LOWERCASE	reduce by rule 19
++	UPPERCASE	reduce by rule 19
++	VERBATIM	reduce by rule 19
++	RTL	reduce by rule 19
++	NONFIX	reduce by rule 19
++	INFIX	reduce by rule 19
++	INFIXR	reduce by rule 19
++	DEBUG	reduce by rule 19
++	RESOURCE	reduce by rule 19
++	CPU	reduce by rule 19
++	LATENCY	reduce by rule 19
++	EXCEPTION	reduce by rule 19
++	EOF	reduce by rule 19
++
++
++	.	error
++
++
++state 223:
++
++	formatbinds : formatbind .  (reduce by rule 204)
++	formatbinds : formatbind . BAR formatbinds 
++
++	ARCHITECTURE	reduce by rule 204
++	END	reduce by rule 204
++	LOCAL	reduce by rule 204
++	IN	reduce by rule 204
++	DATATYPE	reduce by rule 204
++	TYPE	reduce by rule 204
++	RPAREN	reduce by rule 204
++	SEMICOLON	reduce by rule 204
++	STORAGE	reduce by rule 204
++	LOCATIONS	reduce by rule 204
++	BAR	shift 351
++	STRUCTURE	reduce by rule 204
++	FUNCTOR	reduce by rule 204
++	SIGNATURE	reduce by rule 204
++	SHARING	reduce by rule 204
++	INSTRUCTION	reduce by rule 204
++	VLIW	reduce by rule 204
++	SUPERSCALAR	reduce by rule 204
++	FUN	reduce by rule 204
++	VAL	reduce by rule 204
++	INCLUDE	reduce by rule 204
++	OPEN	reduce by rule 204
++	LITTLE	reduce by rule 204
++	BIG	reduce by rule 204
++	PIPELINE	reduce by rule 204
++	LOWERCASE	reduce by rule 204
++	UPPERCASE	reduce by rule 204
++	VERBATIM	reduce by rule 204
++	RTL	reduce by rule 204
++	NONFIX	reduce by rule 204
++	INFIX	reduce by rule 204
++	INFIXR	reduce by rule 204
++	DEBUG	reduce by rule 204
++	RESOURCE	reduce by rule 204
++	CPU	reduce by rule 204
++	LATENCY	reduce by rule 204
++	EXCEPTION	reduce by rule 204
++	EOF	reduce by rule 204
++
++
++	.	error
++
++
++state 224:
++
++	mymddecl : INSTRUCTION FORMATS int . BITS formatbinds 
++
++	BITS	shift 352
++
++
++	.	error
++
++
++state 225:
++
++	formatbind : id . opt_of LBRACE fields RBRACE opt_exp 
++
++	OF	shift 354
++	LBRACE	reduce by rule 192
++
++	opt_of	goto 353
++
++	.	error
++
++
++state 226:
++
++	sharingdecls : sharingdecl AND . sharingdecls 
++
++	TYPE	shift 144
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 143
++	ident2	goto 112
++	path	goto 85
++	sharingdecl	goto 142
++	sharingdecls	goto 355
++	sharelist	goto 140
++
++	.	error
++
++
++state 227:
++
++	sharelist : ident EQ . ident 
++	sharelist : ident EQ . sharelist 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 357
++	ident2	goto 112
++	path	goto 85
++	sharelist	goto 356
++
++	.	error
++
++
++state 228:
++
++	sharingdecl : TYPE sharelist .  (reduce by rule 101)
++
++	ARCHITECTURE	reduce by rule 101
++	END	reduce by rule 101
++	LOCAL	reduce by rule 101
++	IN	reduce by rule 101
++	DATATYPE	reduce by rule 101
++	TYPE	reduce by rule 101
++	AND	reduce by rule 101
++	RPAREN	reduce by rule 101
++	SEMICOLON	reduce by rule 101
++	STORAGE	reduce by rule 101
++	LOCATIONS	reduce by rule 101
++	STRUCTURE	reduce by rule 101
++	FUNCTOR	reduce by rule 101
++	SIGNATURE	reduce by rule 101
++	SHARING	reduce by rule 101
++	INSTRUCTION	reduce by rule 101
++	VLIW	reduce by rule 101
++	SUPERSCALAR	reduce by rule 101
++	FUN	reduce by rule 101
++	VAL	reduce by rule 101
++	INCLUDE	reduce by rule 101
++	OPEN	reduce by rule 101
++	LITTLE	reduce by rule 101
++	BIG	reduce by rule 101
++	PIPELINE	reduce by rule 101
++	LOWERCASE	reduce by rule 101
++	UPPERCASE	reduce by rule 101
++	VERBATIM	reduce by rule 101
++	RTL	reduce by rule 101
++	NONFIX	reduce by rule 101
++	INFIX	reduce by rule 101
++	INFIXR	reduce by rule 101
++	DEBUG	reduce by rule 101
++	RESOURCE	reduce by rule 101
++	CPU	reduce by rule 101
++	LATENCY	reduce by rule 101
++	EXCEPTION	reduce by rule 101
++	EOF	reduce by rule 101
++
++
++	.	error
++
++
++state 229:
++
++	mymldecl : SIGNATURE id EQ . sigexp 
++
++	CELLSET	shift 50
++	SIG	shift 118
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 117
++	ident2	goto 112
++	path	goto 85
++	sigexp	goto 358
++
++	.	error
++
++
++state 230:
++
++	mymldecl : FUNCTOR id LPAREN . functorarg RPAREN EQ structexp 
++	mymldecl : FUNCTOR id LPAREN . functorarg RPAREN sigcon EQ structexp 
++
++	ARCHITECTURE	reduce by rule 107
++	LOCAL	reduce by rule 107
++	DATATYPE	reduce by rule 107
++	TYPE	reduce by rule 107
++	RPAREN	reduce by rule 107
++	CELLSET	shift 50
++	STORAGE	reduce by rule 107
++	LOCATIONS	reduce by rule 107
++	STRUCTURE	reduce by rule 107
++	FUNCTOR	reduce by rule 107
++	SIGNATURE	reduce by rule 107
++	SHARING	reduce by rule 107
++	INSTRUCTION	reduce by rule 107
++	VLIW	reduce by rule 107
++	SUPERSCALAR	reduce by rule 107
++	FUN	reduce by rule 107
++	VAL	reduce by rule 107
++	INCLUDE	reduce by rule 107
++	OPEN	reduce by rule 107
++	LITTLE	reduce by rule 107
++	BIG	reduce by rule 107
++	PIPELINE	reduce by rule 107
++	LOWERCASE	reduce by rule 107
++	UPPERCASE	reduce by rule 107
++	VERBATIM	reduce by rule 107
++	RTL	reduce by rule 107
++	NONFIX	reduce by rule 107
++	INFIX	reduce by rule 107
++	INFIXR	reduce by rule 107
++	DEBUG	reduce by rule 107
++	RESOURCE	reduce by rule 107
++	CPU	reduce by rule 107
++	LATENCY	reduce by rule 107
++	EXCEPTION	reduce by rule 107
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 361
++	scopeddecls	goto 360
++	functorarg	goto 359
++	newScope	goto 164
++
++	.	error
++
++
++state 231:
++
++	mymldecl : FUNCTOR id EQ . structexp 
++
++	CELLSET	shift 50
++	STRUCT	shift 364
++	ID	shift 49
++	SYMBOL	shift 48
++
++	structexp	goto 363
++	id	goto 114
++	ident	goto 362
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 232:
++
++	mymldecl : STRUCTURE id sigcon . EQ structexp 
++
++	EQ	shift 365
++
++
++	.	error
++
++
++state 233:
++
++	sigcon : COLONGREATER . sigexp 
++
++	CELLSET	shift 50
++	SIG	shift 118
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 117
++	ident2	goto 112
++	path	goto 85
++	sigexp	goto 366
++
++	.	error
++
++
++state 234:
++
++	sigcon : COLON . sigexp 
++	mymldecl : STRUCTURE id COLON . sigexp 
++
++	CELLSET	shift 50
++	SIG	shift 118
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 117
++	ident2	goto 112
++	path	goto 85
++	sigexp	goto 367
++
++	.	error
++
++
++state 235:
++
++	mymldecl : STRUCTURE id EQ . structexp 
++
++	CELLSET	shift 50
++	STRUCT	shift 364
++	ID	shift 49
++	SYMBOL	shift 48
++
++	structexp	goto 368
++	id	goto 114
++	ident	goto 362
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 236:
++
++	locbinds : locbind AND . locbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 150
++	locbind	goto 149
++	locbinds	goto 369
++
++	.	error
++
++
++state 237:
++
++	locbind : id pat . EQ exp 
++
++	EQ	shift 370
++
++
++	.	error
++
++
++state 238:
++
++	locbind : id EQ . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 371
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 239:
++
++	storagedecls : storagedecl BAR . storagedecls 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 153
++	storagedecl	goto 152
++	storagedecls	goto 372
++
++	.	error
++
++
++state 240:
++
++	storagedecl : id EQ . DOLLAR id LBRACKET cellcount RBRACKET bitSize aliasing defaults printcell 
++
++	DOLLAR	shift 373
++
++
++	.	error
++
++
++state 241:
++
++	tid : tid2 .  (reduce by rule 361)
++
++	ARCHITECTURE	reduce by rule 361
++	END	reduce by rule 361
++	LOCAL	reduce by rule 361
++	IN	reduce by rule 361
++	OF	reduce by rule 361
++	DATATYPE	reduce by rule 361
++	TYPE	reduce by rule 361
++	EQ	reduce by rule 361
++	TIMES	reduce by rule 361
++	AND	reduce by rule 361
++	LPAREN	reduce by rule 361
++	RPAREN	reduce by rule 361
++	RBRACKET	reduce by rule 361
++	RBRACE	reduce by rule 361
++	SEMICOLON	reduce by rule 361
++	LDQUOTE	reduce by rule 361
++	CELLSET	reduce by rule 361
++	STORAGE	reduce by rule 361
++	LOCATIONS	reduce by rule 361
++	COMMA	reduce by rule 361
++	COLON	reduce by rule 361
++	DOT	reduce by rule 361
++	BAR	reduce by rule 361
++	ARROW	reduce by rule 361
++	DARROW	reduce by rule 361
++	BITS	reduce by rule 361
++	THEN	reduce by rule 361
++	ELSE	reduce by rule 361
++	STRUCTURE	reduce by rule 361
++	FUNCTOR	reduce by rule 361
++	SIGNATURE	reduce by rule 361
++	WHERE	reduce by rule 361
++	SHARING	reduce by rule 361
++	INSTRUCTION	reduce by rule 361
++	CELL	reduce by rule 361
++	VLIW	reduce by rule 361
++	SUPERSCALAR	reduce by rule 361
++	WITHTYPE	reduce by rule 361
++	FUN	reduce by rule 361
++	VAL	reduce by rule 361
++	INCLUDE	reduce by rule 361
++	OPEN	reduce by rule 361
++	LITTLE	reduce by rule 361
++	BIG	reduce by rule 361
++	PIPELINE	reduce by rule 361
++	LOWERCASE	reduce by rule 361
++	UPPERCASE	reduce by rule 361
++	VERBATIM	reduce by rule 361
++	RTL	reduce by rule 361
++	SPAN	reduce by rule 361
++	DELAYSLOT	reduce by rule 361
++	NONFIX	reduce by rule 361
++	INFIX	reduce by rule 361
++	INFIXR	reduce by rule 361
++	DEBUG	reduce by rule 361
++	ASM_COLON	reduce by rule 361
++	MC_COLON	reduce by rule 361
++	RTL_COLON	reduce by rule 361
++	DELAYSLOT_COLON	reduce by rule 361
++	NULLIFIED_COLON	reduce by rule 361
++	PADDING_COLON	reduce by rule 361
++	RESOURCE	reduce by rule 361
++	CPU	reduce by rule 361
++	LATENCY	reduce by rule 361
++	EXCEPTION	reduce by rule 361
++	ID	reduce by rule 361
++	SYMBOL	reduce by rule 361
++	WORD	reduce by rule 361
++	INT	reduce by rule 361
++	STRING	reduce by rule 361
++	EOF	reduce by rule 361
++
++
++	.	error
++
++
++state 242:
++
++	mymldecl : TYPE tyvarseq tid .  (reduce by rule 67)
++	typebind : tyvarseq tid . EQ ty 
++
++	ARCHITECTURE	reduce by rule 67
++	END	reduce by rule 67
++	LOCAL	reduce by rule 67
++	IN	reduce by rule 67
++	DATATYPE	reduce by rule 67
++	TYPE	reduce by rule 67
++	EQ	shift 374
++	RPAREN	reduce by rule 67
++	SEMICOLON	reduce by rule 67
++	STORAGE	reduce by rule 67
++	LOCATIONS	reduce by rule 67
++	STRUCTURE	reduce by rule 67
++	FUNCTOR	reduce by rule 67
++	SIGNATURE	reduce by rule 67
++	SHARING	reduce by rule 67
++	INSTRUCTION	reduce by rule 67
++	VLIW	reduce by rule 67
++	SUPERSCALAR	reduce by rule 67
++	FUN	reduce by rule 67
++	VAL	reduce by rule 67
++	INCLUDE	reduce by rule 67
++	OPEN	reduce by rule 67
++	LITTLE	reduce by rule 67
++	BIG	reduce by rule 67
++	PIPELINE	reduce by rule 67
++	LOWERCASE	reduce by rule 67
++	UPPERCASE	reduce by rule 67
++	VERBATIM	reduce by rule 67
++	RTL	reduce by rule 67
++	NONFIX	reduce by rule 67
++	INFIX	reduce by rule 67
++	INFIXR	reduce by rule 67
++	DEBUG	reduce by rule 67
++	RESOURCE	reduce by rule 67
++	CPU	reduce by rule 67
++	LATENCY	reduce by rule 67
++	EXCEPTION	reduce by rule 67
++	EOF	reduce by rule 67
++
++
++	.	error
++
++
++state 243:
++
++	tid : id .  (reduce by rule 360)
++
++	ARCHITECTURE	reduce by rule 360
++	END	reduce by rule 360
++	LOCAL	reduce by rule 360
++	IN	reduce by rule 360
++	OF	reduce by rule 360
++	DATATYPE	reduce by rule 360
++	TYPE	reduce by rule 360
++	EQ	reduce by rule 360
++	TIMES	reduce by rule 360
++	AND	reduce by rule 360
++	LPAREN	reduce by rule 360
++	RPAREN	reduce by rule 360
++	RBRACKET	reduce by rule 360
++	RBRACE	reduce by rule 360
++	SEMICOLON	reduce by rule 360
++	LDQUOTE	reduce by rule 360
++	CELLSET	reduce by rule 360
++	STORAGE	reduce by rule 360
++	LOCATIONS	reduce by rule 360
++	COMMA	reduce by rule 360
++	COLON	reduce by rule 360
++	DOT	reduce by rule 360
++	BAR	reduce by rule 360
++	ARROW	reduce by rule 360
++	DARROW	reduce by rule 360
++	BITS	reduce by rule 360
++	THEN	reduce by rule 360
++	ELSE	reduce by rule 360
++	STRUCTURE	reduce by rule 360
++	FUNCTOR	reduce by rule 360
++	SIGNATURE	reduce by rule 360
++	WHERE	reduce by rule 360
++	SHARING	reduce by rule 360
++	INSTRUCTION	reduce by rule 360
++	CELL	reduce by rule 360
++	VLIW	reduce by rule 360
++	SUPERSCALAR	reduce by rule 360
++	WITHTYPE	reduce by rule 360
++	FUN	reduce by rule 360
++	VAL	reduce by rule 360
++	INCLUDE	reduce by rule 360
++	OPEN	reduce by rule 360
++	LITTLE	reduce by rule 360
++	BIG	reduce by rule 360
++	PIPELINE	reduce by rule 360
++	LOWERCASE	reduce by rule 360
++	UPPERCASE	reduce by rule 360
++	VERBATIM	reduce by rule 360
++	RTL	reduce by rule 360
++	SPAN	reduce by rule 360
++	DELAYSLOT	reduce by rule 360
++	NONFIX	reduce by rule 360
++	INFIX	reduce by rule 360
++	INFIXR	reduce by rule 360
++	DEBUG	reduce by rule 360
++	ASM_COLON	reduce by rule 360
++	MC_COLON	reduce by rule 360
++	RTL_COLON	reduce by rule 360
++	DELAYSLOT_COLON	reduce by rule 360
++	NULLIFIED_COLON	reduce by rule 360
++	PADDING_COLON	reduce by rule 360
++	RESOURCE	reduce by rule 360
++	CPU	reduce by rule 360
++	LATENCY	reduce by rule 360
++	EXCEPTION	reduce by rule 360
++	ID	reduce by rule 360
++	SYMBOL	reduce by rule 360
++	WORD	reduce by rule 360
++	INT	reduce by rule 360
++	STRING	reduce by rule 360
++	EOF	reduce by rule 360
++
++
++	.	error
++
++
++state 244:
++
++	tid2 : CELL .  (reduce by rule 363)
++
++	ARCHITECTURE	reduce by rule 363
++	END	reduce by rule 363
++	LOCAL	reduce by rule 363
++	IN	reduce by rule 363
++	OF	reduce by rule 363
++	DATATYPE	reduce by rule 363
++	TYPE	reduce by rule 363
++	EQ	reduce by rule 363
++	TIMES	reduce by rule 363
++	AND	reduce by rule 363
++	LPAREN	reduce by rule 363
++	RPAREN	reduce by rule 363
++	RBRACKET	reduce by rule 363
++	RBRACE	reduce by rule 363
++	SEMICOLON	reduce by rule 363
++	LDQUOTE	reduce by rule 363
++	CELLSET	reduce by rule 363
++	STORAGE	reduce by rule 363
++	LOCATIONS	reduce by rule 363
++	COMMA	reduce by rule 363
++	COLON	reduce by rule 363
++	DOT	reduce by rule 363
++	BAR	reduce by rule 363
++	ARROW	reduce by rule 363
++	DARROW	reduce by rule 363
++	BITS	reduce by rule 363
++	THEN	reduce by rule 363
++	ELSE	reduce by rule 363
++	STRUCTURE	reduce by rule 363
++	FUNCTOR	reduce by rule 363
++	SIGNATURE	reduce by rule 363
++	WHERE	reduce by rule 363
++	SHARING	reduce by rule 363
++	INSTRUCTION	reduce by rule 363
++	CELL	reduce by rule 363
++	VLIW	reduce by rule 363
++	SUPERSCALAR	reduce by rule 363
++	WITHTYPE	reduce by rule 363
++	FUN	reduce by rule 363
++	VAL	reduce by rule 363
++	INCLUDE	reduce by rule 363
++	OPEN	reduce by rule 363
++	LITTLE	reduce by rule 363
++	BIG	reduce by rule 363
++	PIPELINE	reduce by rule 363
++	LOWERCASE	reduce by rule 363
++	UPPERCASE	reduce by rule 363
++	VERBATIM	reduce by rule 363
++	RTL	reduce by rule 363
++	SPAN	reduce by rule 363
++	DELAYSLOT	reduce by rule 363
++	NONFIX	reduce by rule 363
++	INFIX	reduce by rule 363
++	INFIXR	reduce by rule 363
++	DEBUG	reduce by rule 363
++	ASM_COLON	reduce by rule 363
++	MC_COLON	reduce by rule 363
++	RTL_COLON	reduce by rule 363
++	DELAYSLOT_COLON	reduce by rule 363
++	NULLIFIED_COLON	reduce by rule 363
++	PADDING_COLON	reduce by rule 363
++	RESOURCE	reduce by rule 363
++	CPU	reduce by rule 363
++	LATENCY	reduce by rule 363
++	EXCEPTION	reduce by rule 363
++	ID	reduce by rule 363
++	SYMBOL	reduce by rule 363
++	WORD	reduce by rule 363
++	INT	reduce by rule 363
++	STRING	reduce by rule 363
++	EOF	reduce by rule 363
++
++
++	.	error
++
++
++state 245:
++
++	tid2 : INSTRUCTION .  (reduce by rule 364)
++
++	ARCHITECTURE	reduce by rule 364
++	END	reduce by rule 364
++	LOCAL	reduce by rule 364
++	IN	reduce by rule 364
++	OF	reduce by rule 364
++	DATATYPE	reduce by rule 364
++	TYPE	reduce by rule 364
++	EQ	reduce by rule 364
++	TIMES	reduce by rule 364
++	AND	reduce by rule 364
++	LPAREN	reduce by rule 364
++	RPAREN	reduce by rule 364
++	RBRACKET	reduce by rule 364
++	RBRACE	reduce by rule 364
++	SEMICOLON	reduce by rule 364
++	LDQUOTE	reduce by rule 364
++	CELLSET	reduce by rule 364
++	STORAGE	reduce by rule 364
++	LOCATIONS	reduce by rule 364
++	COMMA	reduce by rule 364
++	COLON	reduce by rule 364
++	DOT	reduce by rule 364
++	BAR	reduce by rule 364
++	ARROW	reduce by rule 364
++	DARROW	reduce by rule 364
++	BITS	reduce by rule 364
++	THEN	reduce by rule 364
++	ELSE	reduce by rule 364
++	STRUCTURE	reduce by rule 364
++	FUNCTOR	reduce by rule 364
++	SIGNATURE	reduce by rule 364
++	WHERE	reduce by rule 364
++	SHARING	reduce by rule 364
++	INSTRUCTION	reduce by rule 364
++	CELL	reduce by rule 364
++	VLIW	reduce by rule 364
++	SUPERSCALAR	reduce by rule 364
++	WITHTYPE	reduce by rule 364
++	FUN	reduce by rule 364
++	VAL	reduce by rule 364
++	INCLUDE	reduce by rule 364
++	OPEN	reduce by rule 364
++	LITTLE	reduce by rule 364
++	BIG	reduce by rule 364
++	PIPELINE	reduce by rule 364
++	LOWERCASE	reduce by rule 364
++	UPPERCASE	reduce by rule 364
++	VERBATIM	reduce by rule 364
++	RTL	reduce by rule 364
++	SPAN	reduce by rule 364
++	DELAYSLOT	reduce by rule 364
++	NONFIX	reduce by rule 364
++	INFIX	reduce by rule 364
++	INFIXR	reduce by rule 364
++	DEBUG	reduce by rule 364
++	ASM_COLON	reduce by rule 364
++	MC_COLON	reduce by rule 364
++	RTL_COLON	reduce by rule 364
++	DELAYSLOT_COLON	reduce by rule 364
++	NULLIFIED_COLON	reduce by rule 364
++	PADDING_COLON	reduce by rule 364
++	RESOURCE	reduce by rule 364
++	CPU	reduce by rule 364
++	LATENCY	reduce by rule 364
++	EXCEPTION	reduce by rule 364
++	ID	reduce by rule 364
++	SYMBOL	reduce by rule 364
++	WORD	reduce by rule 364
++	INT	reduce by rule 364
++	STRING	reduce by rule 364
++	EOF	reduce by rule 364
++
++
++	.	error
++
++
++state 246:
++
++	tid2 : BITS .  (reduce by rule 362)
++
++	ARCHITECTURE	reduce by rule 362
++	END	reduce by rule 362
++	LOCAL	reduce by rule 362
++	IN	reduce by rule 362
++	OF	reduce by rule 362
++	DATATYPE	reduce by rule 362
++	TYPE	reduce by rule 362
++	EQ	reduce by rule 362
++	TIMES	reduce by rule 362
++	AND	reduce by rule 362
++	LPAREN	reduce by rule 362
++	RPAREN	reduce by rule 362
++	RBRACKET	reduce by rule 362
++	RBRACE	reduce by rule 362
++	SEMICOLON	reduce by rule 362
++	LDQUOTE	reduce by rule 362
++	CELLSET	reduce by rule 362
++	STORAGE	reduce by rule 362
++	LOCATIONS	reduce by rule 362
++	COMMA	reduce by rule 362
++	COLON	reduce by rule 362
++	DOT	reduce by rule 362
++	BAR	reduce by rule 362
++	ARROW	reduce by rule 362
++	DARROW	reduce by rule 362
++	BITS	reduce by rule 362
++	THEN	reduce by rule 362
++	ELSE	reduce by rule 362
++	STRUCTURE	reduce by rule 362
++	FUNCTOR	reduce by rule 362
++	SIGNATURE	reduce by rule 362
++	WHERE	reduce by rule 362
++	SHARING	reduce by rule 362
++	INSTRUCTION	reduce by rule 362
++	CELL	reduce by rule 362
++	VLIW	reduce by rule 362
++	SUPERSCALAR	reduce by rule 362
++	WITHTYPE	reduce by rule 362
++	FUN	reduce by rule 362
++	VAL	reduce by rule 362
++	INCLUDE	reduce by rule 362
++	OPEN	reduce by rule 362
++	LITTLE	reduce by rule 362
++	BIG	reduce by rule 362
++	PIPELINE	reduce by rule 362
++	LOWERCASE	reduce by rule 362
++	UPPERCASE	reduce by rule 362
++	VERBATIM	reduce by rule 362
++	RTL	reduce by rule 362
++	SPAN	reduce by rule 362
++	DELAYSLOT	reduce by rule 362
++	NONFIX	reduce by rule 362
++	INFIX	reduce by rule 362
++	INFIXR	reduce by rule 362
++	DEBUG	reduce by rule 362
++	ASM_COLON	reduce by rule 362
++	MC_COLON	reduce by rule 362
++	RTL_COLON	reduce by rule 362
++	DELAYSLOT_COLON	reduce by rule 362
++	NULLIFIED_COLON	reduce by rule 362
++	PADDING_COLON	reduce by rule 362
++	RESOURCE	reduce by rule 362
++	CPU	reduce by rule 362
++	LATENCY	reduce by rule 362
++	EXCEPTION	reduce by rule 362
++	ID	reduce by rule 362
++	SYMBOL	reduce by rule 362
++	WORD	reduce by rule 362
++	INT	reduce by rule 362
++	STRING	reduce by rule 362
++	EOF	reduce by rule 362
++
++
++	.	error
++
++
++state 247:
++
++	typebinds : typebind AND . typebinds 
++
++	LPAREN	shift 160
++	CELLSET	reduce by rule 199
++	HASH	shift 159
++	BITS	reduce by rule 199
++	INSTRUCTION	reduce by rule 199
++	CELL	reduce by rule 199
++	ID	reduce by rule 199
++	SYMBOL	reduce by rule 199
++	TYVAR	shift 158
++
++	typebinds	goto 376
++	typebind	goto 156
++	tyvar	goto 155
++	tyvarseq	goto 375
++
++	.	error
++
++
++state 248:
++
++	tyvar : HASH id .  (reduce by rule 427)
++
++	ARCHITECTURE	reduce by rule 427
++	END	reduce by rule 427
++	LOCAL	reduce by rule 427
++	IN	reduce by rule 427
++	OF	reduce by rule 427
++	DATATYPE	reduce by rule 427
++	TYPE	reduce by rule 427
++	EQ	reduce by rule 427
++	TIMES	reduce by rule 427
++	AND	reduce by rule 427
++	LPAREN	reduce by rule 427
++	RPAREN	reduce by rule 427
++	RBRACKET	reduce by rule 427
++	RBRACE	reduce by rule 427
++	SEMICOLON	reduce by rule 427
++	LDQUOTE	reduce by rule 427
++	CELLSET	reduce by rule 427
++	STORAGE	reduce by rule 427
++	LOCATIONS	reduce by rule 427
++	COMMA	reduce by rule 427
++	COLON	reduce by rule 427
++	BAR	reduce by rule 427
++	ARROW	reduce by rule 427
++	DARROW	reduce by rule 427
++	BITS	reduce by rule 427
++	THEN	reduce by rule 427
++	ELSE	reduce by rule 427
++	STRUCTURE	reduce by rule 427
++	FUNCTOR	reduce by rule 427
++	SIGNATURE	reduce by rule 427
++	WHERE	reduce by rule 427
++	SHARING	reduce by rule 427
++	INSTRUCTION	reduce by rule 427
++	CELL	reduce by rule 427
++	VLIW	reduce by rule 427
++	SUPERSCALAR	reduce by rule 427
++	WITHTYPE	reduce by rule 427
++	FUN	reduce by rule 427
++	VAL	reduce by rule 427
++	INCLUDE	reduce by rule 427
++	OPEN	reduce by rule 427
++	LITTLE	reduce by rule 427
++	BIG	reduce by rule 427
++	PIPELINE	reduce by rule 427
++	LOWERCASE	reduce by rule 427
++	UPPERCASE	reduce by rule 427
++	VERBATIM	reduce by rule 427
++	RTL	reduce by rule 427
++	SPAN	reduce by rule 427
++	DELAYSLOT	reduce by rule 427
++	NONFIX	reduce by rule 427
++	INFIX	reduce by rule 427
++	INFIXR	reduce by rule 427
++	DEBUG	reduce by rule 427
++	ASM_COLON	reduce by rule 427
++	MC_COLON	reduce by rule 427
++	RTL_COLON	reduce by rule 427
++	DELAYSLOT_COLON	reduce by rule 427
++	NULLIFIED_COLON	reduce by rule 427
++	PADDING_COLON	reduce by rule 427
++	RESOURCE	reduce by rule 427
++	CPU	reduce by rule 427
++	LATENCY	reduce by rule 427
++	EXCEPTION	reduce by rule 427
++	ID	reduce by rule 427
++	SYMBOL	reduce by rule 427
++	WORD	reduce by rule 427
++	INT	reduce by rule 427
++	STRING	reduce by rule 427
++	EOF	reduce by rule 427
++
++
++	.	error
++
++
++state 249:
++
++	tyvarseq : LPAREN tyvars . RPAREN 
++
++	RPAREN	shift 377
++
++
++	.	error
++
++
++state 250:
++
++	tyvars : tyvar .  (reduce by rule 202)
++	tyvars : tyvar . COMMA tyvars 
++
++	RPAREN	reduce by rule 202
++	COMMA	shift 378
++
++
++	.	error
++
++
++state 251:
++
++	datatypebind : tyvarseq id . opcodeencoding fieldty hasasm EQ consbinds 
++	datatypebind : tyvarseq id . opcodeencoding fieldty hasasm EQ DATATYPE ty 
++
++	EQ	reduce by rule 135
++	DEREF	reduce by rule 135
++	LBRACKET	shift 380
++	COLON	reduce by rule 135
++
++	opcodeencoding	goto 379
++
++	.	error
++
++
++state 252:
++
++	datatypebinds : datatypebind AND . datatypebinds 
++
++	LPAREN	shift 160
++	CELLSET	reduce by rule 199
++	HASH	shift 159
++	ID	reduce by rule 199
++	SYMBOL	reduce by rule 199
++	TYVAR	shift 158
++
++	datatypebinds	goto 381
++	datatypebind	goto 162
++	tyvar	goto 155
++	tyvarseq	goto 161
++
++	.	error
++
++
++state 253:
++
++	mymldecl : DATATYPE datatypebinds withtypeclause .  (reduce by rule 59)
++
++	ARCHITECTURE	reduce by rule 59
++	END	reduce by rule 59
++	LOCAL	reduce by rule 59
++	IN	reduce by rule 59
++	DATATYPE	reduce by rule 59
++	TYPE	reduce by rule 59
++	RPAREN	reduce by rule 59
++	SEMICOLON	reduce by rule 59
++	STORAGE	reduce by rule 59
++	LOCATIONS	reduce by rule 59
++	STRUCTURE	reduce by rule 59
++	FUNCTOR	reduce by rule 59
++	SIGNATURE	reduce by rule 59
++	SHARING	reduce by rule 59
++	INSTRUCTION	reduce by rule 59
++	VLIW	reduce by rule 59
++	SUPERSCALAR	reduce by rule 59
++	FUN	reduce by rule 59
++	VAL	reduce by rule 59
++	INCLUDE	reduce by rule 59
++	OPEN	reduce by rule 59
++	LITTLE	reduce by rule 59
++	BIG	reduce by rule 59
++	PIPELINE	reduce by rule 59
++	LOWERCASE	reduce by rule 59
++	UPPERCASE	reduce by rule 59
++	VERBATIM	reduce by rule 59
++	RTL	reduce by rule 59
++	NONFIX	reduce by rule 59
++	INFIX	reduce by rule 59
++	INFIXR	reduce by rule 59
++	DEBUG	reduce by rule 59
++	RESOURCE	reduce by rule 59
++	CPU	reduce by rule 59
++	LATENCY	reduce by rule 59
++	EXCEPTION	reduce by rule 59
++	EOF	reduce by rule 59
++
++
++	.	error
++
++
++state 254:
++
++	withtypeclause : WITHTYPE . typebinds 
++
++	LPAREN	shift 160
++	CELLSET	reduce by rule 199
++	HASH	shift 159
++	BITS	reduce by rule 199
++	INSTRUCTION	reduce by rule 199
++	CELL	reduce by rule 199
++	ID	reduce by rule 199
++	SYMBOL	reduce by rule 199
++	TYVAR	shift 158
++
++	typebinds	goto 382
++	typebind	goto 156
++	tyvar	goto 155
++	tyvarseq	goto 375
++
++	.	error
++
++
++state 255:
++
++	scopeddecls : newScope decls . oldScope 
++
++	END	reduce by rule 108
++	IN	reduce by rule 108
++	RPAREN	reduce by rule 108
++
++	oldScope	goto 383
++
++	.	error
++
++
++state 256:
++
++	mymldecl : LOCAL scopeddecls IN . scopeddecls END 
++
++	ARCHITECTURE	reduce by rule 107
++	END	reduce by rule 107
++	LOCAL	reduce by rule 107
++	DATATYPE	reduce by rule 107
++	TYPE	reduce by rule 107
++	STORAGE	reduce by rule 107
++	LOCATIONS	reduce by rule 107
++	STRUCTURE	reduce by rule 107
++	FUNCTOR	reduce by rule 107
++	SIGNATURE	reduce by rule 107
++	SHARING	reduce by rule 107
++	INSTRUCTION	reduce by rule 107
++	VLIW	reduce by rule 107
++	SUPERSCALAR	reduce by rule 107
++	FUN	reduce by rule 107
++	VAL	reduce by rule 107
++	INCLUDE	reduce by rule 107
++	OPEN	reduce by rule 107
++	LITTLE	reduce by rule 107
++	BIG	reduce by rule 107
++	PIPELINE	reduce by rule 107
++	LOWERCASE	reduce by rule 107
++	UPPERCASE	reduce by rule 107
++	VERBATIM	reduce by rule 107
++	RTL	reduce by rule 107
++	NONFIX	reduce by rule 107
++	INFIX	reduce by rule 107
++	INFIXR	reduce by rule 107
++	DEBUG	reduce by rule 107
++	RESOURCE	reduce by rule 107
++	CPU	reduce by rule 107
++	LATENCY	reduce by rule 107
++	EXCEPTION	reduce by rule 107
++
++	scopeddecls	goto 384
++	newScope	goto 164
++
++	.	error
++
++
++state 257:
++
++	mymddecl : ARCHITECTURE id EQ . STRUCT decls END 
++
++	STRUCT	shift 385
++
++
++	.	error
++
++
++state 258:
++
++	exceptionbinds : exceptionbind AND exceptionbinds .  (reduce by rule 84)
++
++	ARCHITECTURE	reduce by rule 84
++	END	reduce by rule 84
++	LOCAL	reduce by rule 84
++	IN	reduce by rule 84
++	DATATYPE	reduce by rule 84
++	TYPE	reduce by rule 84
++	RPAREN	reduce by rule 84
++	SEMICOLON	reduce by rule 84
++	STORAGE	reduce by rule 84
++	LOCATIONS	reduce by rule 84
++	STRUCTURE	reduce by rule 84
++	FUNCTOR	reduce by rule 84
++	SIGNATURE	reduce by rule 84
++	SHARING	reduce by rule 84
++	INSTRUCTION	reduce by rule 84
++	VLIW	reduce by rule 84
++	SUPERSCALAR	reduce by rule 84
++	FUN	reduce by rule 84
++	VAL	reduce by rule 84
++	INCLUDE	reduce by rule 84
++	OPEN	reduce by rule 84
++	LITTLE	reduce by rule 84
++	BIG	reduce by rule 84
++	PIPELINE	reduce by rule 84
++	LOWERCASE	reduce by rule 84
++	UPPERCASE	reduce by rule 84
++	VERBATIM	reduce by rule 84
++	RTL	reduce by rule 84
++	NONFIX	reduce by rule 84
++	INFIX	reduce by rule 84
++	INFIXR	reduce by rule 84
++	DEBUG	reduce by rule 84
++	RESOURCE	reduce by rule 84
++	CPU	reduce by rule 84
++	LATENCY	reduce by rule 84
++	EXCEPTION	reduce by rule 84
++	EOF	reduce by rule 84
++
++
++	.	error
++
++
++state 259:
++
++	exceptionbind : id EQ ident .  (reduce by rule 87)
++
++	ARCHITECTURE	reduce by rule 87
++	END	reduce by rule 87
++	LOCAL	reduce by rule 87
++	IN	reduce by rule 87
++	DATATYPE	reduce by rule 87
++	TYPE	reduce by rule 87
++	AND	reduce by rule 87
++	RPAREN	reduce by rule 87
++	SEMICOLON	reduce by rule 87
++	STORAGE	reduce by rule 87
++	LOCATIONS	reduce by rule 87
++	STRUCTURE	reduce by rule 87
++	FUNCTOR	reduce by rule 87
++	SIGNATURE	reduce by rule 87
++	SHARING	reduce by rule 87
++	INSTRUCTION	reduce by rule 87
++	VLIW	reduce by rule 87
++	SUPERSCALAR	reduce by rule 87
++	FUN	reduce by rule 87
++	VAL	reduce by rule 87
++	INCLUDE	reduce by rule 87
++	OPEN	reduce by rule 87
++	LITTLE	reduce by rule 87
++	BIG	reduce by rule 87
++	PIPELINE	reduce by rule 87
++	LOWERCASE	reduce by rule 87
++	UPPERCASE	reduce by rule 87
++	VERBATIM	reduce by rule 87
++	RTL	reduce by rule 87
++	NONFIX	reduce by rule 87
++	INFIX	reduce by rule 87
++	INFIXR	reduce by rule 87
++	DEBUG	reduce by rule 87
++	RESOURCE	reduce by rule 87
++	CPU	reduce by rule 87
++	LATENCY	reduce by rule 87
++	EXCEPTION	reduce by rule 87
++	EOF	reduce by rule 87
++
++
++	.	error
++
++
++state 260:
++
++	aty : tyvar .  (reduce by rule 352)
++
++	ARCHITECTURE	reduce by rule 352
++	END	reduce by rule 352
++	LOCAL	reduce by rule 352
++	IN	reduce by rule 352
++	OF	reduce by rule 352
++	DATATYPE	reduce by rule 352
++	TYPE	reduce by rule 352
++	EQ	reduce by rule 352
++	TIMES	reduce by rule 352
++	AND	reduce by rule 352
++	LPAREN	reduce by rule 352
++	RPAREN	reduce by rule 352
++	RBRACKET	reduce by rule 352
++	RBRACE	reduce by rule 352
++	SEMICOLON	reduce by rule 352
++	LDQUOTE	reduce by rule 352
++	CELLSET	reduce by rule 352
++	STORAGE	reduce by rule 352
++	LOCATIONS	reduce by rule 352
++	COMMA	reduce by rule 352
++	COLON	reduce by rule 352
++	BAR	reduce by rule 352
++	ARROW	reduce by rule 352
++	DARROW	reduce by rule 352
++	BITS	reduce by rule 352
++	THEN	reduce by rule 352
++	ELSE	reduce by rule 352
++	STRUCTURE	reduce by rule 352
++	FUNCTOR	reduce by rule 352
++	SIGNATURE	reduce by rule 352
++	WHERE	reduce by rule 352
++	SHARING	reduce by rule 352
++	INSTRUCTION	reduce by rule 352
++	CELL	reduce by rule 352
++	VLIW	reduce by rule 352
++	SUPERSCALAR	reduce by rule 352
++	WITHTYPE	reduce by rule 352
++	FUN	reduce by rule 352
++	VAL	reduce by rule 352
++	INCLUDE	reduce by rule 352
++	OPEN	reduce by rule 352
++	LITTLE	reduce by rule 352
++	BIG	reduce by rule 352
++	PIPELINE	reduce by rule 352
++	LOWERCASE	reduce by rule 352
++	UPPERCASE	reduce by rule 352
++	VERBATIM	reduce by rule 352
++	RTL	reduce by rule 352
++	SPAN	reduce by rule 352
++	DELAYSLOT	reduce by rule 352
++	NONFIX	reduce by rule 352
++	INFIX	reduce by rule 352
++	INFIXR	reduce by rule 352
++	DEBUG	reduce by rule 352
++	ASM_COLON	reduce by rule 352
++	MC_COLON	reduce by rule 352
++	RTL_COLON	reduce by rule 352
++	DELAYSLOT_COLON	reduce by rule 352
++	NULLIFIED_COLON	reduce by rule 352
++	PADDING_COLON	reduce by rule 352
++	RESOURCE	reduce by rule 352
++	CPU	reduce by rule 352
++	LATENCY	reduce by rule 352
++	EXCEPTION	reduce by rule 352
++	ID	reduce by rule 352
++	SYMBOL	reduce by rule 352
++	WORD	reduce by rule 352
++	INT	reduce by rule 352
++	STRING	reduce by rule 352
++	EOF	reduce by rule 352
++
++
++	.	error
++
++
++state 261:
++
++	ty : tuplety .  (reduce by rule 372)
++
++	ARCHITECTURE	reduce by rule 372
++	END	reduce by rule 372
++	LOCAL	reduce by rule 372
++	IN	reduce by rule 372
++	OF	reduce by rule 372
++	DATATYPE	reduce by rule 372
++	TYPE	reduce by rule 372
++	EQ	reduce by rule 372
++	AND	reduce by rule 372
++	LPAREN	reduce by rule 372
++	RPAREN	reduce by rule 372
++	RBRACKET	reduce by rule 372
++	RBRACE	reduce by rule 372
++	SEMICOLON	reduce by rule 372
++	LDQUOTE	reduce by rule 372
++	CELLSET	reduce by rule 372
++	STORAGE	reduce by rule 372
++	LOCATIONS	reduce by rule 372
++	COMMA	reduce by rule 372
++	COLON	reduce by rule 372
++	BAR	reduce by rule 372
++	ARROW	reduce by rule 372
++	DARROW	reduce by rule 372
++	THEN	reduce by rule 372
++	ELSE	reduce by rule 372
++	STRUCTURE	reduce by rule 372
++	FUNCTOR	reduce by rule 372
++	SIGNATURE	reduce by rule 372
++	WHERE	reduce by rule 372
++	SHARING	reduce by rule 372
++	INSTRUCTION	reduce by rule 372
++	VLIW	reduce by rule 372
++	SUPERSCALAR	reduce by rule 372
++	WITHTYPE	reduce by rule 372
++	FUN	reduce by rule 372
++	VAL	reduce by rule 372
++	INCLUDE	reduce by rule 372
++	OPEN	reduce by rule 372
++	LITTLE	reduce by rule 372
++	BIG	reduce by rule 372
++	PIPELINE	reduce by rule 372
++	LOWERCASE	reduce by rule 372
++	UPPERCASE	reduce by rule 372
++	VERBATIM	reduce by rule 372
++	RTL	reduce by rule 372
++	SPAN	reduce by rule 372
++	DELAYSLOT	reduce by rule 372
++	NONFIX	reduce by rule 372
++	INFIX	reduce by rule 372
++	INFIXR	reduce by rule 372
++	DEBUG	reduce by rule 372
++	ASM_COLON	reduce by rule 372
++	MC_COLON	reduce by rule 372
++	RTL_COLON	reduce by rule 372
++	DELAYSLOT_COLON	reduce by rule 372
++	NULLIFIED_COLON	reduce by rule 372
++	PADDING_COLON	reduce by rule 372
++	RESOURCE	reduce by rule 372
++	CPU	reduce by rule 372
++	LATENCY	reduce by rule 372
++	EXCEPTION	reduce by rule 372
++	ID	reduce by rule 372
++	SYMBOL	reduce by rule 372
++	WORD	reduce by rule 372
++	INT	reduce by rule 372
++	STRING	reduce by rule 372
++	EOF	reduce by rule 372
++
++
++	.	error
++
++error:  state 262: shift/reduce conflict (shift SYMBOL, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift ID, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift INSTRUCTION, reduce by rule 373)
++error:  state 262: shift/reduce conflict (shift CELLSET, reduce by rule 373)
++
++state 262:
++
++	ty : appty .  (reduce by rule 373)
++	appty : appty . tident 
++	tuplety : appty . TIMES appty 
++	tuplety : appty . TIMES tuplety 
++
++	ARCHITECTURE	reduce by rule 373
++	END	reduce by rule 373
++	LOCAL	reduce by rule 373
++	IN	reduce by rule 373
++	OF	reduce by rule 373
++	DATATYPE	reduce by rule 373
++	TYPE	reduce by rule 373
++	EQ	reduce by rule 373
++	TIMES	shift 387
++	AND	reduce by rule 373
++	LPAREN	reduce by rule 373
++	RPAREN	reduce by rule 373
++	RBRACKET	reduce by rule 373
++	RBRACE	reduce by rule 373
++	SEMICOLON	reduce by rule 373
++	LDQUOTE	reduce by rule 373
++	CELLSET	shift 50
++	STORAGE	reduce by rule 373
++	LOCATIONS	reduce by rule 373
++	COMMA	reduce by rule 373
++	COLON	reduce by rule 373
++	BAR	reduce by rule 373
++	ARROW	reduce by rule 373
++	DARROW	reduce by rule 373
++	BITS	shift 246
++	THEN	reduce by rule 373
++	ELSE	reduce by rule 373
++	STRUCTURE	reduce by rule 373
++	FUNCTOR	reduce by rule 373
++	SIGNATURE	reduce by rule 373
++	WHERE	reduce by rule 373
++	SHARING	reduce by rule 373
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	VLIW	reduce by rule 373
++	SUPERSCALAR	reduce by rule 373
++	WITHTYPE	reduce by rule 373
++	FUN	reduce by rule 373
++	VAL	reduce by rule 373
++	INCLUDE	reduce by rule 373
++	OPEN	reduce by rule 373
++	LITTLE	reduce by rule 373
++	BIG	reduce by rule 373
++	PIPELINE	reduce by rule 373
++	LOWERCASE	reduce by rule 373
++	UPPERCASE	reduce by rule 373
++	VERBATIM	reduce by rule 373
++	RTL	reduce by rule 373
++	SPAN	reduce by rule 373
++	DELAYSLOT	reduce by rule 373
++	NONFIX	reduce by rule 373
++	INFIX	reduce by rule 373
++	INFIXR	reduce by rule 373
++	DEBUG	reduce by rule 373
++	ASM_COLON	reduce by rule 373
++	MC_COLON	reduce by rule 373
++	RTL_COLON	reduce by rule 373
++	DELAYSLOT_COLON	reduce by rule 373
++	NULLIFIED_COLON	reduce by rule 373
++	PADDING_COLON	reduce by rule 373
++	RESOURCE	reduce by rule 373
++	CPU	reduce by rule 373
++	LATENCY	reduce by rule 373
++	EXCEPTION	reduce by rule 373
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	reduce by rule 373
++	INT	reduce by rule 373
++	STRING	reduce by rule 373
++	EOF	reduce by rule 373
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 386
++	tpath	goto 265
++
++	.	error
++
++
++state 263:
++
++	appty : aty .  (reduce by rule 357)
++
++	ARCHITECTURE	reduce by rule 357
++	END	reduce by rule 357
++	LOCAL	reduce by rule 357
++	IN	reduce by rule 357
++	OF	reduce by rule 357
++	DATATYPE	reduce by rule 357
++	TYPE	reduce by rule 357
++	EQ	reduce by rule 357
++	TIMES	reduce by rule 357
++	AND	reduce by rule 357
++	LPAREN	reduce by rule 357
++	RPAREN	reduce by rule 357
++	RBRACKET	reduce by rule 357
++	RBRACE	reduce by rule 357
++	SEMICOLON	reduce by rule 357
++	LDQUOTE	reduce by rule 357
++	CELLSET	reduce by rule 357
++	STORAGE	reduce by rule 357
++	LOCATIONS	reduce by rule 357
++	COMMA	reduce by rule 357
++	COLON	reduce by rule 357
++	BAR	reduce by rule 357
++	ARROW	reduce by rule 357
++	DARROW	reduce by rule 357
++	BITS	reduce by rule 357
++	THEN	reduce by rule 357
++	ELSE	reduce by rule 357
++	STRUCTURE	reduce by rule 357
++	FUNCTOR	reduce by rule 357
++	SIGNATURE	reduce by rule 357
++	WHERE	reduce by rule 357
++	SHARING	reduce by rule 357
++	INSTRUCTION	reduce by rule 357
++	CELL	reduce by rule 357
++	VLIW	reduce by rule 357
++	SUPERSCALAR	reduce by rule 357
++	WITHTYPE	reduce by rule 357
++	FUN	reduce by rule 357
++	VAL	reduce by rule 357
++	INCLUDE	reduce by rule 357
++	OPEN	reduce by rule 357
++	LITTLE	reduce by rule 357
++	BIG	reduce by rule 357
++	PIPELINE	reduce by rule 357
++	LOWERCASE	reduce by rule 357
++	UPPERCASE	reduce by rule 357
++	VERBATIM	reduce by rule 357
++	RTL	reduce by rule 357
++	SPAN	reduce by rule 357
++	DELAYSLOT	reduce by rule 357
++	NONFIX	reduce by rule 357
++	INFIX	reduce by rule 357
++	INFIXR	reduce by rule 357
++	DEBUG	reduce by rule 357
++	ASM_COLON	reduce by rule 357
++	MC_COLON	reduce by rule 357
++	RTL_COLON	reduce by rule 357
++	DELAYSLOT_COLON	reduce by rule 357
++	NULLIFIED_COLON	reduce by rule 357
++	PADDING_COLON	reduce by rule 357
++	RESOURCE	reduce by rule 357
++	CPU	reduce by rule 357
++	LATENCY	reduce by rule 357
++	EXCEPTION	reduce by rule 357
++	ID	reduce by rule 357
++	SYMBOL	reduce by rule 357
++	WORD	reduce by rule 357
++	INT	reduce by rule 357
++	STRING	reduce by rule 357
++	EOF	reduce by rule 357
++
++
++	.	error
++
++
++state 264:
++
++	exceptionbind : id OF ty .  (reduce by rule 86)
++	ty : ty . ARROW ty 
++
++	ARCHITECTURE	reduce by rule 86
++	END	reduce by rule 86
++	LOCAL	reduce by rule 86
++	IN	reduce by rule 86
++	DATATYPE	reduce by rule 86
++	TYPE	reduce by rule 86
++	AND	reduce by rule 86
++	RPAREN	reduce by rule 86
++	SEMICOLON	reduce by rule 86
++	STORAGE	reduce by rule 86
++	LOCATIONS	reduce by rule 86
++	ARROW	shift 388
++	STRUCTURE	reduce by rule 86
++	FUNCTOR	reduce by rule 86
++	SIGNATURE	reduce by rule 86
++	SHARING	reduce by rule 86
++	INSTRUCTION	reduce by rule 86
++	VLIW	reduce by rule 86
++	SUPERSCALAR	reduce by rule 86
++	FUN	reduce by rule 86
++	VAL	reduce by rule 86
++	INCLUDE	reduce by rule 86
++	OPEN	reduce by rule 86
++	LITTLE	reduce by rule 86
++	BIG	reduce by rule 86
++	PIPELINE	reduce by rule 86
++	LOWERCASE	reduce by rule 86
++	UPPERCASE	reduce by rule 86
++	VERBATIM	reduce by rule 86
++	RTL	reduce by rule 86
++	NONFIX	reduce by rule 86
++	INFIX	reduce by rule 86
++	INFIXR	reduce by rule 86
++	DEBUG	reduce by rule 86
++	RESOURCE	reduce by rule 86
++	CPU	reduce by rule 86
++	LATENCY	reduce by rule 86
++	EXCEPTION	reduce by rule 86
++	EOF	reduce by rule 86
++
++
++	.	error
++
++
++state 265:
++
++	tident : tpath .  (reduce by rule 366)
++	tpath : tpath . DOT tid 
++
++	ARCHITECTURE	reduce by rule 366
++	END	reduce by rule 366
++	LOCAL	reduce by rule 366
++	IN	reduce by rule 366
++	OF	reduce by rule 366
++	DATATYPE	reduce by rule 366
++	TYPE	reduce by rule 366
++	EQ	reduce by rule 366
++	TIMES	reduce by rule 366
++	AND	reduce by rule 366
++	LPAREN	reduce by rule 366
++	RPAREN	reduce by rule 366
++	RBRACKET	reduce by rule 366
++	RBRACE	reduce by rule 366
++	SEMICOLON	reduce by rule 366
++	LDQUOTE	reduce by rule 366
++	CELLSET	reduce by rule 366
++	STORAGE	reduce by rule 366
++	LOCATIONS	reduce by rule 366
++	COMMA	reduce by rule 366
++	COLON	reduce by rule 366
++	DOT	shift 389
++	BAR	reduce by rule 366
++	ARROW	reduce by rule 366
++	DARROW	reduce by rule 366
++	BITS	reduce by rule 366
++	THEN	reduce by rule 366
++	ELSE	reduce by rule 366
++	STRUCTURE	reduce by rule 366
++	FUNCTOR	reduce by rule 366
++	SIGNATURE	reduce by rule 366
++	WHERE	reduce by rule 366
++	SHARING	reduce by rule 366
++	INSTRUCTION	reduce by rule 366
++	CELL	reduce by rule 366
++	VLIW	reduce by rule 366
++	SUPERSCALAR	reduce by rule 366
++	WITHTYPE	reduce by rule 366
++	FUN	reduce by rule 366
++	VAL	reduce by rule 366
++	INCLUDE	reduce by rule 366
++	OPEN	reduce by rule 366
++	LITTLE	reduce by rule 366
++	BIG	reduce by rule 366
++	PIPELINE	reduce by rule 366
++	LOWERCASE	reduce by rule 366
++	UPPERCASE	reduce by rule 366
++	VERBATIM	reduce by rule 366
++	RTL	reduce by rule 366
++	SPAN	reduce by rule 366
++	DELAYSLOT	reduce by rule 366
++	NONFIX	reduce by rule 366
++	INFIX	reduce by rule 366
++	INFIXR	reduce by rule 366
++	DEBUG	reduce by rule 366
++	ASM_COLON	reduce by rule 366
++	MC_COLON	reduce by rule 366
++	RTL_COLON	reduce by rule 366
++	DELAYSLOT_COLON	reduce by rule 366
++	NULLIFIED_COLON	reduce by rule 366
++	PADDING_COLON	reduce by rule 366
++	RESOURCE	reduce by rule 366
++	CPU	reduce by rule 366
++	LATENCY	reduce by rule 366
++	EXCEPTION	reduce by rule 366
++	ID	reduce by rule 366
++	SYMBOL	reduce by rule 366
++	WORD	reduce by rule 366
++	INT	reduce by rule 366
++	STRING	reduce by rule 366
++	EOF	reduce by rule 366
++
++
++	.	error
++
++
++state 266:
++
++	aty : tident .  (reduce by rule 350)
++
++	ARCHITECTURE	reduce by rule 350
++	END	reduce by rule 350
++	LOCAL	reduce by rule 350
++	IN	reduce by rule 350
++	OF	reduce by rule 350
++	DATATYPE	reduce by rule 350
++	TYPE	reduce by rule 350
++	EQ	reduce by rule 350
++	TIMES	reduce by rule 350
++	AND	reduce by rule 350
++	LPAREN	reduce by rule 350
++	RPAREN	reduce by rule 350
++	RBRACKET	reduce by rule 350
++	RBRACE	reduce by rule 350
++	SEMICOLON	reduce by rule 350
++	LDQUOTE	reduce by rule 350
++	CELLSET	reduce by rule 350
++	STORAGE	reduce by rule 350
++	LOCATIONS	reduce by rule 350
++	COMMA	reduce by rule 350
++	COLON	reduce by rule 350
++	BAR	reduce by rule 350
++	ARROW	reduce by rule 350
++	DARROW	reduce by rule 350
++	BITS	reduce by rule 350
++	THEN	reduce by rule 350
++	ELSE	reduce by rule 350
++	STRUCTURE	reduce by rule 350
++	FUNCTOR	reduce by rule 350
++	SIGNATURE	reduce by rule 350
++	WHERE	reduce by rule 350
++	SHARING	reduce by rule 350
++	INSTRUCTION	reduce by rule 350
++	CELL	reduce by rule 350
++	VLIW	reduce by rule 350
++	SUPERSCALAR	reduce by rule 350
++	WITHTYPE	reduce by rule 350
++	FUN	reduce by rule 350
++	VAL	reduce by rule 350
++	INCLUDE	reduce by rule 350
++	OPEN	reduce by rule 350
++	LITTLE	reduce by rule 350
++	BIG	reduce by rule 350
++	PIPELINE	reduce by rule 350
++	LOWERCASE	reduce by rule 350
++	UPPERCASE	reduce by rule 350
++	VERBATIM	reduce by rule 350
++	RTL	reduce by rule 350
++	SPAN	reduce by rule 350
++	DELAYSLOT	reduce by rule 350
++	NONFIX	reduce by rule 350
++	INFIX	reduce by rule 350
++	INFIXR	reduce by rule 350
++	DEBUG	reduce by rule 350
++	ASM_COLON	reduce by rule 350
++	MC_COLON	reduce by rule 350
++	RTL_COLON	reduce by rule 350
++	DELAYSLOT_COLON	reduce by rule 350
++	NULLIFIED_COLON	reduce by rule 350
++	PADDING_COLON	reduce by rule 350
++	RESOURCE	reduce by rule 350
++	CPU	reduce by rule 350
++	LATENCY	reduce by rule 350
++	EXCEPTION	reduce by rule 350
++	ID	reduce by rule 350
++	SYMBOL	reduce by rule 350
++	WORD	reduce by rule 350
++	INT	reduce by rule 350
++	STRING	reduce by rule 350
++	EOF	reduce by rule 350
++
++
++	.	error
++
++
++state 267:
++
++	tident : tid .  (reduce by rule 365)
++	tpath : tid . DOT tid 
++
++	ARCHITECTURE	reduce by rule 365
++	END	reduce by rule 365
++	LOCAL	reduce by rule 365
++	IN	reduce by rule 365
++	OF	reduce by rule 365
++	DATATYPE	reduce by rule 365
++	TYPE	reduce by rule 365
++	EQ	reduce by rule 365
++	TIMES	reduce by rule 365
++	AND	reduce by rule 365
++	LPAREN	reduce by rule 365
++	RPAREN	reduce by rule 365
++	RBRACKET	reduce by rule 365
++	RBRACE	reduce by rule 365
++	SEMICOLON	reduce by rule 365
++	LDQUOTE	reduce by rule 365
++	CELLSET	reduce by rule 365
++	STORAGE	reduce by rule 365
++	LOCATIONS	reduce by rule 365
++	COMMA	reduce by rule 365
++	COLON	reduce by rule 365
++	DOT	shift 390
++	BAR	reduce by rule 365
++	ARROW	reduce by rule 365
++	DARROW	reduce by rule 365
++	BITS	reduce by rule 365
++	THEN	reduce by rule 365
++	ELSE	reduce by rule 365
++	STRUCTURE	reduce by rule 365
++	FUNCTOR	reduce by rule 365
++	SIGNATURE	reduce by rule 365
++	WHERE	reduce by rule 365
++	SHARING	reduce by rule 365
++	INSTRUCTION	reduce by rule 365
++	CELL	reduce by rule 365
++	VLIW	reduce by rule 365
++	SUPERSCALAR	reduce by rule 365
++	WITHTYPE	reduce by rule 365
++	FUN	reduce by rule 365
++	VAL	reduce by rule 365
++	INCLUDE	reduce by rule 365
++	OPEN	reduce by rule 365
++	LITTLE	reduce by rule 365
++	BIG	reduce by rule 365
++	PIPELINE	reduce by rule 365
++	LOWERCASE	reduce by rule 365
++	UPPERCASE	reduce by rule 365
++	VERBATIM	reduce by rule 365
++	RTL	reduce by rule 365
++	SPAN	reduce by rule 365
++	DELAYSLOT	reduce by rule 365
++	NONFIX	reduce by rule 365
++	INFIX	reduce by rule 365
++	INFIXR	reduce by rule 365
++	DEBUG	reduce by rule 365
++	ASM_COLON	reduce by rule 365
++	MC_COLON	reduce by rule 365
++	RTL_COLON	reduce by rule 365
++	DELAYSLOT_COLON	reduce by rule 365
++	NULLIFIED_COLON	reduce by rule 365
++	PADDING_COLON	reduce by rule 365
++	RESOURCE	reduce by rule 365
++	CPU	reduce by rule 365
++	LATENCY	reduce by rule 365
++	EXCEPTION	reduce by rule 365
++	ID	reduce by rule 365
++	SYMBOL	reduce by rule 365
++	WORD	reduce by rule 365
++	INT	reduce by rule 365
++	STRING	reduce by rule 365
++	EOF	reduce by rule 365
++
++
++	.	error
++
++
++state 268:
++
++	aty : HASH . int 
++	tyvar : HASH . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++	INT	shift 64
++
++	id	goto 248
++	int	goto 391
++
++	.	error
++
++
++state 269:
++
++	aty : LBRACE . labtys RBRACE 
++
++	RBRACE	reduce by rule 374
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 395
++	labty	goto 394
++	labtys	goto 393
++	labtys1	goto 392
++
++	.	error
++
++
++state 270:
++
++	aty : LPAREN . RPAREN 
++	aty : LPAREN . ty RPAREN 
++	appty : LPAREN . tys2 RPAREN tident 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	RPAREN	shift 398
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 397
++	aty	goto 263
++	appty	goto 262
++	tys2	goto 396
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 271:
++
++	aty : DOLLAR . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 399
++
++	.	error
++
++
++state 272:
++
++	latencyclauses : latencyclause BAR latencyclauses .  (reduce by rule 57)
++
++	ARCHITECTURE	reduce by rule 57
++	END	reduce by rule 57
++	LOCAL	reduce by rule 57
++	IN	reduce by rule 57
++	DATATYPE	reduce by rule 57
++	TYPE	reduce by rule 57
++	AND	reduce by rule 57
++	RPAREN	reduce by rule 57
++	SEMICOLON	reduce by rule 57
++	STORAGE	reduce by rule 57
++	LOCATIONS	reduce by rule 57
++	STRUCTURE	reduce by rule 57
++	FUNCTOR	reduce by rule 57
++	SIGNATURE	reduce by rule 57
++	SHARING	reduce by rule 57
++	INSTRUCTION	reduce by rule 57
++	VLIW	reduce by rule 57
++	SUPERSCALAR	reduce by rule 57
++	FUN	reduce by rule 57
++	VAL	reduce by rule 57
++	INCLUDE	reduce by rule 57
++	OPEN	reduce by rule 57
++	LITTLE	reduce by rule 57
++	BIG	reduce by rule 57
++	PIPELINE	reduce by rule 57
++	LOWERCASE	reduce by rule 57
++	UPPERCASE	reduce by rule 57
++	VERBATIM	reduce by rule 57
++	RTL	reduce by rule 57
++	NONFIX	reduce by rule 57
++	INFIX	reduce by rule 57
++	INFIXR	reduce by rule 57
++	DEBUG	reduce by rule 57
++	RESOURCE	reduce by rule 57
++	CPU	reduce by rule 57
++	LATENCY	reduce by rule 57
++	EXCEPTION	reduce by rule 57
++	EOF	reduce by rule 57
++
++
++	.	error
++
++
++state 273:
++
++	latencybinds : latencybind AND latencybinds .  (reduce by rule 54)
++
++	ARCHITECTURE	reduce by rule 54
++	END	reduce by rule 54
++	LOCAL	reduce by rule 54
++	IN	reduce by rule 54
++	DATATYPE	reduce by rule 54
++	TYPE	reduce by rule 54
++	RPAREN	reduce by rule 54
++	SEMICOLON	reduce by rule 54
++	STORAGE	reduce by rule 54
++	LOCATIONS	reduce by rule 54
++	STRUCTURE	reduce by rule 54
++	FUNCTOR	reduce by rule 54
++	SIGNATURE	reduce by rule 54
++	SHARING	reduce by rule 54
++	INSTRUCTION	reduce by rule 54
++	VLIW	reduce by rule 54
++	SUPERSCALAR	reduce by rule 54
++	FUN	reduce by rule 54
++	VAL	reduce by rule 54
++	INCLUDE	reduce by rule 54
++	OPEN	reduce by rule 54
++	LITTLE	reduce by rule 54
++	BIG	reduce by rule 54
++	PIPELINE	reduce by rule 54
++	LOWERCASE	reduce by rule 54
++	UPPERCASE	reduce by rule 54
++	VERBATIM	reduce by rule 54
++	RTL	reduce by rule 54
++	NONFIX	reduce by rule 54
++	INFIX	reduce by rule 54
++	INFIXR	reduce by rule 54
++	DEBUG	reduce by rule 54
++	RESOURCE	reduce by rule 54
++	CPU	reduce by rule 54
++	LATENCY	reduce by rule 54
++	EXCEPTION	reduce by rule 54
++	EOF	reduce by rule 54
++
++
++	.	error
++
++
++state 274:
++
++	latencyclause : id pat EQ . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 400
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 275:
++
++	cpubinds : cpubind AND cpubinds .  (reduce by rule 31)
++
++	ARCHITECTURE	reduce by rule 31
++	END	reduce by rule 31
++	LOCAL	reduce by rule 31
++	IN	reduce by rule 31
++	DATATYPE	reduce by rule 31
++	TYPE	reduce by rule 31
++	RPAREN	reduce by rule 31
++	SEMICOLON	reduce by rule 31
++	STORAGE	reduce by rule 31
++	LOCATIONS	reduce by rule 31
++	STRUCTURE	reduce by rule 31
++	FUNCTOR	reduce by rule 31
++	SIGNATURE	reduce by rule 31
++	SHARING	reduce by rule 31
++	INSTRUCTION	reduce by rule 31
++	VLIW	reduce by rule 31
++	SUPERSCALAR	reduce by rule 31
++	FUN	reduce by rule 31
++	VAL	reduce by rule 31
++	INCLUDE	reduce by rule 31
++	OPEN	reduce by rule 31
++	LITTLE	reduce by rule 31
++	BIG	reduce by rule 31
++	PIPELINE	reduce by rule 31
++	LOWERCASE	reduce by rule 31
++	UPPERCASE	reduce by rule 31
++	VERBATIM	reduce by rule 31
++	RTL	reduce by rule 31
++	NONFIX	reduce by rule 31
++	INFIX	reduce by rule 31
++	INFIXR	reduce by rule 31
++	DEBUG	reduce by rule 31
++	RESOURCE	reduce by rule 31
++	CPU	reduce by rule 31
++	LATENCY	reduce by rule 31
++	EXCEPTION	reduce by rule 31
++	EOF	reduce by rule 31
++
++
++	.	error
++
++
++state 276:
++
++	cpubind : id aliases int . LBRACKET resources RBRACKET 
++
++	LBRACKET	shift 401
++
++
++	.	error
++
++
++state 277:
++
++	aliases : string aliases .  (reduce by rule 34)
++
++	INT	reduce by rule 34
++
++
++	.	error
++
++
++state 278:
++
++	resourcebinds : id AND resourcebinds .  (reduce by rule 29)
++
++	ARCHITECTURE	reduce by rule 29
++	END	reduce by rule 29
++	LOCAL	reduce by rule 29
++	IN	reduce by rule 29
++	DATATYPE	reduce by rule 29
++	TYPE	reduce by rule 29
++	RPAREN	reduce by rule 29
++	SEMICOLON	reduce by rule 29
++	STORAGE	reduce by rule 29
++	LOCATIONS	reduce by rule 29
++	STRUCTURE	reduce by rule 29
++	FUNCTOR	reduce by rule 29
++	SIGNATURE	reduce by rule 29
++	SHARING	reduce by rule 29
++	INSTRUCTION	reduce by rule 29
++	VLIW	reduce by rule 29
++	SUPERSCALAR	reduce by rule 29
++	FUN	reduce by rule 29
++	VAL	reduce by rule 29
++	INCLUDE	reduce by rule 29
++	OPEN	reduce by rule 29
++	LITTLE	reduce by rule 29
++	BIG	reduce by rule 29
++	PIPELINE	reduce by rule 29
++	LOWERCASE	reduce by rule 29
++	UPPERCASE	reduce by rule 29
++	VERBATIM	reduce by rule 29
++	RTL	reduce by rule 29
++	NONFIX	reduce by rule 29
++	INFIX	reduce by rule 29
++	INFIXR	reduce by rule 29
++	DEBUG	reduce by rule 29
++	RESOURCE	reduce by rule 29
++	CPU	reduce by rule 29
++	LATENCY	reduce by rule 29
++	EXCEPTION	reduce by rule 29
++	EOF	reduce by rule 29
++
++
++	.	error
++
++
++state 279:
++
++	aexp : asm_strings .  (reduce by rule 246)
++
++	ARCHITECTURE	reduce by rule 246
++	END	reduce by rule 246
++	LOCAL	reduce by rule 246
++	IN	reduce by rule 246
++	OF	reduce by rule 246
++	DATATYPE	reduce by rule 246
++	TYPE	reduce by rule 246
++	EQ	reduce by rule 246
++	DOLLAR	reduce by rule 246
++	TIMES	reduce by rule 246
++	AND	reduce by rule 246
++	DEREF	reduce by rule 246
++	NOT	reduce by rule 246
++	LLBRACKET	reduce by rule 246
++	LHASHBRACKET	reduce by rule 246
++	LPAREN	reduce by rule 246
++	RPAREN	reduce by rule 246
++	LBRACKET	reduce by rule 246
++	RBRACKET	reduce by rule 246
++	LBRACE	reduce by rule 246
++	RBRACE	reduce by rule 246
++	SEMICOLON	reduce by rule 246
++	LDQUOTE	reduce by rule 246
++	RMETA	reduce by rule 246
++	CELLSET	reduce by rule 246
++	STORAGE	reduce by rule 246
++	LOCATIONS	reduce by rule 246
++	HASH	reduce by rule 246
++	COMMA	reduce by rule 246
++	COLON	reduce by rule 246
++	AT	reduce by rule 246
++	BAR	reduce by rule 246
++	DARROW	reduce by rule 246
++	THEN	reduce by rule 246
++	ELSE	reduce by rule 246
++	TRUE	reduce by rule 246
++	FALSE	reduce by rule 246
++	HANDLE	reduce by rule 246
++	LET	reduce by rule 246
++	STRUCTURE	reduce by rule 246
++	FUNCTOR	reduce by rule 246
++	SIGNATURE	reduce by rule 246
++	SHARING	reduce by rule 246
++	INSTRUCTION	reduce by rule 246
++	VLIW	reduce by rule 246
++	SUPERSCALAR	reduce by rule 246
++	WITHTYPE	reduce by rule 246
++	FUN	reduce by rule 246
++	VAL	reduce by rule 246
++	INCLUDE	reduce by rule 246
++	OPEN	reduce by rule 246
++	OP	reduce by rule 246
++	LITTLE	reduce by rule 246
++	BIG	reduce by rule 246
++	PIPELINE	reduce by rule 246
++	LOWERCASE	reduce by rule 246
++	UPPERCASE	reduce by rule 246
++	VERBATIM	reduce by rule 246
++	RTL	reduce by rule 246
++	SPAN	reduce by rule 246
++	DELAYSLOT	reduce by rule 246
++	ALWAYS	reduce by rule 246
++	NEVER	reduce by rule 246
++	NONFIX	reduce by rule 246
++	INFIX	reduce by rule 246
++	INFIXR	reduce by rule 246
++	DEBUG	reduce by rule 246
++	ASM_COLON	reduce by rule 246
++	MC_COLON	reduce by rule 246
++	RTL_COLON	reduce by rule 246
++	DELAYSLOT_COLON	reduce by rule 246
++	NULLIFIED_COLON	reduce by rule 246
++	PADDING_COLON	reduce by rule 246
++	RESOURCE	reduce by rule 246
++	CPU	reduce by rule 246
++	LATENCY	reduce by rule 246
++	EXCEPTION	reduce by rule 246
++	ID	reduce by rule 246
++	SYMBOL	reduce by rule 246
++	WORD	reduce by rule 246
++	INT	reduce by rule 246
++	INTINF	reduce by rule 246
++	REAL	reduce by rule 246
++	STRING	reduce by rule 246
++	CHAR	reduce by rule 246
++	EOF	reduce by rule 246
++
++
++	.	error
++
++
++state 280:
++
++	aexp : literal .  (reduce by rule 241)
++
++	ARCHITECTURE	reduce by rule 241
++	END	reduce by rule 241
++	LOCAL	reduce by rule 241
++	IN	reduce by rule 241
++	OF	reduce by rule 241
++	DATATYPE	reduce by rule 241
++	TYPE	reduce by rule 241
++	EQ	reduce by rule 241
++	DOLLAR	reduce by rule 241
++	TIMES	reduce by rule 241
++	AND	reduce by rule 241
++	DEREF	reduce by rule 241
++	NOT	reduce by rule 241
++	LLBRACKET	reduce by rule 241
++	LHASHBRACKET	reduce by rule 241
++	LPAREN	reduce by rule 241
++	RPAREN	reduce by rule 241
++	LBRACKET	reduce by rule 241
++	RBRACKET	reduce by rule 241
++	LBRACE	reduce by rule 241
++	RBRACE	reduce by rule 241
++	SEMICOLON	reduce by rule 241
++	LDQUOTE	reduce by rule 241
++	RMETA	reduce by rule 241
++	CELLSET	reduce by rule 241
++	STORAGE	reduce by rule 241
++	LOCATIONS	reduce by rule 241
++	HASH	reduce by rule 241
++	COMMA	reduce by rule 241
++	COLON	reduce by rule 241
++	AT	reduce by rule 241
++	BAR	reduce by rule 241
++	DARROW	reduce by rule 241
++	THEN	reduce by rule 241
++	ELSE	reduce by rule 241
++	TRUE	reduce by rule 241
++	FALSE	reduce by rule 241
++	HANDLE	reduce by rule 241
++	LET	reduce by rule 241
++	STRUCTURE	reduce by rule 241
++	FUNCTOR	reduce by rule 241
++	SIGNATURE	reduce by rule 241
++	SHARING	reduce by rule 241
++	INSTRUCTION	reduce by rule 241
++	VLIW	reduce by rule 241
++	SUPERSCALAR	reduce by rule 241
++	WITHTYPE	reduce by rule 241
++	FUN	reduce by rule 241
++	VAL	reduce by rule 241
++	INCLUDE	reduce by rule 241
++	OPEN	reduce by rule 241
++	OP	reduce by rule 241
++	LITTLE	reduce by rule 241
++	BIG	reduce by rule 241
++	PIPELINE	reduce by rule 241
++	LOWERCASE	reduce by rule 241
++	UPPERCASE	reduce by rule 241
++	VERBATIM	reduce by rule 241
++	RTL	reduce by rule 241
++	SPAN	reduce by rule 241
++	DELAYSLOT	reduce by rule 241
++	ALWAYS	reduce by rule 241
++	NEVER	reduce by rule 241
++	NONFIX	reduce by rule 241
++	INFIX	reduce by rule 241
++	INFIXR	reduce by rule 241
++	DEBUG	reduce by rule 241
++	ASM_COLON	reduce by rule 241
++	MC_COLON	reduce by rule 241
++	RTL_COLON	reduce by rule 241
++	DELAYSLOT_COLON	reduce by rule 241
++	NULLIFIED_COLON	reduce by rule 241
++	PADDING_COLON	reduce by rule 241
++	RESOURCE	reduce by rule 241
++	CPU	reduce by rule 241
++	LATENCY	reduce by rule 241
++	EXCEPTION	reduce by rule 241
++	ID	reduce by rule 241
++	SYMBOL	reduce by rule 241
++	WORD	reduce by rule 241
++	INT	reduce by rule 241
++	INTINF	reduce by rule 241
++	REAL	reduce by rule 241
++	STRING	reduce by rule 241
++	CHAR	reduce by rule 241
++	EOF	reduce by rule 241
++
++
++	.	error
++
++
++state 281:
++
++	mymldecl : RTL asapat EQ exp .  (reduce by rule 63)
++	exp : exp . HANDLE clauses 
++
++	ARCHITECTURE	reduce by rule 63
++	END	reduce by rule 63
++	LOCAL	reduce by rule 63
++	IN	reduce by rule 63
++	DATATYPE	reduce by rule 63
++	TYPE	reduce by rule 63
++	RPAREN	reduce by rule 63
++	SEMICOLON	reduce by rule 63
++	STORAGE	reduce by rule 63
++	LOCATIONS	reduce by rule 63
++	HANDLE	shift 402
++	STRUCTURE	reduce by rule 63
++	FUNCTOR	reduce by rule 63
++	SIGNATURE	reduce by rule 63
++	SHARING	reduce by rule 63
++	INSTRUCTION	reduce by rule 63
++	VLIW	reduce by rule 63
++	SUPERSCALAR	reduce by rule 63
++	FUN	reduce by rule 63
++	VAL	reduce by rule 63
++	INCLUDE	reduce by rule 63
++	OPEN	reduce by rule 63
++	LITTLE	reduce by rule 63
++	BIG	reduce by rule 63
++	PIPELINE	reduce by rule 63
++	LOWERCASE	reduce by rule 63
++	UPPERCASE	reduce by rule 63
++	VERBATIM	reduce by rule 63
++	RTL	reduce by rule 63
++	NONFIX	reduce by rule 63
++	INFIX	reduce by rule 63
++	INFIXR	reduce by rule 63
++	DEBUG	reduce by rule 63
++	RESOURCE	reduce by rule 63
++	CPU	reduce by rule 63
++	LATENCY	reduce by rule 63
++	EXCEPTION	reduce by rule 63
++	EOF	reduce by rule 63
++
++
++	.	error
++
++error:  state 282: shift/reduce conflict (shift INT, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift WORD, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift SYMBOL, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift ID, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift CELLSET, reduce by rule 274)
++error:  state 282: shift/reduce conflict (shift LPAREN, reduce by rule 274)
++
++state 282:
++
++	appexp : appexp . aexp2 
++	exp : appexp .  (reduce by rule 274)
++
++	ARCHITECTURE	reduce by rule 274
++	END	reduce by rule 274
++	LOCAL	reduce by rule 274
++	IN	reduce by rule 274
++	OF	reduce by rule 274
++	DATATYPE	reduce by rule 274
++	TYPE	reduce by rule 274
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	AND	reduce by rule 274
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	RPAREN	reduce by rule 274
++	LBRACKET	shift 295
++	RBRACKET	reduce by rule 274
++	LBRACE	shift 294
++	RBRACE	reduce by rule 274
++	SEMICOLON	reduce by rule 274
++	LDQUOTE	shift 293
++	RMETA	reduce by rule 274
++	CELLSET	shift 50
++	STORAGE	reduce by rule 274
++	LOCATIONS	reduce by rule 274
++	HASH	shift 291
++	COMMA	reduce by rule 274
++	COLON	reduce by rule 274
++	BAR	reduce by rule 274
++	DARROW	reduce by rule 274
++	THEN	reduce by rule 274
++	ELSE	reduce by rule 274
++	TRUE	shift 99
++	FALSE	shift 98
++	HANDLE	reduce by rule 274
++	LET	shift 288
++	STRUCTURE	reduce by rule 274
++	FUNCTOR	reduce by rule 274
++	SIGNATURE	reduce by rule 274
++	SHARING	reduce by rule 274
++	INSTRUCTION	reduce by rule 274
++	VLIW	reduce by rule 274
++	SUPERSCALAR	reduce by rule 274
++	WITHTYPE	reduce by rule 274
++	FUN	reduce by rule 274
++	VAL	reduce by rule 274
++	INCLUDE	reduce by rule 274
++	OPEN	reduce by rule 274
++	OP	shift 287
++	LITTLE	reduce by rule 274
++	BIG	reduce by rule 274
++	PIPELINE	reduce by rule 274
++	LOWERCASE	reduce by rule 274
++	UPPERCASE	reduce by rule 274
++	VERBATIM	reduce by rule 274
++	RTL	reduce by rule 274
++	SPAN	reduce by rule 274
++	DELAYSLOT	reduce by rule 274
++	ALWAYS	shift 96
++	NEVER	shift 95
++	NONFIX	reduce by rule 274
++	INFIX	reduce by rule 274
++	INFIXR	reduce by rule 274
++	DEBUG	reduce by rule 274
++	ASM_COLON	reduce by rule 274
++	MC_COLON	reduce by rule 274
++	RTL_COLON	reduce by rule 274
++	DELAYSLOT_COLON	reduce by rule 274
++	NULLIFIED_COLON	reduce by rule 274
++	PADDING_COLON	reduce by rule 274
++	RESOURCE	reduce by rule 274
++	CPU	reduce by rule 274
++	LATENCY	reduce by rule 274
++	EXCEPTION	reduce by rule 274
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++	EOF	reduce by rule 274
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 403
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 283:
++
++	aexp2 : aexp2 . AT LBRACKET slices RBRACKET 
++	appexp : aexp2 .  (reduce by rule 272)
++
++	ARCHITECTURE	reduce by rule 272
++	END	reduce by rule 272
++	LOCAL	reduce by rule 272
++	IN	reduce by rule 272
++	OF	reduce by rule 272
++	DATATYPE	reduce by rule 272
++	TYPE	reduce by rule 272
++	EQ	reduce by rule 272
++	DOLLAR	reduce by rule 272
++	TIMES	reduce by rule 272
++	AND	reduce by rule 272
++	DEREF	reduce by rule 272
++	NOT	reduce by rule 272
++	LLBRACKET	reduce by rule 272
++	LHASHBRACKET	reduce by rule 272
++	LPAREN	reduce by rule 272
++	RPAREN	reduce by rule 272
++	LBRACKET	reduce by rule 272
++	RBRACKET	reduce by rule 272
++	LBRACE	reduce by rule 272
++	RBRACE	reduce by rule 272
++	SEMICOLON	reduce by rule 272
++	LDQUOTE	reduce by rule 272
++	RMETA	reduce by rule 272
++	CELLSET	reduce by rule 272
++	STORAGE	reduce by rule 272
++	LOCATIONS	reduce by rule 272
++	HASH	reduce by rule 272
++	COMMA	reduce by rule 272
++	COLON	reduce by rule 272
++	AT	shift 404
++	BAR	reduce by rule 272
++	DARROW	reduce by rule 272
++	THEN	reduce by rule 272
++	ELSE	reduce by rule 272
++	TRUE	reduce by rule 272
++	FALSE	reduce by rule 272
++	HANDLE	reduce by rule 272
++	LET	reduce by rule 272
++	STRUCTURE	reduce by rule 272
++	FUNCTOR	reduce by rule 272
++	SIGNATURE	reduce by rule 272
++	SHARING	reduce by rule 272
++	INSTRUCTION	reduce by rule 272
++	VLIW	reduce by rule 272
++	SUPERSCALAR	reduce by rule 272
++	WITHTYPE	reduce by rule 272
++	FUN	reduce by rule 272
++	VAL	reduce by rule 272
++	INCLUDE	reduce by rule 272
++	OPEN	reduce by rule 272
++	OP	reduce by rule 272
++	LITTLE	reduce by rule 272
++	BIG	reduce by rule 272
++	PIPELINE	reduce by rule 272
++	LOWERCASE	reduce by rule 272
++	UPPERCASE	reduce by rule 272
++	VERBATIM	reduce by rule 272
++	RTL	reduce by rule 272
++	SPAN	reduce by rule 272
++	DELAYSLOT	reduce by rule 272
++	ALWAYS	reduce by rule 272
++	NEVER	reduce by rule 272
++	NONFIX	reduce by rule 272
++	INFIX	reduce by rule 272
++	INFIXR	reduce by rule 272
++	DEBUG	reduce by rule 272
++	ASM_COLON	reduce by rule 272
++	MC_COLON	reduce by rule 272
++	RTL_COLON	reduce by rule 272
++	DELAYSLOT_COLON	reduce by rule 272
++	NULLIFIED_COLON	reduce by rule 272
++	PADDING_COLON	reduce by rule 272
++	RESOURCE	reduce by rule 272
++	CPU	reduce by rule 272
++	LATENCY	reduce by rule 272
++	EXCEPTION	reduce by rule 272
++	ID	reduce by rule 272
++	SYMBOL	reduce by rule 272
++	WORD	reduce by rule 272
++	INT	reduce by rule 272
++	INTINF	reduce by rule 272
++	REAL	reduce by rule 272
++	STRING	reduce by rule 272
++	CHAR	reduce by rule 272
++	EOF	reduce by rule 272
++
++
++	.	error
++
++
++state 284:
++
++	aexp2 : aexp .  (reduce by rule 262)
++
++	ARCHITECTURE	reduce by rule 262
++	END	reduce by rule 262
++	LOCAL	reduce by rule 262
++	IN	reduce by rule 262
++	OF	reduce by rule 262
++	DATATYPE	reduce by rule 262
++	TYPE	reduce by rule 262
++	EQ	reduce by rule 262
++	DOLLAR	reduce by rule 262
++	TIMES	reduce by rule 262
++	AND	reduce by rule 262
++	DEREF	reduce by rule 262
++	NOT	reduce by rule 262
++	LLBRACKET	reduce by rule 262
++	LHASHBRACKET	reduce by rule 262
++	LPAREN	reduce by rule 262
++	RPAREN	reduce by rule 262
++	LBRACKET	reduce by rule 262
++	RBRACKET	reduce by rule 262
++	LBRACE	reduce by rule 262
++	RBRACE	reduce by rule 262
++	SEMICOLON	reduce by rule 262
++	LDQUOTE	reduce by rule 262
++	RMETA	reduce by rule 262
++	CELLSET	reduce by rule 262
++	STORAGE	reduce by rule 262
++	LOCATIONS	reduce by rule 262
++	HASH	reduce by rule 262
++	COMMA	reduce by rule 262
++	COLON	reduce by rule 262
++	AT	reduce by rule 262
++	BAR	reduce by rule 262
++	DARROW	reduce by rule 262
++	THEN	reduce by rule 262
++	ELSE	reduce by rule 262
++	TRUE	reduce by rule 262
++	FALSE	reduce by rule 262
++	HANDLE	reduce by rule 262
++	LET	reduce by rule 262
++	STRUCTURE	reduce by rule 262
++	FUNCTOR	reduce by rule 262
++	SIGNATURE	reduce by rule 262
++	SHARING	reduce by rule 262
++	INSTRUCTION	reduce by rule 262
++	VLIW	reduce by rule 262
++	SUPERSCALAR	reduce by rule 262
++	WITHTYPE	reduce by rule 262
++	FUN	reduce by rule 262
++	VAL	reduce by rule 262
++	INCLUDE	reduce by rule 262
++	OPEN	reduce by rule 262
++	OP	reduce by rule 262
++	LITTLE	reduce by rule 262
++	BIG	reduce by rule 262
++	PIPELINE	reduce by rule 262
++	LOWERCASE	reduce by rule 262
++	UPPERCASE	reduce by rule 262
++	VERBATIM	reduce by rule 262
++	RTL	reduce by rule 262
++	SPAN	reduce by rule 262
++	DELAYSLOT	reduce by rule 262
++	ALWAYS	reduce by rule 262
++	NEVER	reduce by rule 262
++	NONFIX	reduce by rule 262
++	INFIX	reduce by rule 262
++	INFIXR	reduce by rule 262
++	DEBUG	reduce by rule 262
++	ASM_COLON	reduce by rule 262
++	MC_COLON	reduce by rule 262
++	RTL_COLON	reduce by rule 262
++	DELAYSLOT_COLON	reduce by rule 262
++	NULLIFIED_COLON	reduce by rule 262
++	PADDING_COLON	reduce by rule 262
++	RESOURCE	reduce by rule 262
++	CPU	reduce by rule 262
++	LATENCY	reduce by rule 262
++	EXCEPTION	reduce by rule 262
++	ID	reduce by rule 262
++	SYMBOL	reduce by rule 262
++	WORD	reduce by rule 262
++	INT	reduce by rule 262
++	INTINF	reduce by rule 262
++	REAL	reduce by rule 262
++	STRING	reduce by rule 262
++	CHAR	reduce by rule 262
++	EOF	reduce by rule 262
++
++
++	.	error
++
++
++state 285:
++
++	aexp : ident2 .  (reduce by rule 242)
++
++	ARCHITECTURE	reduce by rule 242
++	END	reduce by rule 242
++	LOCAL	reduce by rule 242
++	IN	reduce by rule 242
++	OF	reduce by rule 242
++	DATATYPE	reduce by rule 242
++	TYPE	reduce by rule 242
++	EQ	reduce by rule 242
++	DOLLAR	reduce by rule 242
++	TIMES	reduce by rule 242
++	AND	reduce by rule 242
++	DEREF	reduce by rule 242
++	NOT	reduce by rule 242
++	LLBRACKET	reduce by rule 242
++	LHASHBRACKET	reduce by rule 242
++	LPAREN	reduce by rule 242
++	RPAREN	reduce by rule 242
++	LBRACKET	reduce by rule 242
++	RBRACKET	reduce by rule 242
++	LBRACE	reduce by rule 242
++	RBRACE	reduce by rule 242
++	SEMICOLON	reduce by rule 242
++	LDQUOTE	reduce by rule 242
++	RMETA	reduce by rule 242
++	CELLSET	reduce by rule 242
++	STORAGE	reduce by rule 242
++	LOCATIONS	reduce by rule 242
++	HASH	reduce by rule 242
++	COMMA	reduce by rule 242
++	COLON	reduce by rule 242
++	AT	reduce by rule 242
++	BAR	reduce by rule 242
++	DARROW	reduce by rule 242
++	THEN	reduce by rule 242
++	ELSE	reduce by rule 242
++	TRUE	reduce by rule 242
++	FALSE	reduce by rule 242
++	HANDLE	reduce by rule 242
++	LET	reduce by rule 242
++	STRUCTURE	reduce by rule 242
++	FUNCTOR	reduce by rule 242
++	SIGNATURE	reduce by rule 242
++	SHARING	reduce by rule 242
++	INSTRUCTION	reduce by rule 242
++	VLIW	reduce by rule 242
++	SUPERSCALAR	reduce by rule 242
++	WITHTYPE	reduce by rule 242
++	FUN	reduce by rule 242
++	VAL	reduce by rule 242
++	INCLUDE	reduce by rule 242
++	OPEN	reduce by rule 242
++	OP	reduce by rule 242
++	LITTLE	reduce by rule 242
++	BIG	reduce by rule 242
++	PIPELINE	reduce by rule 242
++	LOWERCASE	reduce by rule 242
++	UPPERCASE	reduce by rule 242
++	VERBATIM	reduce by rule 242
++	RTL	reduce by rule 242
++	SPAN	reduce by rule 242
++	DELAYSLOT	reduce by rule 242
++	ALWAYS	reduce by rule 242
++	NEVER	reduce by rule 242
++	NONFIX	reduce by rule 242
++	INFIX	reduce by rule 242
++	INFIXR	reduce by rule 242
++	DEBUG	reduce by rule 242
++	ASM_COLON	reduce by rule 242
++	MC_COLON	reduce by rule 242
++	RTL_COLON	reduce by rule 242
++	DELAYSLOT_COLON	reduce by rule 242
++	NULLIFIED_COLON	reduce by rule 242
++	PADDING_COLON	reduce by rule 242
++	RESOURCE	reduce by rule 242
++	CPU	reduce by rule 242
++	LATENCY	reduce by rule 242
++	EXCEPTION	reduce by rule 242
++	ID	reduce by rule 242
++	SYMBOL	reduce by rule 242
++	WORD	reduce by rule 242
++	INT	reduce by rule 242
++	INTINF	reduce by rule 242
++	REAL	reduce by rule 242
++	STRING	reduce by rule 242
++	CHAR	reduce by rule 242
++	EOF	reduce by rule 242
++
++
++	.	error
++
++
++state 286:
++
++	aexp : sym . CONCAT LBRACKET exps RBRACKET 
++	aexp : sym . CONCAT LBRACKET exps RBRACKET CONCAT sym 
++	aexp2 : sym .  (reduce by rule 263)
++
++	ARCHITECTURE	reduce by rule 263
++	END	reduce by rule 263
++	LOCAL	reduce by rule 263
++	IN	reduce by rule 263
++	OF	reduce by rule 263
++	DATATYPE	reduce by rule 263
++	TYPE	reduce by rule 263
++	EQ	reduce by rule 263
++	DOLLAR	reduce by rule 263
++	TIMES	reduce by rule 263
++	AND	reduce by rule 263
++	DEREF	reduce by rule 263
++	NOT	reduce by rule 263
++	CONCAT	shift 405
++	LLBRACKET	reduce by rule 263
++	LHASHBRACKET	reduce by rule 263
++	LPAREN	reduce by rule 263
++	RPAREN	reduce by rule 263
++	LBRACKET	reduce by rule 263
++	RBRACKET	reduce by rule 263
++	LBRACE	reduce by rule 263
++	RBRACE	reduce by rule 263
++	SEMICOLON	reduce by rule 263
++	LDQUOTE	reduce by rule 263
++	RMETA	reduce by rule 263
++	CELLSET	reduce by rule 263
++	STORAGE	reduce by rule 263
++	LOCATIONS	reduce by rule 263
++	HASH	reduce by rule 263
++	COMMA	reduce by rule 263
++	COLON	reduce by rule 263
++	AT	reduce by rule 263
++	BAR	reduce by rule 263
++	DARROW	reduce by rule 263
++	THEN	reduce by rule 263
++	ELSE	reduce by rule 263
++	TRUE	reduce by rule 263
++	FALSE	reduce by rule 263
++	HANDLE	reduce by rule 263
++	LET	reduce by rule 263
++	STRUCTURE	reduce by rule 263
++	FUNCTOR	reduce by rule 263
++	SIGNATURE	reduce by rule 263
++	SHARING	reduce by rule 263
++	INSTRUCTION	reduce by rule 263
++	VLIW	reduce by rule 263
++	SUPERSCALAR	reduce by rule 263
++	WITHTYPE	reduce by rule 263
++	FUN	reduce by rule 263
++	VAL	reduce by rule 263
++	INCLUDE	reduce by rule 263
++	OPEN	reduce by rule 263
++	OP	reduce by rule 263
++	LITTLE	reduce by rule 263
++	BIG	reduce by rule 263
++	PIPELINE	reduce by rule 263
++	LOWERCASE	reduce by rule 263
++	UPPERCASE	reduce by rule 263
++	VERBATIM	reduce by rule 263
++	RTL	reduce by rule 263
++	SPAN	reduce by rule 263
++	DELAYSLOT	reduce by rule 263
++	ALWAYS	reduce by rule 263
++	NEVER	reduce by rule 263
++	NONFIX	reduce by rule 263
++	INFIX	reduce by rule 263
++	INFIXR	reduce by rule 263
++	DEBUG	reduce by rule 263
++	ASM_COLON	reduce by rule 263
++	MC_COLON	reduce by rule 263
++	RTL_COLON	reduce by rule 263
++	DELAYSLOT_COLON	reduce by rule 263
++	NULLIFIED_COLON	reduce by rule 263
++	PADDING_COLON	reduce by rule 263
++	RESOURCE	reduce by rule 263
++	CPU	reduce by rule 263
++	LATENCY	reduce by rule 263
++	EXCEPTION	reduce by rule 263
++	ID	reduce by rule 263
++	SYMBOL	reduce by rule 263
++	WORD	reduce by rule 263
++	INT	reduce by rule 263
++	INTINF	reduce by rule 263
++	REAL	reduce by rule 263
++	STRING	reduce by rule 263
++	CHAR	reduce by rule 263
++	EOF	reduce by rule 263
++
++
++	.	error
++
++
++state 287:
++
++	aexp : OP . symb 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++
++	symb	goto 406
++
++	.	error
++
++
++state 288:
++
++	aexp : LET . decls IN expseq END 
++
++	ARCHITECTURE	shift 39
++	LOCAL	shift 38
++	IN	reduce by rule 1
++	DATATYPE	shift 37
++	TYPE	shift 36
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++
++	decls	goto 407
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 289:
++
++	exp : RAISE . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 408
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 290:
++
++	exp : IF . typedexp THEN typedexp ELSE exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 409
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 291:
++
++	aexp : HASH . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 410
++
++	.	error
++
++
++state 292:
++
++	exp : FN . clauses 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 413
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	clause	goto 412
++	clauses	goto 411
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 293:
++
++	asm_strings : LDQUOTE . asms RDQUOTE 
++	asm_strings : LDQUOTE . asms RDQUOTE asm_strings 
++
++	LMETA	shift 417
++	ASMTEXT	shift 416
++
++	asms	goto 415
++	asm	goto 414
++
++	.	error
++
++
++state 294:
++
++	aexp : LBRACE . labexps0 RBRACE 
++
++	RBRACE	reduce by rule 266
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 421
++	labexps0	goto 420
++	labexps	goto 419
++	labexp	goto 418
++
++	.	error
++
++
++state 295:
++
++	aexp : LBRACKET . exps RBRACKET 
++	aexp : LBRACKET . exps RBRACKET CONCAT sym 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	RBRACKET	reduce by rule 288
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 424
++	exps	goto 423
++	exps1	goto 422
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 296:
++
++	aexp : LPAREN . symb RPAREN 
++	aexp : LPAREN . RPAREN 
++	aexp : LPAREN . typedexp RPAREN 
++	aexp : LPAREN . exps2 RPAREN 
++	aexp : LPAREN . expseq2 RPAREN 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	RPAREN	shift 429
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 428
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 427
++	exps2	goto 426
++	expseq2	goto 425
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 297:
++
++	aexp : LHASHBRACKET . exps RBRACKET 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	RBRACKET	reduce by rule 288
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 424
++	exps	goto 430
++	exps1	goto 422
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 298:
++
++	aexp : LLBRACKET . rtlterms RRBRACKET 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	HASH	shift 435
++	ID	shift 49
++	SYMBOL	shift 48
++	STRING	shift 91
++
++	id	goto 69
++	sym	goto 434
++	symb	goto 67
++	string	goto 433
++	rtlterm	goto 432
++	rtlterms	goto 431
++
++	.	error
++
++
++state 299:
++
++	aexp : DOLLAR . id LBRACKET exp region RBRACKET 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 436
++
++	.	error
++
++
++state 300:
++
++	aexp2 : EQ .  (reduce by rule 264)
++
++	ARCHITECTURE	reduce by rule 264
++	END	reduce by rule 264
++	LOCAL	reduce by rule 264
++	IN	reduce by rule 264
++	OF	reduce by rule 264
++	DATATYPE	reduce by rule 264
++	TYPE	reduce by rule 264
++	EQ	reduce by rule 264
++	DOLLAR	reduce by rule 264
++	TIMES	reduce by rule 264
++	AND	reduce by rule 264
++	DEREF	reduce by rule 264
++	NOT	reduce by rule 264
++	LLBRACKET	reduce by rule 264
++	LHASHBRACKET	reduce by rule 264
++	LPAREN	reduce by rule 264
++	RPAREN	reduce by rule 264
++	LBRACKET	reduce by rule 264
++	RBRACKET	reduce by rule 264
++	LBRACE	reduce by rule 264
++	RBRACE	reduce by rule 264
++	SEMICOLON	reduce by rule 264
++	LDQUOTE	reduce by rule 264
++	RMETA	reduce by rule 264
++	CELLSET	reduce by rule 264
++	STORAGE	reduce by rule 264
++	LOCATIONS	reduce by rule 264
++	HASH	reduce by rule 264
++	COMMA	reduce by rule 264
++	COLON	reduce by rule 264
++	AT	reduce by rule 264
++	BAR	reduce by rule 264
++	DARROW	reduce by rule 264
++	THEN	reduce by rule 264
++	ELSE	reduce by rule 264
++	TRUE	reduce by rule 264
++	FALSE	reduce by rule 264
++	HANDLE	reduce by rule 264
++	LET	reduce by rule 264
++	STRUCTURE	reduce by rule 264
++	FUNCTOR	reduce by rule 264
++	SIGNATURE	reduce by rule 264
++	SHARING	reduce by rule 264
++	INSTRUCTION	reduce by rule 264
++	VLIW	reduce by rule 264
++	SUPERSCALAR	reduce by rule 264
++	WITHTYPE	reduce by rule 264
++	FUN	reduce by rule 264
++	VAL	reduce by rule 264
++	INCLUDE	reduce by rule 264
++	OPEN	reduce by rule 264
++	OP	reduce by rule 264
++	LITTLE	reduce by rule 264
++	BIG	reduce by rule 264
++	PIPELINE	reduce by rule 264
++	LOWERCASE	reduce by rule 264
++	UPPERCASE	reduce by rule 264
++	VERBATIM	reduce by rule 264
++	RTL	reduce by rule 264
++	SPAN	reduce by rule 264
++	DELAYSLOT	reduce by rule 264
++	ALWAYS	reduce by rule 264
++	NEVER	reduce by rule 264
++	NONFIX	reduce by rule 264
++	INFIX	reduce by rule 264
++	INFIXR	reduce by rule 264
++	DEBUG	reduce by rule 264
++	ASM_COLON	reduce by rule 264
++	MC_COLON	reduce by rule 264
++	RTL_COLON	reduce by rule 264
++	DELAYSLOT_COLON	reduce by rule 264
++	NULLIFIED_COLON	reduce by rule 264
++	PADDING_COLON	reduce by rule 264
++	RESOURCE	reduce by rule 264
++	CPU	reduce by rule 264
++	LATENCY	reduce by rule 264
++	EXCEPTION	reduce by rule 264
++	ID	reduce by rule 264
++	SYMBOL	reduce by rule 264
++	WORD	reduce by rule 264
++	INT	reduce by rule 264
++	INTINF	reduce by rule 264
++	REAL	reduce by rule 264
++	STRING	reduce by rule 264
++	CHAR	reduce by rule 264
++	EOF	reduce by rule 264
++
++
++	.	error
++
++
++state 301:
++
++	exp : CASE . typedexp OF clauses 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 437
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 302:
++
++	path : path DOT sym .  (reduce by rule 425)
++
++	ARCHITECTURE	reduce by rule 425
++	END	reduce by rule 425
++	LOCAL	reduce by rule 425
++	IN	reduce by rule 425
++	OF	reduce by rule 425
++	DATATYPE	reduce by rule 425
++	TYPE	reduce by rule 425
++	EQ	reduce by rule 425
++	DOLLAR	reduce by rule 425
++	TIMES	reduce by rule 425
++	AND	reduce by rule 425
++	DEREF	reduce by rule 425
++	NOT	reduce by rule 425
++	LLBRACKET	reduce by rule 425
++	LHASHBRACKET	reduce by rule 425
++	LPAREN	reduce by rule 425
++	RPAREN	reduce by rule 425
++	LBRACKET	reduce by rule 425
++	RBRACKET	reduce by rule 425
++	LBRACE	reduce by rule 425
++	RBRACE	reduce by rule 425
++	SEMICOLON	reduce by rule 425
++	LDQUOTE	reduce by rule 425
++	RMETA	reduce by rule 425
++	CELLSET	reduce by rule 425
++	STORAGE	reduce by rule 425
++	LOCATIONS	reduce by rule 425
++	HASH	reduce by rule 425
++	COMMA	reduce by rule 425
++	COLON	reduce by rule 425
++	DOT	reduce by rule 425
++	AT	reduce by rule 425
++	BAR	reduce by rule 425
++	DARROW	reduce by rule 425
++	THEN	reduce by rule 425
++	ELSE	reduce by rule 425
++	TRUE	reduce by rule 425
++	FALSE	reduce by rule 425
++	WILD	reduce by rule 425
++	HANDLE	reduce by rule 425
++	LET	reduce by rule 425
++	STRUCTURE	reduce by rule 425
++	FUNCTOR	reduce by rule 425
++	SIGNATURE	reduce by rule 425
++	WHERE	reduce by rule 425
++	SHARING	reduce by rule 425
++	INSTRUCTION	reduce by rule 425
++	VLIW	reduce by rule 425
++	SUPERSCALAR	reduce by rule 425
++	WITHTYPE	reduce by rule 425
++	FUN	reduce by rule 425
++	VAL	reduce by rule 425
++	INCLUDE	reduce by rule 425
++	OPEN	reduce by rule 425
++	OP	reduce by rule 425
++	LITTLE	reduce by rule 425
++	BIG	reduce by rule 425
++	PIPELINE	reduce by rule 425
++	LOWERCASE	reduce by rule 425
++	UPPERCASE	reduce by rule 425
++	VERBATIM	reduce by rule 425
++	RTL	reduce by rule 425
++	SPAN	reduce by rule 425
++	DELAYSLOT	reduce by rule 425
++	ALWAYS	reduce by rule 425
++	NEVER	reduce by rule 425
++	NONFIX	reduce by rule 425
++	INFIX	reduce by rule 425
++	INFIXR	reduce by rule 425
++	DEBUG	reduce by rule 425
++	ASM_COLON	reduce by rule 425
++	MC_COLON	reduce by rule 425
++	RTL_COLON	reduce by rule 425
++	DELAYSLOT_COLON	reduce by rule 425
++	NULLIFIED_COLON	reduce by rule 425
++	PADDING_COLON	reduce by rule 425
++	RESOURCE	reduce by rule 425
++	CPU	reduce by rule 425
++	LATENCY	reduce by rule 425
++	EXCEPTION	reduce by rule 425
++	ID	reduce by rule 425
++	SYMBOL	reduce by rule 425
++	WORD	reduce by rule 425
++	INT	reduce by rule 425
++	INTINF	reduce by rule 425
++	REAL	reduce by rule 425
++	STRING	reduce by rule 425
++	CHAR	reduce by rule 425
++	EOF	reduce by rule 425
++
++
++	.	error
++
++
++state 303:
++
++	mymldecl : RTL syms COLON ty .  (reduce by rule 64)
++	ty : ty . ARROW ty 
++
++	ARCHITECTURE	reduce by rule 64
++	END	reduce by rule 64
++	LOCAL	reduce by rule 64
++	IN	reduce by rule 64
++	DATATYPE	reduce by rule 64
++	TYPE	reduce by rule 64
++	RPAREN	reduce by rule 64
++	SEMICOLON	reduce by rule 64
++	STORAGE	reduce by rule 64
++	LOCATIONS	reduce by rule 64
++	ARROW	shift 388
++	STRUCTURE	reduce by rule 64
++	FUNCTOR	reduce by rule 64
++	SIGNATURE	reduce by rule 64
++	SHARING	reduce by rule 64
++	INSTRUCTION	reduce by rule 64
++	VLIW	reduce by rule 64
++	SUPERSCALAR	reduce by rule 64
++	FUN	reduce by rule 64
++	VAL	reduce by rule 64
++	INCLUDE	reduce by rule 64
++	OPEN	reduce by rule 64
++	LITTLE	reduce by rule 64
++	BIG	reduce by rule 64
++	PIPELINE	reduce by rule 64
++	LOWERCASE	reduce by rule 64
++	UPPERCASE	reduce by rule 64
++	VERBATIM	reduce by rule 64
++	RTL	reduce by rule 64
++	NONFIX	reduce by rule 64
++	INFIX	reduce by rule 64
++	INFIXR	reduce by rule 64
++	DEBUG	reduce by rule 64
++	RESOURCE	reduce by rule 64
++	CPU	reduce by rule 64
++	LATENCY	reduce by rule 64
++	EXCEPTION	reduce by rule 64
++	EOF	reduce by rule 64
++
++
++	.	error
++
++
++state 304:
++
++	apat : sym CONCAT LBRACKET . pats RBRACKET 
++	apat : sym CONCAT LBRACKET . pats RBRACKET CONCAT sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	RBRACKET	reduce by rule 321
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 194
++	pats	goto 438
++	pats1	goto 192
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 305:
++
++	asapat : id AS asapat .  (reduce by rule 320)
++
++	EQ	reduce by rule 320
++
++
++	.	error
++
++
++state 306:
++
++	apat : sym . CONCAT LBRACKET pats RBRACKET 
++	apat : sym . CONCAT LBRACKET pats RBRACKET CONCAT sym 
++
++	CONCAT	shift 184
++
++
++	.	error
++
++
++state 307:
++
++	sym : id .  (reduce by rule 416)
++	path : id . DOT sym 
++	asapat : id . AS asapat 
++
++	CONCAT	reduce by rule 416
++	DOT	shift 186
++	AS	shift 185
++
++
++	.	error
++
++
++state 308:
++
++	path : id DOT sym .  (reduce by rule 424)
++
++	ARCHITECTURE	reduce by rule 424
++	END	reduce by rule 424
++	LOCAL	reduce by rule 424
++	IN	reduce by rule 424
++	OF	reduce by rule 424
++	DATATYPE	reduce by rule 424
++	TYPE	reduce by rule 424
++	EQ	reduce by rule 424
++	DOLLAR	reduce by rule 424
++	TIMES	reduce by rule 424
++	AND	reduce by rule 424
++	DEREF	reduce by rule 424
++	NOT	reduce by rule 424
++	LLBRACKET	reduce by rule 424
++	LHASHBRACKET	reduce by rule 424
++	LPAREN	reduce by rule 424
++	RPAREN	reduce by rule 424
++	LBRACKET	reduce by rule 424
++	RBRACKET	reduce by rule 424
++	LBRACE	reduce by rule 424
++	RBRACE	reduce by rule 424
++	SEMICOLON	reduce by rule 424
++	LDQUOTE	reduce by rule 424
++	RMETA	reduce by rule 424
++	CELLSET	reduce by rule 424
++	STORAGE	reduce by rule 424
++	LOCATIONS	reduce by rule 424
++	HASH	reduce by rule 424
++	COMMA	reduce by rule 424
++	COLON	reduce by rule 424
++	DOT	reduce by rule 424
++	AT	reduce by rule 424
++	BAR	reduce by rule 424
++	DARROW	reduce by rule 424
++	THEN	reduce by rule 424
++	ELSE	reduce by rule 424
++	TRUE	reduce by rule 424
++	FALSE	reduce by rule 424
++	WILD	reduce by rule 424
++	HANDLE	reduce by rule 424
++	LET	reduce by rule 424
++	STRUCTURE	reduce by rule 424
++	FUNCTOR	reduce by rule 424
++	SIGNATURE	reduce by rule 424
++	WHERE	reduce by rule 424
++	SHARING	reduce by rule 424
++	INSTRUCTION	reduce by rule 424
++	VLIW	reduce by rule 424
++	SUPERSCALAR	reduce by rule 424
++	WITHTYPE	reduce by rule 424
++	FUN	reduce by rule 424
++	VAL	reduce by rule 424
++	INCLUDE	reduce by rule 424
++	OPEN	reduce by rule 424
++	OP	reduce by rule 424
++	LITTLE	reduce by rule 424
++	BIG	reduce by rule 424
++	PIPELINE	reduce by rule 424
++	LOWERCASE	reduce by rule 424
++	UPPERCASE	reduce by rule 424
++	VERBATIM	reduce by rule 424
++	RTL	reduce by rule 424
++	SPAN	reduce by rule 424
++	DELAYSLOT	reduce by rule 424
++	ALWAYS	reduce by rule 424
++	NEVER	reduce by rule 424
++	NONFIX	reduce by rule 424
++	INFIX	reduce by rule 424
++	INFIXR	reduce by rule 424
++	DEBUG	reduce by rule 424
++	ASM_COLON	reduce by rule 424
++	MC_COLON	reduce by rule 424
++	RTL_COLON	reduce by rule 424
++	DELAYSLOT_COLON	reduce by rule 424
++	NULLIFIED_COLON	reduce by rule 424
++	PADDING_COLON	reduce by rule 424
++	RESOURCE	reduce by rule 424
++	CPU	reduce by rule 424
++	LATENCY	reduce by rule 424
++	EXCEPTION	reduce by rule 424
++	ID	reduce by rule 424
++	SYMBOL	reduce by rule 424
++	WORD	reduce by rule 424
++	INT	reduce by rule 424
++	INTINF	reduce by rule 424
++	REAL	reduce by rule 424
++	STRING	reduce by rule 424
++	CHAR	reduce by rule 424
++	EOF	reduce by rule 424
++
++
++	.	error
++
++
++state 309:
++
++	mymldecl : RTL id LBRACE labpats0 . RBRACE EQ exp 
++
++	RBRACE	shift 439
++
++
++	.	error
++
++
++state 310:
++
++	apat : LBRACE labpats0 RBRACE .  (reduce by rule 302)
++
++	EQ	reduce by rule 302
++	TIMES	reduce by rule 302
++	AND	reduce by rule 302
++	DEREF	reduce by rule 302
++	NOT	reduce by rule 302
++	LHASHBRACKET	reduce by rule 302
++	LPAREN	reduce by rule 302
++	RPAREN	reduce by rule 302
++	LBRACKET	reduce by rule 302
++	RBRACKET	reduce by rule 302
++	LBRACE	reduce by rule 302
++	RBRACE	reduce by rule 302
++	CELLSET	reduce by rule 302
++	COMMA	reduce by rule 302
++	COLON	reduce by rule 302
++	BAR	reduce by rule 302
++	DARROW	reduce by rule 302
++	TRUE	reduce by rule 302
++	FALSE	reduce by rule 302
++	WILD	reduce by rule 302
++	WHERE	reduce by rule 302
++	OP	reduce by rule 302
++	ALWAYS	reduce by rule 302
++	NEVER	reduce by rule 302
++	EXCEPTION	reduce by rule 302
++	ID	reduce by rule 302
++	SYMBOL	reduce by rule 302
++	WORD	reduce by rule 302
++	INT	reduce by rule 302
++	INTINF	reduce by rule 302
++	REAL	reduce by rule 302
++	STRING	reduce by rule 302
++	CHAR	reduce by rule 302
++
++
++	.	error
++
++
++state 311:
++
++	labpats : labpat COMMA . DOTDOT 
++	labpats : labpat COMMA . labpats 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	DOTDOT	shift 441
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 191
++	symb	goto 67
++	labpat	goto 190
++	labpats	goto 440
++
++	.	error
++
++
++state 312:
++
++	labpat : sym AS . typedpat 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 442
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 313:
++
++	labpat : sym WHERE . typedexp 
++	labpat : sym WHERE . typedexp IN typedpat 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 443
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 314:
++
++	labpat : sym EQ . typedpat 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 444
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 315:
++
++	apat : LBRACKET pats RBRACKET .  (reduce by rule 294)
++	apat : LBRACKET pats RBRACKET . CONCAT sym 
++
++	EQ	reduce by rule 294
++	TIMES	reduce by rule 294
++	AND	reduce by rule 294
++	DEREF	reduce by rule 294
++	NOT	reduce by rule 294
++	CONCAT	shift 445
++	LHASHBRACKET	reduce by rule 294
++	LPAREN	reduce by rule 294
++	RPAREN	reduce by rule 294
++	LBRACKET	reduce by rule 294
++	RBRACKET	reduce by rule 294
++	LBRACE	reduce by rule 294
++	RBRACE	reduce by rule 294
++	CELLSET	reduce by rule 294
++	COMMA	reduce by rule 294
++	COLON	reduce by rule 294
++	BAR	reduce by rule 294
++	DARROW	reduce by rule 294
++	TRUE	reduce by rule 294
++	FALSE	reduce by rule 294
++	WILD	reduce by rule 294
++	WHERE	reduce by rule 294
++	OP	reduce by rule 294
++	ALWAYS	reduce by rule 294
++	NEVER	reduce by rule 294
++	EXCEPTION	reduce by rule 294
++	ID	reduce by rule 294
++	SYMBOL	reduce by rule 294
++	WORD	reduce by rule 294
++	INT	reduce by rule 294
++	INTINF	reduce by rule 294
++	REAL	reduce by rule 294
++	STRING	reduce by rule 294
++	CHAR	reduce by rule 294
++
++
++	.	error
++
++
++state 316:
++
++	typedpat : typedpat COLON . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 446
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 317:
++
++	pats1 : typedpat COMMA . pats1 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 194
++	pats1	goto 447
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 318:
++
++	apat : LPAREN andpats2 RPAREN .  (reduce by rule 298)
++
++	EQ	reduce by rule 298
++	TIMES	reduce by rule 298
++	AND	reduce by rule 298
++	DEREF	reduce by rule 298
++	NOT	reduce by rule 298
++	LHASHBRACKET	reduce by rule 298
++	LPAREN	reduce by rule 298
++	RPAREN	reduce by rule 298
++	LBRACKET	reduce by rule 298
++	RBRACKET	reduce by rule 298
++	LBRACE	reduce by rule 298
++	RBRACE	reduce by rule 298
++	CELLSET	reduce by rule 298
++	COMMA	reduce by rule 298
++	COLON	reduce by rule 298
++	BAR	reduce by rule 298
++	DARROW	reduce by rule 298
++	TRUE	reduce by rule 298
++	FALSE	reduce by rule 298
++	WILD	reduce by rule 298
++	WHERE	reduce by rule 298
++	OP	reduce by rule 298
++	ALWAYS	reduce by rule 298
++	NEVER	reduce by rule 298
++	EXCEPTION	reduce by rule 298
++	ID	reduce by rule 298
++	SYMBOL	reduce by rule 298
++	WORD	reduce by rule 298
++	INT	reduce by rule 298
++	INTINF	reduce by rule 298
++	REAL	reduce by rule 298
++	STRING	reduce by rule 298
++	CHAR	reduce by rule 298
++
++
++	.	error
++
++
++state 319:
++
++	apat : LPAREN orpats2 RPAREN .  (reduce by rule 297)
++
++	EQ	reduce by rule 297
++	TIMES	reduce by rule 297
++	AND	reduce by rule 297
++	DEREF	reduce by rule 297
++	NOT	reduce by rule 297
++	LHASHBRACKET	reduce by rule 297
++	LPAREN	reduce by rule 297
++	RPAREN	reduce by rule 297
++	LBRACKET	reduce by rule 297
++	RBRACKET	reduce by rule 297
++	LBRACE	reduce by rule 297
++	RBRACE	reduce by rule 297
++	CELLSET	reduce by rule 297
++	COMMA	reduce by rule 297
++	COLON	reduce by rule 297
++	BAR	reduce by rule 297
++	DARROW	reduce by rule 297
++	TRUE	reduce by rule 297
++	FALSE	reduce by rule 297
++	WILD	reduce by rule 297
++	WHERE	reduce by rule 297
++	OP	reduce by rule 297
++	ALWAYS	reduce by rule 297
++	NEVER	reduce by rule 297
++	EXCEPTION	reduce by rule 297
++	ID	reduce by rule 297
++	SYMBOL	reduce by rule 297
++	WORD	reduce by rule 297
++	INT	reduce by rule 297
++	INTINF	reduce by rule 297
++	REAL	reduce by rule 297
++	STRING	reduce by rule 297
++	CHAR	reduce by rule 297
++
++
++	.	error
++
++
++state 320:
++
++	apat : LPAREN pats2 RPAREN .  (reduce by rule 296)
++
++	EQ	reduce by rule 296
++	TIMES	reduce by rule 296
++	AND	reduce by rule 296
++	DEREF	reduce by rule 296
++	NOT	reduce by rule 296
++	LHASHBRACKET	reduce by rule 296
++	LPAREN	reduce by rule 296
++	RPAREN	reduce by rule 296
++	LBRACKET	reduce by rule 296
++	RBRACKET	reduce by rule 296
++	LBRACE	reduce by rule 296
++	RBRACE	reduce by rule 296
++	CELLSET	reduce by rule 296
++	COMMA	reduce by rule 296
++	COLON	reduce by rule 296
++	BAR	reduce by rule 296
++	DARROW	reduce by rule 296
++	TRUE	reduce by rule 296
++	FALSE	reduce by rule 296
++	WILD	reduce by rule 296
++	WHERE	reduce by rule 296
++	OP	reduce by rule 296
++	ALWAYS	reduce by rule 296
++	NEVER	reduce by rule 296
++	EXCEPTION	reduce by rule 296
++	ID	reduce by rule 296
++	SYMBOL	reduce by rule 296
++	WORD	reduce by rule 296
++	INT	reduce by rule 296
++	INTINF	reduce by rule 296
++	REAL	reduce by rule 296
++	STRING	reduce by rule 296
++	CHAR	reduce by rule 296
++
++
++	.	error
++
++
++state 321:
++
++	apat : LPAREN typedpat WHERE . typedexp RPAREN 
++	apat : LPAREN typedpat WHERE . typedexp IN typedpat RPAREN 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 448
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 322:
++
++	orpats2 : typedpat BAR . typedpat 
++	orpats2 : typedpat BAR . orpats2 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 450
++	orpats2	goto 449
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 323:
++
++	pats2 : typedpat COMMA . pats1 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 194
++	pats1	goto 451
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 324:
++
++	apat : LPAREN typedpat RPAREN .  (reduce by rule 299)
++
++	EQ	reduce by rule 299
++	TIMES	reduce by rule 299
++	AND	reduce by rule 299
++	DEREF	reduce by rule 299
++	NOT	reduce by rule 299
++	LHASHBRACKET	reduce by rule 299
++	LPAREN	reduce by rule 299
++	RPAREN	reduce by rule 299
++	LBRACKET	reduce by rule 299
++	RBRACKET	reduce by rule 299
++	LBRACE	reduce by rule 299
++	RBRACE	reduce by rule 299
++	CELLSET	reduce by rule 299
++	COMMA	reduce by rule 299
++	COLON	reduce by rule 299
++	BAR	reduce by rule 299
++	DARROW	reduce by rule 299
++	TRUE	reduce by rule 299
++	FALSE	reduce by rule 299
++	WILD	reduce by rule 299
++	WHERE	reduce by rule 299
++	OP	reduce by rule 299
++	ALWAYS	reduce by rule 299
++	NEVER	reduce by rule 299
++	EXCEPTION	reduce by rule 299
++	ID	reduce by rule 299
++	SYMBOL	reduce by rule 299
++	WORD	reduce by rule 299
++	INT	reduce by rule 299
++	INTINF	reduce by rule 299
++	REAL	reduce by rule 299
++	STRING	reduce by rule 299
++	CHAR	reduce by rule 299
++
++
++	.	error
++
++
++state 325:
++
++	andpats2 : typedpat AND . typedpat 
++	andpats2 : typedpat AND . andpats2 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 453
++	andpats2	goto 452
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 326:
++
++	apat : LHASHBRACKET pats RBRACKET .  (reduce by rule 295)
++
++	EQ	reduce by rule 295
++	TIMES	reduce by rule 295
++	AND	reduce by rule 295
++	DEREF	reduce by rule 295
++	NOT	reduce by rule 295
++	LHASHBRACKET	reduce by rule 295
++	LPAREN	reduce by rule 295
++	RPAREN	reduce by rule 295
++	LBRACKET	reduce by rule 295
++	RBRACKET	reduce by rule 295
++	LBRACE	reduce by rule 295
++	RBRACE	reduce by rule 295
++	CELLSET	reduce by rule 295
++	COMMA	reduce by rule 295
++	COLON	reduce by rule 295
++	BAR	reduce by rule 295
++	DARROW	reduce by rule 295
++	TRUE	reduce by rule 295
++	FALSE	reduce by rule 295
++	WILD	reduce by rule 295
++	WHERE	reduce by rule 295
++	OP	reduce by rule 295
++	ALWAYS	reduce by rule 295
++	NEVER	reduce by rule 295
++	EXCEPTION	reduce by rule 295
++	ID	reduce by rule 295
++	SYMBOL	reduce by rule 295
++	WORD	reduce by rule 295
++	INT	reduce by rule 295
++	INTINF	reduce by rule 295
++	REAL	reduce by rule 295
++	STRING	reduce by rule 295
++	CHAR	reduce by rule 295
++
++
++	.	error
++
++
++state 327:
++
++	pipelineclauses : pipelineclause BAR pipelineclauses .  (reduce by rule 43)
++
++	ARCHITECTURE	reduce by rule 43
++	END	reduce by rule 43
++	LOCAL	reduce by rule 43
++	IN	reduce by rule 43
++	DATATYPE	reduce by rule 43
++	TYPE	reduce by rule 43
++	AND	reduce by rule 43
++	RPAREN	reduce by rule 43
++	SEMICOLON	reduce by rule 43
++	STORAGE	reduce by rule 43
++	LOCATIONS	reduce by rule 43
++	STRUCTURE	reduce by rule 43
++	FUNCTOR	reduce by rule 43
++	SIGNATURE	reduce by rule 43
++	SHARING	reduce by rule 43
++	INSTRUCTION	reduce by rule 43
++	VLIW	reduce by rule 43
++	SUPERSCALAR	reduce by rule 43
++	FUN	reduce by rule 43
++	VAL	reduce by rule 43
++	INCLUDE	reduce by rule 43
++	OPEN	reduce by rule 43
++	LITTLE	reduce by rule 43
++	BIG	reduce by rule 43
++	PIPELINE	reduce by rule 43
++	LOWERCASE	reduce by rule 43
++	UPPERCASE	reduce by rule 43
++	VERBATIM	reduce by rule 43
++	RTL	reduce by rule 43
++	NONFIX	reduce by rule 43
++	INFIX	reduce by rule 43
++	INFIXR	reduce by rule 43
++	DEBUG	reduce by rule 43
++	RESOURCE	reduce by rule 43
++	CPU	reduce by rule 43
++	LATENCY	reduce by rule 43
++	EXCEPTION	reduce by rule 43
++	EOF	reduce by rule 43
++
++
++	.	error
++
++
++state 328:
++
++	pipelinebinds : pipelinebind AND pipelinebinds .  (reduce by rule 40)
++
++	ARCHITECTURE	reduce by rule 40
++	END	reduce by rule 40
++	LOCAL	reduce by rule 40
++	IN	reduce by rule 40
++	DATATYPE	reduce by rule 40
++	TYPE	reduce by rule 40
++	RPAREN	reduce by rule 40
++	SEMICOLON	reduce by rule 40
++	STORAGE	reduce by rule 40
++	LOCATIONS	reduce by rule 40
++	STRUCTURE	reduce by rule 40
++	FUNCTOR	reduce by rule 40
++	SIGNATURE	reduce by rule 40
++	SHARING	reduce by rule 40
++	INSTRUCTION	reduce by rule 40
++	VLIW	reduce by rule 40
++	SUPERSCALAR	reduce by rule 40
++	FUN	reduce by rule 40
++	VAL	reduce by rule 40
++	INCLUDE	reduce by rule 40
++	OPEN	reduce by rule 40
++	LITTLE	reduce by rule 40
++	BIG	reduce by rule 40
++	PIPELINE	reduce by rule 40
++	LOWERCASE	reduce by rule 40
++	UPPERCASE	reduce by rule 40
++	VERBATIM	reduce by rule 40
++	RTL	reduce by rule 40
++	NONFIX	reduce by rule 40
++	INFIX	reduce by rule 40
++	INFIXR	reduce by rule 40
++	DEBUG	reduce by rule 40
++	RESOURCE	reduce by rule 40
++	CPU	reduce by rule 40
++	LATENCY	reduce by rule 40
++	EXCEPTION	reduce by rule 40
++	EOF	reduce by rule 40
++
++
++	.	error
++
++
++state 329:
++
++	pipelineclause : id pat EQ . LBRACKET cycles0 RBRACKET 
++
++	LBRACKET	shift 454
++
++
++	.	error
++
++
++state 330:
++
++	sigexp : sigexp WHERE sigsubs .  (reduce by rule 92)
++
++	ARCHITECTURE	reduce by rule 92
++	END	reduce by rule 92
++	LOCAL	reduce by rule 92
++	IN	reduce by rule 92
++	DATATYPE	reduce by rule 92
++	TYPE	reduce by rule 92
++	EQ	reduce by rule 92
++	RPAREN	reduce by rule 92
++	SEMICOLON	reduce by rule 92
++	STORAGE	reduce by rule 92
++	LOCATIONS	reduce by rule 92
++	STRUCTURE	reduce by rule 92
++	FUNCTOR	reduce by rule 92
++	SIGNATURE	reduce by rule 92
++	WHERE	reduce by rule 92
++	SHARING	reduce by rule 92
++	INSTRUCTION	reduce by rule 92
++	VLIW	reduce by rule 92
++	SUPERSCALAR	reduce by rule 92
++	FUN	reduce by rule 92
++	VAL	reduce by rule 92
++	INCLUDE	reduce by rule 92
++	OPEN	reduce by rule 92
++	LITTLE	reduce by rule 92
++	BIG	reduce by rule 92
++	PIPELINE	reduce by rule 92
++	LOWERCASE	reduce by rule 92
++	UPPERCASE	reduce by rule 92
++	VERBATIM	reduce by rule 92
++	RTL	reduce by rule 92
++	NONFIX	reduce by rule 92
++	INFIX	reduce by rule 92
++	INFIXR	reduce by rule 92
++	DEBUG	reduce by rule 92
++	RESOURCE	reduce by rule 92
++	CPU	reduce by rule 92
++	LATENCY	reduce by rule 92
++	EXCEPTION	reduce by rule 92
++	EOF	reduce by rule 92
++
++
++	.	error
++
++
++state 331:
++
++	sigsubs : sigsub .  (reduce by rule 95)
++	sigsubs : sigsub . AND sigsubs 
++
++	ARCHITECTURE	reduce by rule 95
++	END	reduce by rule 95
++	LOCAL	reduce by rule 95
++	IN	reduce by rule 95
++	DATATYPE	reduce by rule 95
++	TYPE	reduce by rule 95
++	EQ	reduce by rule 95
++	AND	shift 455
++	RPAREN	reduce by rule 95
++	SEMICOLON	reduce by rule 95
++	STORAGE	reduce by rule 95
++	LOCATIONS	reduce by rule 95
++	STRUCTURE	reduce by rule 95
++	FUNCTOR	reduce by rule 95
++	SIGNATURE	reduce by rule 95
++	WHERE	reduce by rule 95
++	SHARING	reduce by rule 95
++	INSTRUCTION	reduce by rule 95
++	VLIW	reduce by rule 95
++	SUPERSCALAR	reduce by rule 95
++	FUN	reduce by rule 95
++	VAL	reduce by rule 95
++	INCLUDE	reduce by rule 95
++	OPEN	reduce by rule 95
++	LITTLE	reduce by rule 95
++	BIG	reduce by rule 95
++	PIPELINE	reduce by rule 95
++	LOWERCASE	reduce by rule 95
++	UPPERCASE	reduce by rule 95
++	VERBATIM	reduce by rule 95
++	RTL	reduce by rule 95
++	NONFIX	reduce by rule 95
++	INFIX	reduce by rule 95
++	INFIXR	reduce by rule 95
++	DEBUG	reduce by rule 95
++	RESOURCE	reduce by rule 95
++	CPU	reduce by rule 95
++	LATENCY	reduce by rule 95
++	EXCEPTION	reduce by rule 95
++	EOF	reduce by rule 95
++
++
++	.	error
++
++
++state 332:
++
++	sigsub : ident . EQ structexp 
++
++	EQ	shift 456
++
++
++	.	error
++
++
++state 333:
++
++	sigsub : TYPE . ident EQ ty 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 457
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 334:
++
++	sigexp : SIG decls END .  (reduce by rule 91)
++
++	ARCHITECTURE	reduce by rule 91
++	END	reduce by rule 91
++	LOCAL	reduce by rule 91
++	IN	reduce by rule 91
++	DATATYPE	reduce by rule 91
++	TYPE	reduce by rule 91
++	EQ	reduce by rule 91
++	RPAREN	reduce by rule 91
++	SEMICOLON	reduce by rule 91
++	STORAGE	reduce by rule 91
++	LOCATIONS	reduce by rule 91
++	STRUCTURE	reduce by rule 91
++	FUNCTOR	reduce by rule 91
++	SIGNATURE	reduce by rule 91
++	WHERE	reduce by rule 91
++	SHARING	reduce by rule 91
++	INSTRUCTION	reduce by rule 91
++	VLIW	reduce by rule 91
++	SUPERSCALAR	reduce by rule 91
++	FUN	reduce by rule 91
++	VAL	reduce by rule 91
++	INCLUDE	reduce by rule 91
++	OPEN	reduce by rule 91
++	LITTLE	reduce by rule 91
++	BIG	reduce by rule 91
++	PIPELINE	reduce by rule 91
++	LOWERCASE	reduce by rule 91
++	UPPERCASE	reduce by rule 91
++	VERBATIM	reduce by rule 91
++	RTL	reduce by rule 91
++	NONFIX	reduce by rule 91
++	INFIX	reduce by rule 91
++	INFIXR	reduce by rule 91
++	DEBUG	reduce by rule 91
++	RESOURCE	reduce by rule 91
++	CPU	reduce by rule 91
++	LATENCY	reduce by rule 91
++	EXCEPTION	reduce by rule 91
++	EOF	reduce by rule 91
++
++
++	.	error
++
++
++state 335:
++
++	valbinds : valbind AND valbinds .  (reduce by rule 232)
++
++	ARCHITECTURE	reduce by rule 232
++	END	reduce by rule 232
++	LOCAL	reduce by rule 232
++	IN	reduce by rule 232
++	DATATYPE	reduce by rule 232
++	TYPE	reduce by rule 232
++	RPAREN	reduce by rule 232
++	SEMICOLON	reduce by rule 232
++	STORAGE	reduce by rule 232
++	LOCATIONS	reduce by rule 232
++	STRUCTURE	reduce by rule 232
++	FUNCTOR	reduce by rule 232
++	SIGNATURE	reduce by rule 232
++	SHARING	reduce by rule 232
++	INSTRUCTION	reduce by rule 232
++	VLIW	reduce by rule 232
++	SUPERSCALAR	reduce by rule 232
++	FUN	reduce by rule 232
++	VAL	reduce by rule 232
++	INCLUDE	reduce by rule 232
++	OPEN	reduce by rule 232
++	LITTLE	reduce by rule 232
++	BIG	reduce by rule 232
++	PIPELINE	reduce by rule 232
++	LOWERCASE	reduce by rule 232
++	UPPERCASE	reduce by rule 232
++	VERBATIM	reduce by rule 232
++	RTL	reduce by rule 232
++	NONFIX	reduce by rule 232
++	INFIX	reduce by rule 232
++	INFIXR	reduce by rule 232
++	DEBUG	reduce by rule 232
++	RESOURCE	reduce by rule 232
++	CPU	reduce by rule 232
++	LATENCY	reduce by rule 232
++	EXCEPTION	reduce by rule 232
++	EOF	reduce by rule 232
++
++
++	.	error
++
++
++state 336:
++
++	typedexp : typedexp . COLON ty 
++	valbind : pat EQ typedexp .  (reduce by rule 233)
++
++	ARCHITECTURE	reduce by rule 233
++	END	reduce by rule 233
++	LOCAL	reduce by rule 233
++	IN	reduce by rule 233
++	DATATYPE	reduce by rule 233
++	TYPE	reduce by rule 233
++	AND	reduce by rule 233
++	RPAREN	reduce by rule 233
++	SEMICOLON	reduce by rule 233
++	STORAGE	reduce by rule 233
++	LOCATIONS	reduce by rule 233
++	COLON	shift 458
++	STRUCTURE	reduce by rule 233
++	FUNCTOR	reduce by rule 233
++	SIGNATURE	reduce by rule 233
++	SHARING	reduce by rule 233
++	INSTRUCTION	reduce by rule 233
++	VLIW	reduce by rule 233
++	SUPERSCALAR	reduce by rule 233
++	FUN	reduce by rule 233
++	VAL	reduce by rule 233
++	INCLUDE	reduce by rule 233
++	OPEN	reduce by rule 233
++	LITTLE	reduce by rule 233
++	BIG	reduce by rule 233
++	PIPELINE	reduce by rule 233
++	LOWERCASE	reduce by rule 233
++	UPPERCASE	reduce by rule 233
++	VERBATIM	reduce by rule 233
++	RTL	reduce by rule 233
++	NONFIX	reduce by rule 233
++	INFIX	reduce by rule 233
++	INFIXR	reduce by rule 233
++	DEBUG	reduce by rule 233
++	RESOURCE	reduce by rule 233
++	CPU	reduce by rule 233
++	LATENCY	reduce by rule 233
++	EXCEPTION	reduce by rule 233
++	EOF	reduce by rule 233
++
++
++	.	error
++
++
++state 337:
++
++	exp : exp . HANDLE clauses 
++	typedexp : exp .  (reduce by rule 280)
++
++	ARCHITECTURE	reduce by rule 280
++	END	reduce by rule 280
++	LOCAL	reduce by rule 280
++	IN	reduce by rule 280
++	OF	reduce by rule 280
++	DATATYPE	reduce by rule 280
++	TYPE	reduce by rule 280
++	AND	reduce by rule 280
++	RPAREN	reduce by rule 280
++	RBRACKET	reduce by rule 280
++	RBRACE	reduce by rule 280
++	SEMICOLON	reduce by rule 280
++	STORAGE	reduce by rule 280
++	LOCATIONS	reduce by rule 280
++	COMMA	reduce by rule 280
++	COLON	reduce by rule 280
++	BAR	reduce by rule 280
++	DARROW	reduce by rule 280
++	THEN	reduce by rule 280
++	ELSE	reduce by rule 280
++	HANDLE	shift 402
++	STRUCTURE	reduce by rule 280
++	FUNCTOR	reduce by rule 280
++	SIGNATURE	reduce by rule 280
++	SHARING	reduce by rule 280
++	INSTRUCTION	reduce by rule 280
++	VLIW	reduce by rule 280
++	SUPERSCALAR	reduce by rule 280
++	FUN	reduce by rule 280
++	VAL	reduce by rule 280
++	INCLUDE	reduce by rule 280
++	OPEN	reduce by rule 280
++	LITTLE	reduce by rule 280
++	BIG	reduce by rule 280
++	PIPELINE	reduce by rule 280
++	LOWERCASE	reduce by rule 280
++	UPPERCASE	reduce by rule 280
++	VERBATIM	reduce by rule 280
++	RTL	reduce by rule 280
++	NONFIX	reduce by rule 280
++	INFIX	reduce by rule 280
++	INFIXR	reduce by rule 280
++	DEBUG	reduce by rule 280
++	RESOURCE	reduce by rule 280
++	CPU	reduce by rule 280
++	LATENCY	reduce by rule 280
++	EXCEPTION	reduce by rule 280
++	EOF	reduce by rule 280
++
++
++	.	error
++
++
++state 338:
++
++	mymldecl : VAL syms COLON ty .  (reduce by rule 66)
++	ty : ty . ARROW ty 
++
++	ARCHITECTURE	reduce by rule 66
++	END	reduce by rule 66
++	LOCAL	reduce by rule 66
++	IN	reduce by rule 66
++	DATATYPE	reduce by rule 66
++	TYPE	reduce by rule 66
++	RPAREN	reduce by rule 66
++	SEMICOLON	reduce by rule 66
++	STORAGE	reduce by rule 66
++	LOCATIONS	reduce by rule 66
++	ARROW	shift 388
++	STRUCTURE	reduce by rule 66
++	FUNCTOR	reduce by rule 66
++	SIGNATURE	reduce by rule 66
++	SHARING	reduce by rule 66
++	INSTRUCTION	reduce by rule 66
++	VLIW	reduce by rule 66
++	SUPERSCALAR	reduce by rule 66
++	FUN	reduce by rule 66
++	VAL	reduce by rule 66
++	INCLUDE	reduce by rule 66
++	OPEN	reduce by rule 66
++	LITTLE	reduce by rule 66
++	BIG	reduce by rule 66
++	PIPELINE	reduce by rule 66
++	LOWERCASE	reduce by rule 66
++	UPPERCASE	reduce by rule 66
++	VERBATIM	reduce by rule 66
++	RTL	reduce by rule 66
++	NONFIX	reduce by rule 66
++	INFIX	reduce by rule 66
++	INFIXR	reduce by rule 66
++	DEBUG	reduce by rule 66
++	RESOURCE	reduce by rule 66
++	CPU	reduce by rule 66
++	LATENCY	reduce by rule 66
++	EXCEPTION	reduce by rule 66
++	EOF	reduce by rule 66
++
++
++	.	error
++
++
++state 339:
++
++	pat : id AS pat .  (reduce by rule 316)
++
++	EQ	reduce by rule 316
++	AND	reduce by rule 316
++	RPAREN	reduce by rule 316
++	RBRACKET	reduce by rule 316
++	RBRACE	reduce by rule 316
++	COMMA	reduce by rule 316
++	COLON	reduce by rule 316
++	BAR	reduce by rule 316
++	DARROW	reduce by rule 316
++	WHERE	reduce by rule 316
++	EXCEPTION	reduce by rule 316
++
++
++	.	error
++
++
++state 340:
++
++	funbinds : funbind AND funbinds .  (reduce by rule 229)
++
++	ARCHITECTURE	reduce by rule 229
++	END	reduce by rule 229
++	LOCAL	reduce by rule 229
++	IN	reduce by rule 229
++	DATATYPE	reduce by rule 229
++	TYPE	reduce by rule 229
++	RPAREN	reduce by rule 229
++	SEMICOLON	reduce by rule 229
++	STORAGE	reduce by rule 229
++	LOCATIONS	reduce by rule 229
++	STRUCTURE	reduce by rule 229
++	FUNCTOR	reduce by rule 229
++	SIGNATURE	reduce by rule 229
++	SHARING	reduce by rule 229
++	INSTRUCTION	reduce by rule 229
++	VLIW	reduce by rule 229
++	SUPERSCALAR	reduce by rule 229
++	FUN	reduce by rule 229
++	VAL	reduce by rule 229
++	INCLUDE	reduce by rule 229
++	OPEN	reduce by rule 229
++	LITTLE	reduce by rule 229
++	BIG	reduce by rule 229
++	PIPELINE	reduce by rule 229
++	LOWERCASE	reduce by rule 229
++	UPPERCASE	reduce by rule 229
++	VERBATIM	reduce by rule 229
++	RTL	reduce by rule 229
++	NONFIX	reduce by rule 229
++	INFIX	reduce by rule 229
++	INFIXR	reduce by rule 229
++	DEBUG	reduce by rule 229
++	RESOURCE	reduce by rule 229
++	CPU	reduce by rule 229
++	LATENCY	reduce by rule 229
++	EXCEPTION	reduce by rule 229
++	EOF	reduce by rule 229
++
++
++	.	error
++
++
++state 341:
++
++	funclauses : funclause BAR funclauses .  (reduce by rule 349)
++
++	ARCHITECTURE	reduce by rule 349
++	END	reduce by rule 349
++	LOCAL	reduce by rule 349
++	IN	reduce by rule 349
++	DATATYPE	reduce by rule 349
++	TYPE	reduce by rule 349
++	AND	reduce by rule 349
++	RPAREN	reduce by rule 349
++	SEMICOLON	reduce by rule 349
++	STORAGE	reduce by rule 349
++	LOCATIONS	reduce by rule 349
++	STRUCTURE	reduce by rule 349
++	FUNCTOR	reduce by rule 349
++	SIGNATURE	reduce by rule 349
++	SHARING	reduce by rule 349
++	INSTRUCTION	reduce by rule 349
++	VLIW	reduce by rule 349
++	SUPERSCALAR	reduce by rule 349
++	FUN	reduce by rule 349
++	VAL	reduce by rule 349
++	INCLUDE	reduce by rule 349
++	OPEN	reduce by rule 349
++	LITTLE	reduce by rule 349
++	BIG	reduce by rule 349
++	PIPELINE	reduce by rule 349
++	LOWERCASE	reduce by rule 349
++	UPPERCASE	reduce by rule 349
++	VERBATIM	reduce by rule 349
++	RTL	reduce by rule 349
++	NONFIX	reduce by rule 349
++	INFIX	reduce by rule 349
++	INFIXR	reduce by rule 349
++	DEBUG	reduce by rule 349
++	RESOURCE	reduce by rule 349
++	CPU	reduce by rule 349
++	LATENCY	reduce by rule 349
++	EXCEPTION	reduce by rule 349
++	EOF	reduce by rule 349
++
++
++	.	error
++
++
++state 342:
++
++	funclause : apppat funguard return_ty . cont EQ typedexp 
++
++	EQ	reduce by rule 337
++	EXCEPTION	shift 460
++
++	cont	goto 459
++
++	.	error
++
++
++state 343:
++
++	return_ty : COLON . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 461
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 344:
++
++	funguard : WHERE LPAREN . typedexp RPAREN 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 337
++	typedexp	goto 462
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 345:
++
++	consbinds : consbind BAR consbinds .  (reduce by rule 143)
++
++	ARCHITECTURE	reduce by rule 143
++	END	reduce by rule 143
++	LOCAL	reduce by rule 143
++	IN	reduce by rule 143
++	DATATYPE	reduce by rule 143
++	TYPE	reduce by rule 143
++	AND	reduce by rule 143
++	RPAREN	reduce by rule 143
++	SEMICOLON	reduce by rule 143
++	STORAGE	reduce by rule 143
++	LOCATIONS	reduce by rule 143
++	STRUCTURE	reduce by rule 143
++	FUNCTOR	reduce by rule 143
++	SIGNATURE	reduce by rule 143
++	SHARING	reduce by rule 143
++	INSTRUCTION	reduce by rule 143
++	VLIW	reduce by rule 143
++	SUPERSCALAR	reduce by rule 143
++	WITHTYPE	reduce by rule 143
++	FUN	reduce by rule 143
++	VAL	reduce by rule 143
++	INCLUDE	reduce by rule 143
++	OPEN	reduce by rule 143
++	LITTLE	reduce by rule 143
++	BIG	reduce by rule 143
++	PIPELINE	reduce by rule 143
++	LOWERCASE	reduce by rule 143
++	UPPERCASE	reduce by rule 143
++	VERBATIM	reduce by rule 143
++	RTL	reduce by rule 143
++	NONFIX	reduce by rule 143
++	INFIX	reduce by rule 143
++	INFIXR	reduce by rule 143
++	DEBUG	reduce by rule 143
++	RESOURCE	reduce by rule 143
++	CPU	reduce by rule 143
++	LATENCY	reduce by rule 143
++	EXCEPTION	reduce by rule 143
++	EOF	reduce by rule 143
++
++
++	.	error
++
++
++state 346:
++
++	consassembly : asm_strings .  (reduce by rule 184)
++
++	ARCHITECTURE	reduce by rule 184
++	END	reduce by rule 184
++	LOCAL	reduce by rule 184
++	IN	reduce by rule 184
++	DATATYPE	reduce by rule 184
++	TYPE	reduce by rule 184
++	AND	reduce by rule 184
++	LPAREN	reduce by rule 184
++	RPAREN	reduce by rule 184
++	SEMICOLON	reduce by rule 184
++	CELLSET	reduce by rule 184
++	STORAGE	reduce by rule 184
++	LOCATIONS	reduce by rule 184
++	BAR	reduce by rule 184
++	STRUCTURE	reduce by rule 184
++	FUNCTOR	reduce by rule 184
++	SIGNATURE	reduce by rule 184
++	SHARING	reduce by rule 184
++	INSTRUCTION	reduce by rule 184
++	VLIW	reduce by rule 184
++	SUPERSCALAR	reduce by rule 184
++	WITHTYPE	reduce by rule 184
++	FUN	reduce by rule 184
++	VAL	reduce by rule 184
++	INCLUDE	reduce by rule 184
++	OPEN	reduce by rule 184
++	LITTLE	reduce by rule 184
++	BIG	reduce by rule 184
++	PIPELINE	reduce by rule 184
++	LOWERCASE	reduce by rule 184
++	UPPERCASE	reduce by rule 184
++	VERBATIM	reduce by rule 184
++	RTL	reduce by rule 184
++	SPAN	reduce by rule 184
++	DELAYSLOT	reduce by rule 184
++	NONFIX	reduce by rule 184
++	INFIX	reduce by rule 184
++	INFIXR	reduce by rule 184
++	DEBUG	reduce by rule 184
++	MC_COLON	reduce by rule 184
++	RTL_COLON	reduce by rule 184
++	DELAYSLOT_COLON	reduce by rule 184
++	NULLIFIED_COLON	reduce by rule 184
++	PADDING_COLON	reduce by rule 184
++	RESOURCE	reduce by rule 184
++	CPU	reduce by rule 184
++	LATENCY	reduce by rule 184
++	EXCEPTION	reduce by rule 184
++	ID	reduce by rule 184
++	SYMBOL	reduce by rule 184
++	WORD	reduce by rule 184
++	INT	reduce by rule 184
++	EOF	reduce by rule 184
++
++
++	.	error
++
++
++state 347:
++
++	consbind : sym of_ty consassembly . consencoding rtl nop nullified delayslot delayslotcandidate sdi latency pipeline 
++
++	ARCHITECTURE	reduce by rule 176
++	END	reduce by rule 176
++	LOCAL	reduce by rule 176
++	IN	reduce by rule 176
++	DATATYPE	reduce by rule 176
++	TYPE	reduce by rule 176
++	AND	reduce by rule 176
++	LPAREN	shift 469
++	RPAREN	reduce by rule 176
++	SEMICOLON	reduce by rule 176
++	CELLSET	shift 50
++	STORAGE	reduce by rule 176
++	LOCATIONS	reduce by rule 176
++	BAR	reduce by rule 176
++	STRUCTURE	reduce by rule 176
++	FUNCTOR	reduce by rule 176
++	SIGNATURE	reduce by rule 176
++	SHARING	reduce by rule 176
++	INSTRUCTION	reduce by rule 176
++	VLIW	reduce by rule 176
++	SUPERSCALAR	reduce by rule 176
++	WITHTYPE	reduce by rule 176
++	FUN	reduce by rule 176
++	VAL	reduce by rule 176
++	INCLUDE	reduce by rule 176
++	OPEN	reduce by rule 176
++	LITTLE	reduce by rule 176
++	BIG	reduce by rule 176
++	PIPELINE	reduce by rule 176
++	LOWERCASE	reduce by rule 176
++	UPPERCASE	reduce by rule 176
++	VERBATIM	reduce by rule 176
++	RTL	reduce by rule 176
++	SPAN	reduce by rule 176
++	DELAYSLOT	reduce by rule 176
++	NONFIX	reduce by rule 176
++	INFIX	reduce by rule 176
++	INFIXR	reduce by rule 176
++	DEBUG	reduce by rule 176
++	MC_COLON	shift 468
++	RTL_COLON	reduce by rule 176
++	DELAYSLOT_COLON	reduce by rule 176
++	NULLIFIED_COLON	reduce by rule 176
++	PADDING_COLON	reduce by rule 176
++	RESOURCE	reduce by rule 176
++	CPU	reduce by rule 176
++	LATENCY	reduce by rule 176
++	EXCEPTION	reduce by rule 176
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	EOF	reduce by rule 176
++
++	id	goto 467
++	word	goto 466
++	unsignedint	goto 465
++	int	goto 464
++	consencoding	goto 463
++
++	.	error
++
++
++state 348:
++
++	consassembly : string .  (reduce by rule 183)
++
++	ARCHITECTURE	reduce by rule 183
++	END	reduce by rule 183
++	LOCAL	reduce by rule 183
++	IN	reduce by rule 183
++	DATATYPE	reduce by rule 183
++	TYPE	reduce by rule 183
++	AND	reduce by rule 183
++	LPAREN	reduce by rule 183
++	RPAREN	reduce by rule 183
++	SEMICOLON	reduce by rule 183
++	CELLSET	reduce by rule 183
++	STORAGE	reduce by rule 183
++	LOCATIONS	reduce by rule 183
++	BAR	reduce by rule 183
++	STRUCTURE	reduce by rule 183
++	FUNCTOR	reduce by rule 183
++	SIGNATURE	reduce by rule 183
++	SHARING	reduce by rule 183
++	INSTRUCTION	reduce by rule 183
++	VLIW	reduce by rule 183
++	SUPERSCALAR	reduce by rule 183
++	WITHTYPE	reduce by rule 183
++	FUN	reduce by rule 183
++	VAL	reduce by rule 183
++	INCLUDE	reduce by rule 183
++	OPEN	reduce by rule 183
++	LITTLE	reduce by rule 183
++	BIG	reduce by rule 183
++	PIPELINE	reduce by rule 183
++	LOWERCASE	reduce by rule 183
++	UPPERCASE	reduce by rule 183
++	VERBATIM	reduce by rule 183
++	RTL	reduce by rule 183
++	SPAN	reduce by rule 183
++	DELAYSLOT	reduce by rule 183
++	NONFIX	reduce by rule 183
++	INFIX	reduce by rule 183
++	INFIXR	reduce by rule 183
++	DEBUG	reduce by rule 183
++	MC_COLON	reduce by rule 183
++	RTL_COLON	reduce by rule 183
++	DELAYSLOT_COLON	reduce by rule 183
++	NULLIFIED_COLON	reduce by rule 183
++	PADDING_COLON	reduce by rule 183
++	RESOURCE	reduce by rule 183
++	CPU	reduce by rule 183
++	LATENCY	reduce by rule 183
++	EXCEPTION	reduce by rule 183
++	ID	reduce by rule 183
++	SYMBOL	reduce by rule 183
++	WORD	reduce by rule 183
++	INT	reduce by rule 183
++	EOF	reduce by rule 183
++
++
++	.	error
++
++
++state 349:
++
++	consassembly : ASM_COLON . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 470
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 350:
++
++	of_ty : OF ty .  (reduce by rule 152)
++	ty : ty . ARROW ty 
++
++	ARCHITECTURE	reduce by rule 152
++	END	reduce by rule 152
++	LOCAL	reduce by rule 152
++	IN	reduce by rule 152
++	DATATYPE	reduce by rule 152
++	TYPE	reduce by rule 152
++	AND	reduce by rule 152
++	LPAREN	reduce by rule 152
++	RPAREN	reduce by rule 152
++	SEMICOLON	reduce by rule 152
++	LDQUOTE	reduce by rule 152
++	CELLSET	reduce by rule 152
++	STORAGE	reduce by rule 152
++	LOCATIONS	reduce by rule 152
++	BAR	reduce by rule 152
++	ARROW	shift 388
++	STRUCTURE	reduce by rule 152
++	FUNCTOR	reduce by rule 152
++	SIGNATURE	reduce by rule 152
++	SHARING	reduce by rule 152
++	INSTRUCTION	reduce by rule 152
++	VLIW	reduce by rule 152
++	SUPERSCALAR	reduce by rule 152
++	WITHTYPE	reduce by rule 152
++	FUN	reduce by rule 152
++	VAL	reduce by rule 152
++	INCLUDE	reduce by rule 152
++	OPEN	reduce by rule 152
++	LITTLE	reduce by rule 152
++	BIG	reduce by rule 152
++	PIPELINE	reduce by rule 152
++	LOWERCASE	reduce by rule 152
++	UPPERCASE	reduce by rule 152
++	VERBATIM	reduce by rule 152
++	RTL	reduce by rule 152
++	SPAN	reduce by rule 152
++	DELAYSLOT	reduce by rule 152
++	NONFIX	reduce by rule 152
++	INFIX	reduce by rule 152
++	INFIXR	reduce by rule 152
++	DEBUG	reduce by rule 152
++	ASM_COLON	reduce by rule 152
++	MC_COLON	reduce by rule 152
++	RTL_COLON	reduce by rule 152
++	DELAYSLOT_COLON	reduce by rule 152
++	NULLIFIED_COLON	reduce by rule 152
++	PADDING_COLON	reduce by rule 152
++	RESOURCE	reduce by rule 152
++	CPU	reduce by rule 152
++	LATENCY	reduce by rule 152
++	EXCEPTION	reduce by rule 152
++	ID	reduce by rule 152
++	SYMBOL	reduce by rule 152
++	WORD	reduce by rule 152
++	INT	reduce by rule 152
++	STRING	reduce by rule 152
++	EOF	reduce by rule 152
++
++
++	.	error
++
++
++state 351:
++
++	formatbinds : formatbind BAR . formatbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 225
++	formatbind	goto 223
++	formatbinds	goto 471
++
++	.	error
++
++
++state 352:
++
++	mymddecl : INSTRUCTION FORMATS int BITS . formatbinds 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 225
++	formatbind	goto 223
++	formatbinds	goto 472
++
++	.	error
++
++
++state 353:
++
++	formatbind : id opt_of . LBRACE fields RBRACE opt_exp 
++
++	LBRACE	shift 473
++
++
++	.	error
++
++
++state 354:
++
++	opt_of : OF .  (reduce by rule 193)
++
++	LBRACE	reduce by rule 193
++
++
++	.	error
++
++
++state 355:
++
++	sharingdecls : sharingdecl AND sharingdecls .  (reduce by rule 100)
++
++	ARCHITECTURE	reduce by rule 100
++	END	reduce by rule 100
++	LOCAL	reduce by rule 100
++	IN	reduce by rule 100
++	DATATYPE	reduce by rule 100
++	TYPE	reduce by rule 100
++	RPAREN	reduce by rule 100
++	SEMICOLON	reduce by rule 100
++	STORAGE	reduce by rule 100
++	LOCATIONS	reduce by rule 100
++	STRUCTURE	reduce by rule 100
++	FUNCTOR	reduce by rule 100
++	SIGNATURE	reduce by rule 100
++	SHARING	reduce by rule 100
++	INSTRUCTION	reduce by rule 100
++	VLIW	reduce by rule 100
++	SUPERSCALAR	reduce by rule 100
++	FUN	reduce by rule 100
++	VAL	reduce by rule 100
++	INCLUDE	reduce by rule 100
++	OPEN	reduce by rule 100
++	LITTLE	reduce by rule 100
++	BIG	reduce by rule 100
++	PIPELINE	reduce by rule 100
++	LOWERCASE	reduce by rule 100
++	UPPERCASE	reduce by rule 100
++	VERBATIM	reduce by rule 100
++	RTL	reduce by rule 100
++	NONFIX	reduce by rule 100
++	INFIX	reduce by rule 100
++	INFIXR	reduce by rule 100
++	DEBUG	reduce by rule 100
++	RESOURCE	reduce by rule 100
++	CPU	reduce by rule 100
++	LATENCY	reduce by rule 100
++	EXCEPTION	reduce by rule 100
++	EOF	reduce by rule 100
++
++
++	.	error
++
++
++state 356:
++
++	sharelist : ident EQ sharelist .  (reduce by rule 104)
++
++	ARCHITECTURE	reduce by rule 104
++	END	reduce by rule 104
++	LOCAL	reduce by rule 104
++	IN	reduce by rule 104
++	DATATYPE	reduce by rule 104
++	TYPE	reduce by rule 104
++	AND	reduce by rule 104
++	RPAREN	reduce by rule 104
++	SEMICOLON	reduce by rule 104
++	STORAGE	reduce by rule 104
++	LOCATIONS	reduce by rule 104
++	STRUCTURE	reduce by rule 104
++	FUNCTOR	reduce by rule 104
++	SIGNATURE	reduce by rule 104
++	SHARING	reduce by rule 104
++	INSTRUCTION	reduce by rule 104
++	VLIW	reduce by rule 104
++	SUPERSCALAR	reduce by rule 104
++	FUN	reduce by rule 104
++	VAL	reduce by rule 104
++	INCLUDE	reduce by rule 104
++	OPEN	reduce by rule 104
++	LITTLE	reduce by rule 104
++	BIG	reduce by rule 104
++	PIPELINE	reduce by rule 104
++	LOWERCASE	reduce by rule 104
++	UPPERCASE	reduce by rule 104
++	VERBATIM	reduce by rule 104
++	RTL	reduce by rule 104
++	NONFIX	reduce by rule 104
++	INFIX	reduce by rule 104
++	INFIXR	reduce by rule 104
++	DEBUG	reduce by rule 104
++	RESOURCE	reduce by rule 104
++	CPU	reduce by rule 104
++	LATENCY	reduce by rule 104
++	EXCEPTION	reduce by rule 104
++	EOF	reduce by rule 104
++
++
++	.	error
++
++
++state 357:
++
++	sharelist : ident . EQ ident 
++	sharelist : ident EQ ident .  (reduce by rule 103)
++	sharelist : ident . EQ sharelist 
++
++	ARCHITECTURE	reduce by rule 103
++	END	reduce by rule 103
++	LOCAL	reduce by rule 103
++	IN	reduce by rule 103
++	DATATYPE	reduce by rule 103
++	TYPE	reduce by rule 103
++	EQ	shift 227
++	AND	reduce by rule 103
++	RPAREN	reduce by rule 103
++	SEMICOLON	reduce by rule 103
++	STORAGE	reduce by rule 103
++	LOCATIONS	reduce by rule 103
++	STRUCTURE	reduce by rule 103
++	FUNCTOR	reduce by rule 103
++	SIGNATURE	reduce by rule 103
++	SHARING	reduce by rule 103
++	INSTRUCTION	reduce by rule 103
++	VLIW	reduce by rule 103
++	SUPERSCALAR	reduce by rule 103
++	FUN	reduce by rule 103
++	VAL	reduce by rule 103
++	INCLUDE	reduce by rule 103
++	OPEN	reduce by rule 103
++	LITTLE	reduce by rule 103
++	BIG	reduce by rule 103
++	PIPELINE	reduce by rule 103
++	LOWERCASE	reduce by rule 103
++	UPPERCASE	reduce by rule 103
++	VERBATIM	reduce by rule 103
++	RTL	reduce by rule 103
++	NONFIX	reduce by rule 103
++	INFIX	reduce by rule 103
++	INFIXR	reduce by rule 103
++	DEBUG	reduce by rule 103
++	RESOURCE	reduce by rule 103
++	CPU	reduce by rule 103
++	LATENCY	reduce by rule 103
++	EXCEPTION	reduce by rule 103
++	EOF	reduce by rule 103
++
++
++	.	error
++
++
++state 358:
++
++	mymldecl : SIGNATURE id EQ sigexp .  (reduce by rule 72)
++	sigexp : sigexp . WHERE sigsubs 
++
++	ARCHITECTURE	reduce by rule 72
++	END	reduce by rule 72
++	LOCAL	reduce by rule 72
++	IN	reduce by rule 72
++	DATATYPE	reduce by rule 72
++	TYPE	reduce by rule 72
++	RPAREN	reduce by rule 72
++	SEMICOLON	reduce by rule 72
++	STORAGE	reduce by rule 72
++	LOCATIONS	reduce by rule 72
++	STRUCTURE	reduce by rule 72
++	FUNCTOR	reduce by rule 72
++	SIGNATURE	reduce by rule 72
++	WHERE	shift 206
++	SHARING	reduce by rule 72
++	INSTRUCTION	reduce by rule 72
++	VLIW	reduce by rule 72
++	SUPERSCALAR	reduce by rule 72
++	FUN	reduce by rule 72
++	VAL	reduce by rule 72
++	INCLUDE	reduce by rule 72
++	OPEN	reduce by rule 72
++	LITTLE	reduce by rule 72
++	BIG	reduce by rule 72
++	PIPELINE	reduce by rule 72
++	LOWERCASE	reduce by rule 72
++	UPPERCASE	reduce by rule 72
++	VERBATIM	reduce by rule 72
++	RTL	reduce by rule 72
++	NONFIX	reduce by rule 72
++	INFIX	reduce by rule 72
++	INFIXR	reduce by rule 72
++	DEBUG	reduce by rule 72
++	RESOURCE	reduce by rule 72
++	CPU	reduce by rule 72
++	LATENCY	reduce by rule 72
++	EXCEPTION	reduce by rule 72
++	EOF	reduce by rule 72
++
++
++	.	error
++
++
++state 359:
++
++	mymldecl : FUNCTOR id LPAREN functorarg . RPAREN EQ structexp 
++	mymldecl : FUNCTOR id LPAREN functorarg . RPAREN sigcon EQ structexp 
++
++	RPAREN	shift 474
++
++
++	.	error
++
++
++state 360:
++
++	functorarg : scopeddecls .  (reduce by rule 88)
++
++	RPAREN	reduce by rule 88
++
++
++	.	error
++
++
++state 361:
++
++	functorarg : id . sigcon 
++
++	COLON	shift 476
++	COLONGREATER	shift 233
++
++	sigcon	goto 475
++
++	.	error
++
++
++state 362:
++
++	structexp : ident .  (reduce by rule 123)
++
++	ARCHITECTURE	reduce by rule 123
++	END	reduce by rule 123
++	LOCAL	reduce by rule 123
++	IN	reduce by rule 123
++	DATATYPE	reduce by rule 123
++	TYPE	reduce by rule 123
++	EQ	reduce by rule 123
++	AND	reduce by rule 123
++	LPAREN	reduce by rule 123
++	RPAREN	reduce by rule 123
++	SEMICOLON	reduce by rule 123
++	STORAGE	reduce by rule 123
++	LOCATIONS	reduce by rule 123
++	STRUCTURE	reduce by rule 123
++	FUNCTOR	reduce by rule 123
++	SIGNATURE	reduce by rule 123
++	WHERE	reduce by rule 123
++	SHARING	reduce by rule 123
++	INSTRUCTION	reduce by rule 123
++	VLIW	reduce by rule 123
++	SUPERSCALAR	reduce by rule 123
++	FUN	reduce by rule 123
++	VAL	reduce by rule 123
++	INCLUDE	reduce by rule 123
++	OPEN	reduce by rule 123
++	LITTLE	reduce by rule 123
++	BIG	reduce by rule 123
++	PIPELINE	reduce by rule 123
++	LOWERCASE	reduce by rule 123
++	UPPERCASE	reduce by rule 123
++	VERBATIM	reduce by rule 123
++	RTL	reduce by rule 123
++	NONFIX	reduce by rule 123
++	INFIX	reduce by rule 123
++	INFIXR	reduce by rule 123
++	DEBUG	reduce by rule 123
++	RESOURCE	reduce by rule 123
++	CPU	reduce by rule 123
++	LATENCY	reduce by rule 123
++	EXCEPTION	reduce by rule 123
++	EOF	reduce by rule 123
++
++
++	.	error
++
++
++state 363:
++
++	structexp : structexp . LPAREN scopeddecls RPAREN 
++	structexp : structexp . LPAREN ident RPAREN 
++	mymldecl : FUNCTOR id EQ structexp .  (reduce by rule 75)
++
++	ARCHITECTURE	reduce by rule 75
++	END	reduce by rule 75
++	LOCAL	reduce by rule 75
++	IN	reduce by rule 75
++	DATATYPE	reduce by rule 75
++	TYPE	reduce by rule 75
++	LPAREN	shift 477
++	RPAREN	reduce by rule 75
++	SEMICOLON	reduce by rule 75
++	STORAGE	reduce by rule 75
++	LOCATIONS	reduce by rule 75
++	STRUCTURE	reduce by rule 75
++	FUNCTOR	reduce by rule 75
++	SIGNATURE	reduce by rule 75
++	SHARING	reduce by rule 75
++	INSTRUCTION	reduce by rule 75
++	VLIW	reduce by rule 75
++	SUPERSCALAR	reduce by rule 75
++	FUN	reduce by rule 75
++	VAL	reduce by rule 75
++	INCLUDE	reduce by rule 75
++	OPEN	reduce by rule 75
++	LITTLE	reduce by rule 75
++	BIG	reduce by rule 75
++	PIPELINE	reduce by rule 75
++	LOWERCASE	reduce by rule 75
++	UPPERCASE	reduce by rule 75
++	VERBATIM	reduce by rule 75
++	RTL	reduce by rule 75
++	NONFIX	reduce by rule 75
++	INFIX	reduce by rule 75
++	INFIXR	reduce by rule 75
++	DEBUG	reduce by rule 75
++	RESOURCE	reduce by rule 75
++	CPU	reduce by rule 75
++	LATENCY	reduce by rule 75
++	EXCEPTION	reduce by rule 75
++	EOF	reduce by rule 75
++
++
++	.	error
++
++
++state 364:
++
++	structexp : STRUCT . scopeddecls END 
++
++	ARCHITECTURE	reduce by rule 107
++	END	reduce by rule 107
++	LOCAL	reduce by rule 107
++	DATATYPE	reduce by rule 107
++	TYPE	reduce by rule 107
++	STORAGE	reduce by rule 107
++	LOCATIONS	reduce by rule 107
++	STRUCTURE	reduce by rule 107
++	FUNCTOR	reduce by rule 107
++	SIGNATURE	reduce by rule 107
++	SHARING	reduce by rule 107
++	INSTRUCTION	reduce by rule 107
++	VLIW	reduce by rule 107
++	SUPERSCALAR	reduce by rule 107
++	FUN	reduce by rule 107
++	VAL	reduce by rule 107
++	INCLUDE	reduce by rule 107
++	OPEN	reduce by rule 107
++	LITTLE	reduce by rule 107
++	BIG	reduce by rule 107
++	PIPELINE	reduce by rule 107
++	LOWERCASE	reduce by rule 107
++	UPPERCASE	reduce by rule 107
++	VERBATIM	reduce by rule 107
++	RTL	reduce by rule 107
++	NONFIX	reduce by rule 107
++	INFIX	reduce by rule 107
++	INFIXR	reduce by rule 107
++	DEBUG	reduce by rule 107
++	RESOURCE	reduce by rule 107
++	CPU	reduce by rule 107
++	LATENCY	reduce by rule 107
++	EXCEPTION	reduce by rule 107
++
++	scopeddecls	goto 478
++	newScope	goto 164
++
++	.	error
++
++
++state 365:
++
++	mymldecl : STRUCTURE id sigcon EQ . structexp 
++
++	CELLSET	shift 50
++	STRUCT	shift 364
++	ID	shift 49
++	SYMBOL	shift 48
++
++	structexp	goto 479
++	id	goto 114
++	ident	goto 362
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 366:
++
++	sigcon : COLONGREATER sigexp .  (reduce by rule 94)
++	sigexp : sigexp . WHERE sigsubs 
++
++	EQ	reduce by rule 94
++	RPAREN	reduce by rule 94
++	WHERE	shift 206
++
++
++	.	error
++
++
++state 367:
++
++	sigcon : COLON sigexp .  (reduce by rule 93)
++	mymldecl : STRUCTURE id COLON sigexp .  (reduce by rule 71)
++	sigexp : sigexp . WHERE sigsubs 
++
++	ARCHITECTURE	reduce by rule 71
++	END	reduce by rule 71
++	LOCAL	reduce by rule 71
++	IN	reduce by rule 71
++	DATATYPE	reduce by rule 71
++	TYPE	reduce by rule 71
++	EQ	reduce by rule 93
++	RPAREN	reduce by rule 71
++	SEMICOLON	reduce by rule 71
++	STORAGE	reduce by rule 71
++	LOCATIONS	reduce by rule 71
++	STRUCTURE	reduce by rule 71
++	FUNCTOR	reduce by rule 71
++	SIGNATURE	reduce by rule 71
++	WHERE	shift 206
++	SHARING	reduce by rule 71
++	INSTRUCTION	reduce by rule 71
++	VLIW	reduce by rule 71
++	SUPERSCALAR	reduce by rule 71
++	FUN	reduce by rule 71
++	VAL	reduce by rule 71
++	INCLUDE	reduce by rule 71
++	OPEN	reduce by rule 71
++	LITTLE	reduce by rule 71
++	BIG	reduce by rule 71
++	PIPELINE	reduce by rule 71
++	LOWERCASE	reduce by rule 71
++	UPPERCASE	reduce by rule 71
++	VERBATIM	reduce by rule 71
++	RTL	reduce by rule 71
++	NONFIX	reduce by rule 71
++	INFIX	reduce by rule 71
++	INFIXR	reduce by rule 71
++	DEBUG	reduce by rule 71
++	RESOURCE	reduce by rule 71
++	CPU	reduce by rule 71
++	LATENCY	reduce by rule 71
++	EXCEPTION	reduce by rule 71
++	EOF	reduce by rule 71
++
++
++	.	error
++
++
++state 368:
++
++	structexp : structexp . LPAREN scopeddecls RPAREN 
++	structexp : structexp . LPAREN ident RPAREN 
++	mymldecl : STRUCTURE id EQ structexp .  (reduce by rule 69)
++
++	ARCHITECTURE	reduce by rule 69
++	END	reduce by rule 69
++	LOCAL	reduce by rule 69
++	IN	reduce by rule 69
++	DATATYPE	reduce by rule 69
++	TYPE	reduce by rule 69
++	LPAREN	shift 477
++	RPAREN	reduce by rule 69
++	SEMICOLON	reduce by rule 69
++	STORAGE	reduce by rule 69
++	LOCATIONS	reduce by rule 69
++	STRUCTURE	reduce by rule 69
++	FUNCTOR	reduce by rule 69
++	SIGNATURE	reduce by rule 69
++	SHARING	reduce by rule 69
++	INSTRUCTION	reduce by rule 69
++	VLIW	reduce by rule 69
++	SUPERSCALAR	reduce by rule 69
++	FUN	reduce by rule 69
++	VAL	reduce by rule 69
++	INCLUDE	reduce by rule 69
++	OPEN	reduce by rule 69
++	LITTLE	reduce by rule 69
++	BIG	reduce by rule 69
++	PIPELINE	reduce by rule 69
++	LOWERCASE	reduce by rule 69
++	UPPERCASE	reduce by rule 69
++	VERBATIM	reduce by rule 69
++	RTL	reduce by rule 69
++	NONFIX	reduce by rule 69
++	INFIX	reduce by rule 69
++	INFIXR	reduce by rule 69
++	DEBUG	reduce by rule 69
++	RESOURCE	reduce by rule 69
++	CPU	reduce by rule 69
++	LATENCY	reduce by rule 69
++	EXCEPTION	reduce by rule 69
++	EOF	reduce by rule 69
++
++
++	.	error
++
++
++state 369:
++
++	locbinds : locbind AND locbinds .  (reduce by rule 393)
++
++	ARCHITECTURE	reduce by rule 393
++	END	reduce by rule 393
++	LOCAL	reduce by rule 393
++	IN	reduce by rule 393
++	DATATYPE	reduce by rule 393
++	TYPE	reduce by rule 393
++	RPAREN	reduce by rule 393
++	SEMICOLON	reduce by rule 393
++	STORAGE	reduce by rule 393
++	LOCATIONS	reduce by rule 393
++	STRUCTURE	reduce by rule 393
++	FUNCTOR	reduce by rule 393
++	SIGNATURE	reduce by rule 393
++	SHARING	reduce by rule 393
++	INSTRUCTION	reduce by rule 393
++	VLIW	reduce by rule 393
++	SUPERSCALAR	reduce by rule 393
++	FUN	reduce by rule 393
++	VAL	reduce by rule 393
++	INCLUDE	reduce by rule 393
++	OPEN	reduce by rule 393
++	LITTLE	reduce by rule 393
++	BIG	reduce by rule 393
++	PIPELINE	reduce by rule 393
++	LOWERCASE	reduce by rule 393
++	UPPERCASE	reduce by rule 393
++	VERBATIM	reduce by rule 393
++	RTL	reduce by rule 393
++	NONFIX	reduce by rule 393
++	INFIX	reduce by rule 393
++	INFIXR	reduce by rule 393
++	DEBUG	reduce by rule 393
++	RESOURCE	reduce by rule 393
++	CPU	reduce by rule 393
++	LATENCY	reduce by rule 393
++	EXCEPTION	reduce by rule 393
++	EOF	reduce by rule 393
++
++
++	.	error
++
++
++state 370:
++
++	locbind : id pat EQ . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 480
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 371:
++
++	exp : exp . HANDLE clauses 
++	locbind : id EQ exp .  (reduce by rule 390)
++
++	ARCHITECTURE	reduce by rule 390
++	END	reduce by rule 390
++	LOCAL	reduce by rule 390
++	IN	reduce by rule 390
++	DATATYPE	reduce by rule 390
++	TYPE	reduce by rule 390
++	AND	reduce by rule 390
++	RPAREN	reduce by rule 390
++	SEMICOLON	reduce by rule 390
++	STORAGE	reduce by rule 390
++	LOCATIONS	reduce by rule 390
++	HANDLE	shift 402
++	STRUCTURE	reduce by rule 390
++	FUNCTOR	reduce by rule 390
++	SIGNATURE	reduce by rule 390
++	SHARING	reduce by rule 390
++	INSTRUCTION	reduce by rule 390
++	VLIW	reduce by rule 390
++	SUPERSCALAR	reduce by rule 390
++	FUN	reduce by rule 390
++	VAL	reduce by rule 390
++	INCLUDE	reduce by rule 390
++	OPEN	reduce by rule 390
++	LITTLE	reduce by rule 390
++	BIG	reduce by rule 390
++	PIPELINE	reduce by rule 390
++	LOWERCASE	reduce by rule 390
++	UPPERCASE	reduce by rule 390
++	VERBATIM	reduce by rule 390
++	RTL	reduce by rule 390
++	NONFIX	reduce by rule 390
++	INFIX	reduce by rule 390
++	INFIXR	reduce by rule 390
++	DEBUG	reduce by rule 390
++	RESOURCE	reduce by rule 390
++	CPU	reduce by rule 390
++	LATENCY	reduce by rule 390
++	EXCEPTION	reduce by rule 390
++	EOF	reduce by rule 390
++
++
++	.	error
++
++
++state 372:
++
++	storagedecls : storagedecl BAR storagedecls .  (reduce by rule 382)
++
++	ARCHITECTURE	reduce by rule 382
++	END	reduce by rule 382
++	LOCAL	reduce by rule 382
++	IN	reduce by rule 382
++	DATATYPE	reduce by rule 382
++	TYPE	reduce by rule 382
++	RPAREN	reduce by rule 382
++	SEMICOLON	reduce by rule 382
++	STORAGE	reduce by rule 382
++	LOCATIONS	reduce by rule 382
++	STRUCTURE	reduce by rule 382
++	FUNCTOR	reduce by rule 382
++	SIGNATURE	reduce by rule 382
++	SHARING	reduce by rule 382
++	INSTRUCTION	reduce by rule 382
++	VLIW	reduce by rule 382
++	SUPERSCALAR	reduce by rule 382
++	FUN	reduce by rule 382
++	VAL	reduce by rule 382
++	INCLUDE	reduce by rule 382
++	OPEN	reduce by rule 382
++	LITTLE	reduce by rule 382
++	BIG	reduce by rule 382
++	PIPELINE	reduce by rule 382
++	LOWERCASE	reduce by rule 382
++	UPPERCASE	reduce by rule 382
++	VERBATIM	reduce by rule 382
++	RTL	reduce by rule 382
++	NONFIX	reduce by rule 382
++	INFIX	reduce by rule 382
++	INFIXR	reduce by rule 382
++	DEBUG	reduce by rule 382
++	RESOURCE	reduce by rule 382
++	CPU	reduce by rule 382
++	LATENCY	reduce by rule 382
++	EXCEPTION	reduce by rule 382
++	EOF	reduce by rule 382
++
++
++	.	error
++
++
++state 373:
++
++	storagedecl : id EQ DOLLAR . id LBRACKET cellcount RBRACKET bitSize aliasing defaults printcell 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 481
++
++	.	error
++
++
++state 374:
++
++	typebind : tyvarseq tid EQ . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 482
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 375:
++
++	typebind : tyvarseq . tid EQ ty 
++
++	CELLSET	shift 50
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 243
++	tid	goto 483
++	tid2	goto 241
++
++	.	error
++
++
++state 376:
++
++	typebinds : typebind AND typebinds .  (reduce by rule 197)
++
++	ARCHITECTURE	reduce by rule 197
++	END	reduce by rule 197
++	LOCAL	reduce by rule 197
++	IN	reduce by rule 197
++	DATATYPE	reduce by rule 197
++	TYPE	reduce by rule 197
++	RPAREN	reduce by rule 197
++	SEMICOLON	reduce by rule 197
++	STORAGE	reduce by rule 197
++	LOCATIONS	reduce by rule 197
++	STRUCTURE	reduce by rule 197
++	FUNCTOR	reduce by rule 197
++	SIGNATURE	reduce by rule 197
++	SHARING	reduce by rule 197
++	INSTRUCTION	reduce by rule 197
++	VLIW	reduce by rule 197
++	SUPERSCALAR	reduce by rule 197
++	FUN	reduce by rule 197
++	VAL	reduce by rule 197
++	INCLUDE	reduce by rule 197
++	OPEN	reduce by rule 197
++	LITTLE	reduce by rule 197
++	BIG	reduce by rule 197
++	PIPELINE	reduce by rule 197
++	LOWERCASE	reduce by rule 197
++	UPPERCASE	reduce by rule 197
++	VERBATIM	reduce by rule 197
++	RTL	reduce by rule 197
++	NONFIX	reduce by rule 197
++	INFIX	reduce by rule 197
++	INFIXR	reduce by rule 197
++	DEBUG	reduce by rule 197
++	RESOURCE	reduce by rule 197
++	CPU	reduce by rule 197
++	LATENCY	reduce by rule 197
++	EXCEPTION	reduce by rule 197
++	EOF	reduce by rule 197
++
++
++	.	error
++
++
++state 377:
++
++	tyvarseq : LPAREN tyvars RPAREN .  (reduce by rule 201)
++
++	CELLSET	reduce by rule 201
++	BITS	reduce by rule 201
++	INSTRUCTION	reduce by rule 201
++	CELL	reduce by rule 201
++	ID	reduce by rule 201
++	SYMBOL	reduce by rule 201
++
++
++	.	error
++
++
++state 378:
++
++	tyvars : tyvar COMMA . tyvars 
++
++	HASH	shift 159
++	TYVAR	shift 158
++
++	tyvar	goto 250
++	tyvars	goto 484
++
++	.	error
++
++
++state 379:
++
++	datatypebind : tyvarseq id opcodeencoding . fieldty hasasm EQ consbinds 
++	datatypebind : tyvarseq id opcodeencoding . fieldty hasasm EQ DATATYPE ty 
++
++	EQ	reduce by rule 133
++	DEREF	reduce by rule 133
++	COLON	shift 486
++
++	fieldty	goto 485
++
++	.	error
++
++
++state 380:
++
++	opcodeencoding : LBRACKET . encodingexps RBRACKET 
++
++	INT	shift 64
++
++	int	goto 489
++	encodingexp	goto 488
++	encodingexps	goto 487
++
++	.	error
++
++
++state 381:
++
++	datatypebinds : datatypebind AND datatypebinds .  (reduce by rule 128)
++
++	ARCHITECTURE	reduce by rule 128
++	END	reduce by rule 128
++	LOCAL	reduce by rule 128
++	IN	reduce by rule 128
++	DATATYPE	reduce by rule 128
++	TYPE	reduce by rule 128
++	RPAREN	reduce by rule 128
++	SEMICOLON	reduce by rule 128
++	STORAGE	reduce by rule 128
++	LOCATIONS	reduce by rule 128
++	STRUCTURE	reduce by rule 128
++	FUNCTOR	reduce by rule 128
++	SIGNATURE	reduce by rule 128
++	SHARING	reduce by rule 128
++	INSTRUCTION	reduce by rule 128
++	VLIW	reduce by rule 128
++	SUPERSCALAR	reduce by rule 128
++	WITHTYPE	reduce by rule 128
++	FUN	reduce by rule 128
++	VAL	reduce by rule 128
++	INCLUDE	reduce by rule 128
++	OPEN	reduce by rule 128
++	LITTLE	reduce by rule 128
++	BIG	reduce by rule 128
++	PIPELINE	reduce by rule 128
++	LOWERCASE	reduce by rule 128
++	UPPERCASE	reduce by rule 128
++	VERBATIM	reduce by rule 128
++	RTL	reduce by rule 128
++	NONFIX	reduce by rule 128
++	INFIX	reduce by rule 128
++	INFIXR	reduce by rule 128
++	DEBUG	reduce by rule 128
++	RESOURCE	reduce by rule 128
++	CPU	reduce by rule 128
++	LATENCY	reduce by rule 128
++	EXCEPTION	reduce by rule 128
++	EOF	reduce by rule 128
++
++
++	.	error
++
++
++state 382:
++
++	withtypeclause : WITHTYPE typebinds .  (reduce by rule 195)
++
++	ARCHITECTURE	reduce by rule 195
++	END	reduce by rule 195
++	LOCAL	reduce by rule 195
++	IN	reduce by rule 195
++	DATATYPE	reduce by rule 195
++	TYPE	reduce by rule 195
++	RPAREN	reduce by rule 195
++	SEMICOLON	reduce by rule 195
++	STORAGE	reduce by rule 195
++	LOCATIONS	reduce by rule 195
++	STRUCTURE	reduce by rule 195
++	FUNCTOR	reduce by rule 195
++	SIGNATURE	reduce by rule 195
++	SHARING	reduce by rule 195
++	INSTRUCTION	reduce by rule 195
++	VLIW	reduce by rule 195
++	SUPERSCALAR	reduce by rule 195
++	FUN	reduce by rule 195
++	VAL	reduce by rule 195
++	INCLUDE	reduce by rule 195
++	OPEN	reduce by rule 195
++	LITTLE	reduce by rule 195
++	BIG	reduce by rule 195
++	PIPELINE	reduce by rule 195
++	LOWERCASE	reduce by rule 195
++	UPPERCASE	reduce by rule 195
++	VERBATIM	reduce by rule 195
++	RTL	reduce by rule 195
++	NONFIX	reduce by rule 195
++	INFIX	reduce by rule 195
++	INFIXR	reduce by rule 195
++	DEBUG	reduce by rule 195
++	RESOURCE	reduce by rule 195
++	CPU	reduce by rule 195
++	LATENCY	reduce by rule 195
++	EXCEPTION	reduce by rule 195
++	EOF	reduce by rule 195
++
++
++	.	error
++
++
++state 383:
++
++	scopeddecls : newScope decls oldScope .  (reduce by rule 106)
++
++	END	reduce by rule 106
++	IN	reduce by rule 106
++	RPAREN	reduce by rule 106
++
++
++	.	error
++
++
++state 384:
++
++	mymldecl : LOCAL scopeddecls IN scopeddecls . END 
++
++	END	shift 490
++
++
++	.	error
++
++
++state 385:
++
++	mymddecl : ARCHITECTURE id EQ STRUCT . decls END 
++
++	ARCHITECTURE	shift 39
++	END	reduce by rule 1
++	LOCAL	shift 38
++	DATATYPE	shift 37
++	TYPE	shift 36
++	STORAGE	shift 35
++	LOCATIONS	shift 34
++	STRUCTURE	shift 33
++	FUNCTOR	shift 32
++	SIGNATURE	shift 31
++	SHARING	shift 30
++	INSTRUCTION	shift 29
++	VLIW	shift 28
++	SUPERSCALAR	shift 27
++	FUN	shift 26
++	VAL	shift 25
++	INCLUDE	shift 24
++	OPEN	shift 23
++	LITTLE	shift 22
++	BIG	shift 21
++	PIPELINE	shift 20
++	LOWERCASE	shift 19
++	UPPERCASE	shift 18
++	VERBATIM	shift 17
++	RTL	shift 16
++	NONFIX	shift 15
++	INFIX	shift 14
++	INFIXR	shift 13
++	DEBUG	shift 12
++	RESOURCE	shift 11
++	CPU	shift 10
++	LATENCY	shift 9
++	EXCEPTION	shift 8
++
++	decls	goto 491
++	decl	goto 6
++	mldecl	goto 5
++	mymldecl	goto 4
++	mddecl	goto 3
++	mymddecl	goto 2
++	assemblycase	goto 1
++
++	.	error
++
++
++state 386:
++
++	appty : appty tident .  (reduce by rule 358)
++
++	ARCHITECTURE	reduce by rule 358
++	END	reduce by rule 358
++	LOCAL	reduce by rule 358
++	IN	reduce by rule 358
++	OF	reduce by rule 358
++	DATATYPE	reduce by rule 358
++	TYPE	reduce by rule 358
++	EQ	reduce by rule 358
++	TIMES	reduce by rule 358
++	AND	reduce by rule 358
++	LPAREN	reduce by rule 358
++	RPAREN	reduce by rule 358
++	RBRACKET	reduce by rule 358
++	RBRACE	reduce by rule 358
++	SEMICOLON	reduce by rule 358
++	LDQUOTE	reduce by rule 358
++	CELLSET	reduce by rule 358
++	STORAGE	reduce by rule 358
++	LOCATIONS	reduce by rule 358
++	COMMA	reduce by rule 358
++	COLON	reduce by rule 358
++	BAR	reduce by rule 358
++	ARROW	reduce by rule 358
++	DARROW	reduce by rule 358
++	BITS	reduce by rule 358
++	THEN	reduce by rule 358
++	ELSE	reduce by rule 358
++	STRUCTURE	reduce by rule 358
++	FUNCTOR	reduce by rule 358
++	SIGNATURE	reduce by rule 358
++	WHERE	reduce by rule 358
++	SHARING	reduce by rule 358
++	INSTRUCTION	reduce by rule 358
++	CELL	reduce by rule 358
++	VLIW	reduce by rule 358
++	SUPERSCALAR	reduce by rule 358
++	WITHTYPE	reduce by rule 358
++	FUN	reduce by rule 358
++	VAL	reduce by rule 358
++	INCLUDE	reduce by rule 358
++	OPEN	reduce by rule 358
++	LITTLE	reduce by rule 358
++	BIG	reduce by rule 358
++	PIPELINE	reduce by rule 358
++	LOWERCASE	reduce by rule 358
++	UPPERCASE	reduce by rule 358
++	VERBATIM	reduce by rule 358
++	RTL	reduce by rule 358
++	SPAN	reduce by rule 358
++	DELAYSLOT	reduce by rule 358
++	NONFIX	reduce by rule 358
++	INFIX	reduce by rule 358
++	INFIXR	reduce by rule 358
++	DEBUG	reduce by rule 358
++	ASM_COLON	reduce by rule 358
++	MC_COLON	reduce by rule 358
++	RTL_COLON	reduce by rule 358
++	DELAYSLOT_COLON	reduce by rule 358
++	NULLIFIED_COLON	reduce by rule 358
++	PADDING_COLON	reduce by rule 358
++	RESOURCE	reduce by rule 358
++	CPU	reduce by rule 358
++	LATENCY	reduce by rule 358
++	EXCEPTION	reduce by rule 358
++	ID	reduce by rule 358
++	SYMBOL	reduce by rule 358
++	WORD	reduce by rule 358
++	INT	reduce by rule 358
++	STRING	reduce by rule 358
++	EOF	reduce by rule 358
++
++
++	.	error
++
++
++state 387:
++
++	tuplety : appty TIMES . appty 
++	tuplety : appty TIMES . tuplety 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	aty	goto 263
++	appty	goto 493
++	tuplety	goto 492
++	tyvar	goto 260
++
++	.	error
++
++
++state 388:
++
++	ty : ty ARROW . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 494
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 389:
++
++	tpath : tpath DOT . tid 
++
++	CELLSET	shift 50
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 243
++	tid	goto 495
++	tid2	goto 241
++
++	.	error
++
++
++state 390:
++
++	tpath : tid DOT . tid 
++
++	CELLSET	shift 50
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 243
++	tid	goto 496
++	tid2	goto 241
++
++	.	error
++
++
++state 391:
++
++	aty : HASH int .  (reduce by rule 351)
++
++	ARCHITECTURE	reduce by rule 351
++	END	reduce by rule 351
++	LOCAL	reduce by rule 351
++	IN	reduce by rule 351
++	OF	reduce by rule 351
++	DATATYPE	reduce by rule 351
++	TYPE	reduce by rule 351
++	EQ	reduce by rule 351
++	TIMES	reduce by rule 351
++	AND	reduce by rule 351
++	LPAREN	reduce by rule 351
++	RPAREN	reduce by rule 351
++	RBRACKET	reduce by rule 351
++	RBRACE	reduce by rule 351
++	SEMICOLON	reduce by rule 351
++	LDQUOTE	reduce by rule 351
++	CELLSET	reduce by rule 351
++	STORAGE	reduce by rule 351
++	LOCATIONS	reduce by rule 351
++	COMMA	reduce by rule 351
++	COLON	reduce by rule 351
++	BAR	reduce by rule 351
++	ARROW	reduce by rule 351
++	DARROW	reduce by rule 351
++	BITS	reduce by rule 351
++	THEN	reduce by rule 351
++	ELSE	reduce by rule 351
++	STRUCTURE	reduce by rule 351
++	FUNCTOR	reduce by rule 351
++	SIGNATURE	reduce by rule 351
++	WHERE	reduce by rule 351
++	SHARING	reduce by rule 351
++	INSTRUCTION	reduce by rule 351
++	CELL	reduce by rule 351
++	VLIW	reduce by rule 351
++	SUPERSCALAR	reduce by rule 351
++	WITHTYPE	reduce by rule 351
++	FUN	reduce by rule 351
++	VAL	reduce by rule 351
++	INCLUDE	reduce by rule 351
++	OPEN	reduce by rule 351
++	LITTLE	reduce by rule 351
++	BIG	reduce by rule 351
++	PIPELINE	reduce by rule 351
++	LOWERCASE	reduce by rule 351
++	UPPERCASE	reduce by rule 351
++	VERBATIM	reduce by rule 351
++	RTL	reduce by rule 351
++	SPAN	reduce by rule 351
++	DELAYSLOT	reduce by rule 351
++	NONFIX	reduce by rule 351
++	INFIX	reduce by rule 351
++	INFIXR	reduce by rule 351
++	DEBUG	reduce by rule 351
++	ASM_COLON	reduce by rule 351
++	MC_COLON	reduce by rule 351
++	RTL_COLON	reduce by rule 351
++	DELAYSLOT_COLON	reduce by rule 351
++	NULLIFIED_COLON	reduce by rule 351
++	PADDING_COLON	reduce by rule 351
++	RESOURCE	reduce by rule 351
++	CPU	reduce by rule 351
++	LATENCY	reduce by rule 351
++	EXCEPTION	reduce by rule 351
++	ID	reduce by rule 351
++	SYMBOL	reduce by rule 351
++	WORD	reduce by rule 351
++	INT	reduce by rule 351
++	STRING	reduce by rule 351
++	EOF	reduce by rule 351
++
++
++	.	error
++
++
++state 392:
++
++	labtys : labtys1 .  (reduce by rule 375)
++
++	RBRACE	reduce by rule 375
++
++
++	.	error
++
++
++state 393:
++
++	aty : LBRACE labtys . RBRACE 
++
++	RBRACE	shift 497
++
++
++	.	error
++
++
++state 394:
++
++	labtys1 : labty .  (reduce by rule 376)
++	labtys1 : labty . COMMA labtys1 
++
++	RBRACE	reduce by rule 376
++	COMMA	shift 498
++
++
++	.	error
++
++
++state 395:
++
++	labty : id . COLON ty 
++
++	COLON	shift 499
++
++
++	.	error
++
++
++state 396:
++
++	appty : LPAREN tys2 . RPAREN tident 
++
++	RPAREN	shift 500
++
++
++	.	error
++
++
++state 397:
++
++	ty : ty . ARROW ty 
++	aty : LPAREN ty . RPAREN 
++	tys2 : ty . COMMA ty 
++	tys2 : ty . COMMA tys2 
++
++	RPAREN	shift 502
++	COMMA	shift 501
++	ARROW	shift 388
++
++
++	.	error
++
++
++state 398:
++
++	aty : LPAREN RPAREN .  (reduce by rule 354)
++
++	ARCHITECTURE	reduce by rule 354
++	END	reduce by rule 354
++	LOCAL	reduce by rule 354
++	IN	reduce by rule 354
++	OF	reduce by rule 354
++	DATATYPE	reduce by rule 354
++	TYPE	reduce by rule 354
++	EQ	reduce by rule 354
++	TIMES	reduce by rule 354
++	AND	reduce by rule 354
++	LPAREN	reduce by rule 354
++	RPAREN	reduce by rule 354
++	RBRACKET	reduce by rule 354
++	RBRACE	reduce by rule 354
++	SEMICOLON	reduce by rule 354
++	LDQUOTE	reduce by rule 354
++	CELLSET	reduce by rule 354
++	STORAGE	reduce by rule 354
++	LOCATIONS	reduce by rule 354
++	COMMA	reduce by rule 354
++	COLON	reduce by rule 354
++	BAR	reduce by rule 354
++	ARROW	reduce by rule 354
++	DARROW	reduce by rule 354
++	BITS	reduce by rule 354
++	THEN	reduce by rule 354
++	ELSE	reduce by rule 354
++	STRUCTURE	reduce by rule 354
++	FUNCTOR	reduce by rule 354
++	SIGNATURE	reduce by rule 354
++	WHERE	reduce by rule 354
++	SHARING	reduce by rule 354
++	INSTRUCTION	reduce by rule 354
++	CELL	reduce by rule 354
++	VLIW	reduce by rule 354
++	SUPERSCALAR	reduce by rule 354
++	WITHTYPE	reduce by rule 354
++	FUN	reduce by rule 354
++	VAL	reduce by rule 354
++	INCLUDE	reduce by rule 354
++	OPEN	reduce by rule 354
++	LITTLE	reduce by rule 354
++	BIG	reduce by rule 354
++	PIPELINE	reduce by rule 354
++	LOWERCASE	reduce by rule 354
++	UPPERCASE	reduce by rule 354
++	VERBATIM	reduce by rule 354
++	RTL	reduce by rule 354
++	SPAN	reduce by rule 354
++	DELAYSLOT	reduce by rule 354
++	NONFIX	reduce by rule 354
++	INFIX	reduce by rule 354
++	INFIXR	reduce by rule 354
++	DEBUG	reduce by rule 354
++	ASM_COLON	reduce by rule 354
++	MC_COLON	reduce by rule 354
++	RTL_COLON	reduce by rule 354
++	DELAYSLOT_COLON	reduce by rule 354
++	NULLIFIED_COLON	reduce by rule 354
++	PADDING_COLON	reduce by rule 354
++	RESOURCE	reduce by rule 354
++	CPU	reduce by rule 354
++	LATENCY	reduce by rule 354
++	EXCEPTION	reduce by rule 354
++	ID	reduce by rule 354
++	SYMBOL	reduce by rule 354
++	WORD	reduce by rule 354
++	INT	reduce by rule 354
++	STRING	reduce by rule 354
++	EOF	reduce by rule 354
++
++
++	.	error
++
++
++state 399:
++
++	aty : DOLLAR id .  (reduce by rule 353)
++
++	ARCHITECTURE	reduce by rule 353
++	END	reduce by rule 353
++	LOCAL	reduce by rule 353
++	IN	reduce by rule 353
++	OF	reduce by rule 353
++	DATATYPE	reduce by rule 353
++	TYPE	reduce by rule 353
++	EQ	reduce by rule 353
++	TIMES	reduce by rule 353
++	AND	reduce by rule 353
++	LPAREN	reduce by rule 353
++	RPAREN	reduce by rule 353
++	RBRACKET	reduce by rule 353
++	RBRACE	reduce by rule 353
++	SEMICOLON	reduce by rule 353
++	LDQUOTE	reduce by rule 353
++	CELLSET	reduce by rule 353
++	STORAGE	reduce by rule 353
++	LOCATIONS	reduce by rule 353
++	COMMA	reduce by rule 353
++	COLON	reduce by rule 353
++	BAR	reduce by rule 353
++	ARROW	reduce by rule 353
++	DARROW	reduce by rule 353
++	BITS	reduce by rule 353
++	THEN	reduce by rule 353
++	ELSE	reduce by rule 353
++	STRUCTURE	reduce by rule 353
++	FUNCTOR	reduce by rule 353
++	SIGNATURE	reduce by rule 353
++	WHERE	reduce by rule 353
++	SHARING	reduce by rule 353
++	INSTRUCTION	reduce by rule 353
++	CELL	reduce by rule 353
++	VLIW	reduce by rule 353
++	SUPERSCALAR	reduce by rule 353
++	WITHTYPE	reduce by rule 353
++	FUN	reduce by rule 353
++	VAL	reduce by rule 353
++	INCLUDE	reduce by rule 353
++	OPEN	reduce by rule 353
++	LITTLE	reduce by rule 353
++	BIG	reduce by rule 353
++	PIPELINE	reduce by rule 353
++	LOWERCASE	reduce by rule 353
++	UPPERCASE	reduce by rule 353
++	VERBATIM	reduce by rule 353
++	RTL	reduce by rule 353
++	SPAN	reduce by rule 353
++	DELAYSLOT	reduce by rule 353
++	NONFIX	reduce by rule 353
++	INFIX	reduce by rule 353
++	INFIXR	reduce by rule 353
++	DEBUG	reduce by rule 353
++	ASM_COLON	reduce by rule 353
++	MC_COLON	reduce by rule 353
++	RTL_COLON	reduce by rule 353
++	DELAYSLOT_COLON	reduce by rule 353
++	NULLIFIED_COLON	reduce by rule 353
++	PADDING_COLON	reduce by rule 353
++	RESOURCE	reduce by rule 353
++	CPU	reduce by rule 353
++	LATENCY	reduce by rule 353
++	EXCEPTION	reduce by rule 353
++	ID	reduce by rule 353
++	SYMBOL	reduce by rule 353
++	WORD	reduce by rule 353
++	INT	reduce by rule 353
++	STRING	reduce by rule 353
++	EOF	reduce by rule 353
++
++
++	.	error
++
++
++state 400:
++
++	exp : exp . HANDLE clauses 
++	latencyclause : id pat EQ exp .  (reduce by rule 58)
++
++	ARCHITECTURE	reduce by rule 58
++	END	reduce by rule 58
++	LOCAL	reduce by rule 58
++	IN	reduce by rule 58
++	DATATYPE	reduce by rule 58
++	TYPE	reduce by rule 58
++	AND	reduce by rule 58
++	RPAREN	reduce by rule 58
++	SEMICOLON	reduce by rule 58
++	STORAGE	reduce by rule 58
++	LOCATIONS	reduce by rule 58
++	BAR	reduce by rule 58
++	HANDLE	shift 402
++	STRUCTURE	reduce by rule 58
++	FUNCTOR	reduce by rule 58
++	SIGNATURE	reduce by rule 58
++	SHARING	reduce by rule 58
++	INSTRUCTION	reduce by rule 58
++	VLIW	reduce by rule 58
++	SUPERSCALAR	reduce by rule 58
++	FUN	reduce by rule 58
++	VAL	reduce by rule 58
++	INCLUDE	reduce by rule 58
++	OPEN	reduce by rule 58
++	LITTLE	reduce by rule 58
++	BIG	reduce by rule 58
++	PIPELINE	reduce by rule 58
++	LOWERCASE	reduce by rule 58
++	UPPERCASE	reduce by rule 58
++	VERBATIM	reduce by rule 58
++	RTL	reduce by rule 58
++	NONFIX	reduce by rule 58
++	INFIX	reduce by rule 58
++	INFIXR	reduce by rule 58
++	DEBUG	reduce by rule 58
++	RESOURCE	reduce by rule 58
++	CPU	reduce by rule 58
++	LATENCY	reduce by rule 58
++	EXCEPTION	reduce by rule 58
++	EOF	reduce by rule 58
++
++
++	.	error
++
++
++state 401:
++
++	cpubind : id aliases int LBRACKET . resources RBRACKET 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++	INT	shift 64
++
++	id	goto 506
++	int	goto 505
++	resources	goto 504
++	resource	goto 503
++
++	.	error
++
++
++state 402:
++
++	exp : exp HANDLE . clauses 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LHASHBRACKET	shift 103
++	LPAREN	shift 102
++	LBRACKET	shift 101
++	LBRACE	shift 100
++	CELLSET	shift 50
++	TRUE	shift 99
++	FALSE	shift 98
++	WILD	shift 97
++	OP	shift 128
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 127
++	sym	goto 134
++	symb	goto 67
++	ident2	goto 87
++	path	goto 85
++	apat	goto 124
++	apat2	goto 123
++	apppat	goto 122
++	pat	goto 195
++	typedpat	goto 413
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 75
++	clause	goto 412
++	clauses	goto 507
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 403:
++
++	aexp2 : aexp2 . AT LBRACKET slices RBRACKET 
++	appexp : appexp aexp2 .  (reduce by rule 273)
++
++	ARCHITECTURE	reduce by rule 273
++	END	reduce by rule 273
++	LOCAL	reduce by rule 273
++	IN	reduce by rule 273
++	OF	reduce by rule 273
++	DATATYPE	reduce by rule 273
++	TYPE	reduce by rule 273
++	EQ	reduce by rule 273
++	DOLLAR	reduce by rule 273
++	TIMES	reduce by rule 273
++	AND	reduce by rule 273
++	DEREF	reduce by rule 273
++	NOT	reduce by rule 273
++	LLBRACKET	reduce by rule 273
++	LHASHBRACKET	reduce by rule 273
++	LPAREN	reduce by rule 273
++	RPAREN	reduce by rule 273
++	LBRACKET	reduce by rule 273
++	RBRACKET	reduce by rule 273
++	LBRACE	reduce by rule 273
++	RBRACE	reduce by rule 273
++	SEMICOLON	reduce by rule 273
++	LDQUOTE	reduce by rule 273
++	RMETA	reduce by rule 273
++	CELLSET	reduce by rule 273
++	STORAGE	reduce by rule 273
++	LOCATIONS	reduce by rule 273
++	HASH	reduce by rule 273
++	COMMA	reduce by rule 273
++	COLON	reduce by rule 273
++	AT	shift 404
++	BAR	reduce by rule 273
++	DARROW	reduce by rule 273
++	THEN	reduce by rule 273
++	ELSE	reduce by rule 273
++	TRUE	reduce by rule 273
++	FALSE	reduce by rule 273
++	HANDLE	reduce by rule 273
++	LET	reduce by rule 273
++	STRUCTURE	reduce by rule 273
++	FUNCTOR	reduce by rule 273
++	SIGNATURE	reduce by rule 273
++	SHARING	reduce by rule 273
++	INSTRUCTION	reduce by rule 273
++	VLIW	reduce by rule 273
++	SUPERSCALAR	reduce by rule 273
++	WITHTYPE	reduce by rule 273
++	FUN	reduce by rule 273
++	VAL	reduce by rule 273
++	INCLUDE	reduce by rule 273
++	OPEN	reduce by rule 273
++	OP	reduce by rule 273
++	LITTLE	reduce by rule 273
++	BIG	reduce by rule 273
++	PIPELINE	reduce by rule 273
++	LOWERCASE	reduce by rule 273
++	UPPERCASE	reduce by rule 273
++	VERBATIM	reduce by rule 273
++	RTL	reduce by rule 273
++	SPAN	reduce by rule 273
++	DELAYSLOT	reduce by rule 273
++	ALWAYS	reduce by rule 273
++	NEVER	reduce by rule 273
++	NONFIX	reduce by rule 273
++	INFIX	reduce by rule 273
++	INFIXR	reduce by rule 273
++	DEBUG	reduce by rule 273
++	ASM_COLON	reduce by rule 273
++	MC_COLON	reduce by rule 273
++	RTL_COLON	reduce by rule 273
++	DELAYSLOT_COLON	reduce by rule 273
++	NULLIFIED_COLON	reduce by rule 273
++	PADDING_COLON	reduce by rule 273
++	RESOURCE	reduce by rule 273
++	CPU	reduce by rule 273
++	LATENCY	reduce by rule 273
++	EXCEPTION	reduce by rule 273
++	ID	reduce by rule 273
++	SYMBOL	reduce by rule 273
++	WORD	reduce by rule 273
++	INT	reduce by rule 273
++	INTINF	reduce by rule 273
++	REAL	reduce by rule 273
++	STRING	reduce by rule 273
++	CHAR	reduce by rule 273
++	EOF	reduce by rule 273
++
++
++	.	error
++
++
++state 404:
++
++	aexp2 : aexp2 AT . LBRACKET slices RBRACKET 
++
++	LBRACKET	shift 508
++
++
++	.	error
++
++
++state 405:
++
++	aexp : sym CONCAT . LBRACKET exps RBRACKET 
++	aexp : sym CONCAT . LBRACKET exps RBRACKET CONCAT sym 
++
++	LBRACKET	shift 509
++
++
++	.	error
++
++
++state 406:
++
++	aexp : OP symb .  (reduce by rule 244)
++
++	ARCHITECTURE	reduce by rule 244
++	END	reduce by rule 244
++	LOCAL	reduce by rule 244
++	IN	reduce by rule 244
++	OF	reduce by rule 244
++	DATATYPE	reduce by rule 244
++	TYPE	reduce by rule 244
++	EQ	reduce by rule 244
++	DOLLAR	reduce by rule 244
++	TIMES	reduce by rule 244
++	AND	reduce by rule 244
++	DEREF	reduce by rule 244
++	NOT	reduce by rule 244
++	LLBRACKET	reduce by rule 244
++	LHASHBRACKET	reduce by rule 244
++	LPAREN	reduce by rule 244
++	RPAREN	reduce by rule 244
++	LBRACKET	reduce by rule 244
++	RBRACKET	reduce by rule 244
++	LBRACE	reduce by rule 244
++	RBRACE	reduce by rule 244
++	SEMICOLON	reduce by rule 244
++	LDQUOTE	reduce by rule 244
++	RMETA	reduce by rule 244
++	CELLSET	reduce by rule 244
++	STORAGE	reduce by rule 244
++	LOCATIONS	reduce by rule 244
++	HASH	reduce by rule 244
++	COMMA	reduce by rule 244
++	COLON	reduce by rule 244
++	AT	reduce by rule 244
++	BAR	reduce by rule 244
++	DARROW	reduce by rule 244
++	THEN	reduce by rule 244
++	ELSE	reduce by rule 244
++	TRUE	reduce by rule 244
++	FALSE	reduce by rule 244
++	HANDLE	reduce by rule 244
++	LET	reduce by rule 244
++	STRUCTURE	reduce by rule 244
++	FUNCTOR	reduce by rule 244
++	SIGNATURE	reduce by rule 244
++	SHARING	reduce by rule 244
++	INSTRUCTION	reduce by rule 244
++	VLIW	reduce by rule 244
++	SUPERSCALAR	reduce by rule 244
++	WITHTYPE	reduce by rule 244
++	FUN	reduce by rule 244
++	VAL	reduce by rule 244
++	INCLUDE	reduce by rule 244
++	OPEN	reduce by rule 244
++	OP	reduce by rule 244
++	LITTLE	reduce by rule 244
++	BIG	reduce by rule 244
++	PIPELINE	reduce by rule 244
++	LOWERCASE	reduce by rule 244
++	UPPERCASE	reduce by rule 244
++	VERBATIM	reduce by rule 244
++	RTL	reduce by rule 244
++	SPAN	reduce by rule 244
++	DELAYSLOT	reduce by rule 244
++	ALWAYS	reduce by rule 244
++	NEVER	reduce by rule 244
++	NONFIX	reduce by rule 244
++	INFIX	reduce by rule 244
++	INFIXR	reduce by rule 244
++	DEBUG	reduce by rule 244
++	ASM_COLON	reduce by rule 244
++	MC_COLON	reduce by rule 244
++	RTL_COLON	reduce by rule 244
++	DELAYSLOT_COLON	reduce by rule 244
++	NULLIFIED_COLON	reduce by rule 244
++	PADDING_COLON	reduce by rule 244
++	RESOURCE	reduce by rule 244
++	CPU	reduce by rule 244
++	LATENCY	reduce by rule 244
++	EXCEPTION	reduce by rule 244
++	ID	reduce by rule 244
++	SYMBOL	reduce by rule 244
++	WORD	reduce by rule 244
++	INT	reduce by rule 244
++	INTINF	reduce by rule 244
++	REAL	reduce by rule 244
++	STRING	reduce by rule 244
++	CHAR	reduce by rule 244
++	EOF	reduce by rule 244
++
++
++	.	error
++
++
++state 407:
++
++	aexp : LET decls . IN expseq END 
++
++	IN	shift 510
++
++
++	.	error
++
++
++state 408:
++
++	exp : exp . HANDLE clauses 
++	exp : RAISE exp .  (reduce by rule 279)
++
++	ARCHITECTURE	reduce by rule 279
++	END	reduce by rule 279
++	LOCAL	reduce by rule 279
++	IN	reduce by rule 279
++	OF	reduce by rule 279
++	DATATYPE	reduce by rule 279
++	TYPE	reduce by rule 279
++	AND	reduce by rule 279
++	LPAREN	reduce by rule 279
++	RPAREN	reduce by rule 279
++	RBRACKET	reduce by rule 279
++	RBRACE	reduce by rule 279
++	SEMICOLON	reduce by rule 279
++	RMETA	reduce by rule 279
++	CELLSET	reduce by rule 279
++	STORAGE	reduce by rule 279
++	LOCATIONS	reduce by rule 279
++	COMMA	reduce by rule 279
++	COLON	reduce by rule 279
++	BAR	reduce by rule 279
++	DARROW	reduce by rule 279
++	THEN	reduce by rule 279
++	ELSE	reduce by rule 279
++	HANDLE	reduce by rule 279
++	STRUCTURE	reduce by rule 279
++	FUNCTOR	reduce by rule 279
++	SIGNATURE	reduce by rule 279
++	SHARING	reduce by rule 279
++	INSTRUCTION	reduce by rule 279
++	VLIW	reduce by rule 279
++	SUPERSCALAR	reduce by rule 279
++	WITHTYPE	reduce by rule 279
++	FUN	reduce by rule 279
++	VAL	reduce by rule 279
++	INCLUDE	reduce by rule 279
++	OPEN	reduce by rule 279
++	LITTLE	reduce by rule 279
++	BIG	reduce by rule 279
++	PIPELINE	reduce by rule 279
++	LOWERCASE	reduce by rule 279
++	UPPERCASE	reduce by rule 279
++	VERBATIM	reduce by rule 279
++	RTL	reduce by rule 279
++	SPAN	reduce by rule 279
++	DELAYSLOT	reduce by rule 279
++	NONFIX	reduce by rule 279
++	INFIX	reduce by rule 279
++	INFIXR	reduce by rule 279
++	DEBUG	reduce by rule 279
++	ASM_COLON	reduce by rule 279
++	MC_COLON	reduce by rule 279
++	RTL_COLON	reduce by rule 279
++	DELAYSLOT_COLON	reduce by rule 279
++	NULLIFIED_COLON	reduce by rule 279
++	PADDING_COLON	reduce by rule 279
++	RESOURCE	reduce by rule 279
++	CPU	reduce by rule 279
++	LATENCY	reduce by rule 279
++	EXCEPTION	reduce by rule 279
++	ID	reduce by rule 279
++	SYMBOL	reduce by rule 279
++	WORD	reduce by rule 279
++	INT	reduce by rule 279
++	EOF	reduce by rule 279
++
++
++	.	error
++
++
++state 409:
++
++	exp : IF typedexp . THEN typedexp ELSE exp 
++	typedexp : typedexp . COLON ty 
++
++	COLON	shift 458
++	THEN	shift 511
++
++
++	.	error
++
++
++state 410:
++
++	aexp : HASH id .  (reduce by rule 243)
++
++	ARCHITECTURE	reduce by rule 243
++	END	reduce by rule 243
++	LOCAL	reduce by rule 243
++	IN	reduce by rule 243
++	OF	reduce by rule 243
++	DATATYPE	reduce by rule 243
++	TYPE	reduce by rule 243
++	EQ	reduce by rule 243
++	DOLLAR	reduce by rule 243
++	TIMES	reduce by rule 243
++	AND	reduce by rule 243
++	DEREF	reduce by rule 243
++	NOT	reduce by rule 243
++	LLBRACKET	reduce by rule 243
++	LHASHBRACKET	reduce by rule 243
++	LPAREN	reduce by rule 243
++	RPAREN	reduce by rule 243
++	LBRACKET	reduce by rule 243
++	RBRACKET	reduce by rule 243
++	LBRACE	reduce by rule 243
++	RBRACE	reduce by rule 243
++	SEMICOLON	reduce by rule 243
++	LDQUOTE	reduce by rule 243
++	RMETA	reduce by rule 243
++	CELLSET	reduce by rule 243
++	STORAGE	reduce by rule 243
++	LOCATIONS	reduce by rule 243
++	HASH	reduce by rule 243
++	COMMA	reduce by rule 243
++	COLON	reduce by rule 243
++	AT	reduce by rule 243
++	BAR	reduce by rule 243
++	DARROW	reduce by rule 243
++	THEN	reduce by rule 243
++	ELSE	reduce by rule 243
++	TRUE	reduce by rule 243
++	FALSE	reduce by rule 243
++	HANDLE	reduce by rule 243
++	LET	reduce by rule 243
++	STRUCTURE	reduce by rule 243
++	FUNCTOR	reduce by rule 243
++	SIGNATURE	reduce by rule 243
++	SHARING	reduce by rule 243
++	INSTRUCTION	reduce by rule 243
++	VLIW	reduce by rule 243
++	SUPERSCALAR	reduce by rule 243
++	WITHTYPE	reduce by rule 243
++	FUN	reduce by rule 243
++	VAL	reduce by rule 243
++	INCLUDE	reduce by rule 243
++	OPEN	reduce by rule 243
++	OP	reduce by rule 243
++	LITTLE	reduce by rule 243
++	BIG	reduce by rule 243
++	PIPELINE	reduce by rule 243
++	LOWERCASE	reduce by rule 243
++	UPPERCASE	reduce by rule 243
++	VERBATIM	reduce by rule 243
++	RTL	reduce by rule 243
++	SPAN	reduce by rule 243
++	DELAYSLOT	reduce by rule 243
++	ALWAYS	reduce by rule 243
++	NEVER	reduce by rule 243
++	NONFIX	reduce by rule 243
++	INFIX	reduce by rule 243
++	INFIXR	reduce by rule 243
++	DEBUG	reduce by rule 243
++	ASM_COLON	reduce by rule 243
++	MC_COLON	reduce by rule 243
++	RTL_COLON	reduce by rule 243
++	DELAYSLOT_COLON	reduce by rule 243
++	NULLIFIED_COLON	reduce by rule 243
++	PADDING_COLON	reduce by rule 243
++	RESOURCE	reduce by rule 243
++	CPU	reduce by rule 243
++	LATENCY	reduce by rule 243
++	EXCEPTION	reduce by rule 243
++	ID	reduce by rule 243
++	SYMBOL	reduce by rule 243
++	WORD	reduce by rule 243
++	INT	reduce by rule 243
++	INTINF	reduce by rule 243
++	REAL	reduce by rule 243
++	STRING	reduce by rule 243
++	CHAR	reduce by rule 243
++	EOF	reduce by rule 243
++
++
++	.	error
++
++
++state 411:
++
++	exp : FN clauses .  (reduce by rule 277)
++
++	ARCHITECTURE	reduce by rule 277
++	END	reduce by rule 277
++	LOCAL	reduce by rule 277
++	IN	reduce by rule 277
++	OF	reduce by rule 277
++	DATATYPE	reduce by rule 277
++	TYPE	reduce by rule 277
++	AND	reduce by rule 277
++	LPAREN	reduce by rule 277
++	RPAREN	reduce by rule 277
++	RBRACKET	reduce by rule 277
++	RBRACE	reduce by rule 277
++	SEMICOLON	reduce by rule 277
++	RMETA	reduce by rule 277
++	CELLSET	reduce by rule 277
++	STORAGE	reduce by rule 277
++	LOCATIONS	reduce by rule 277
++	COMMA	reduce by rule 277
++	COLON	reduce by rule 277
++	BAR	reduce by rule 277
++	DARROW	reduce by rule 277
++	THEN	reduce by rule 277
++	ELSE	reduce by rule 277
++	HANDLE	reduce by rule 277
++	STRUCTURE	reduce by rule 277
++	FUNCTOR	reduce by rule 277
++	SIGNATURE	reduce by rule 277
++	SHARING	reduce by rule 277
++	INSTRUCTION	reduce by rule 277
++	VLIW	reduce by rule 277
++	SUPERSCALAR	reduce by rule 277
++	WITHTYPE	reduce by rule 277
++	FUN	reduce by rule 277
++	VAL	reduce by rule 277
++	INCLUDE	reduce by rule 277
++	OPEN	reduce by rule 277
++	LITTLE	reduce by rule 277
++	BIG	reduce by rule 277
++	PIPELINE	reduce by rule 277
++	LOWERCASE	reduce by rule 277
++	UPPERCASE	reduce by rule 277
++	VERBATIM	reduce by rule 277
++	RTL	reduce by rule 277
++	SPAN	reduce by rule 277
++	DELAYSLOT	reduce by rule 277
++	NONFIX	reduce by rule 277
++	INFIX	reduce by rule 277
++	INFIXR	reduce by rule 277
++	DEBUG	reduce by rule 277
++	ASM_COLON	reduce by rule 277
++	MC_COLON	reduce by rule 277
++	RTL_COLON	reduce by rule 277
++	DELAYSLOT_COLON	reduce by rule 277
++	NULLIFIED_COLON	reduce by rule 277
++	PADDING_COLON	reduce by rule 277
++	RESOURCE	reduce by rule 277
++	CPU	reduce by rule 277
++	LATENCY	reduce by rule 277
++	EXCEPTION	reduce by rule 277
++	ID	reduce by rule 277
++	SYMBOL	reduce by rule 277
++	WORD	reduce by rule 277
++	INT	reduce by rule 277
++	EOF	reduce by rule 277
++
++
++	.	error
++
++error:  state 412: shift/reduce conflict (shift BAR, reduce by rule 341)
++
++state 412:
++
++	clauses : clause .  (reduce by rule 341)
++	clauses : clause . BAR clauses 
++
++	ARCHITECTURE	reduce by rule 341
++	END	reduce by rule 341
++	LOCAL	reduce by rule 341
++	IN	reduce by rule 341
++	OF	reduce by rule 341
++	DATATYPE	reduce by rule 341
++	TYPE	reduce by rule 341
++	AND	reduce by rule 341
++	LPAREN	reduce by rule 341
++	RPAREN	reduce by rule 341
++	RBRACKET	reduce by rule 341
++	RBRACE	reduce by rule 341
++	SEMICOLON	reduce by rule 341
++	RMETA	reduce by rule 341
++	CELLSET	reduce by rule 341
++	STORAGE	reduce by rule 341
++	LOCATIONS	reduce by rule 341
++	COMMA	reduce by rule 341
++	COLON	reduce by rule 341
++	BAR	shift 512
++	DARROW	reduce by rule 341
++	THEN	reduce by rule 341
++	ELSE	reduce by rule 341
++	HANDLE	reduce by rule 341
++	STRUCTURE	reduce by rule 341
++	FUNCTOR	reduce by rule 341
++	SIGNATURE	reduce by rule 341
++	SHARING	reduce by rule 341
++	INSTRUCTION	reduce by rule 341
++	VLIW	reduce by rule 341
++	SUPERSCALAR	reduce by rule 341
++	WITHTYPE	reduce by rule 341
++	FUN	reduce by rule 341
++	VAL	reduce by rule 341
++	INCLUDE	reduce by rule 341
++	OPEN	reduce by rule 341
++	LITTLE	reduce by rule 341
++	BIG	reduce by rule 341
++	PIPELINE	reduce by rule 341
++	LOWERCASE	reduce by rule 341
++	UPPERCASE	reduce by rule 341
++	VERBATIM	reduce by rule 341
++	RTL	reduce by rule 341
++	SPAN	reduce by rule 341
++	DELAYSLOT	reduce by rule 341
++	NONFIX	reduce by rule 341
++	INFIX	reduce by rule 341
++	INFIXR	reduce by rule 341
++	DEBUG	reduce by rule 341
++	ASM_COLON	reduce by rule 341
++	MC_COLON	reduce by rule 341
++	RTL_COLON	reduce by rule 341
++	DELAYSLOT_COLON	reduce by rule 341
++	NULLIFIED_COLON	reduce by rule 341
++	PADDING_COLON	reduce by rule 341
++	RESOURCE	reduce by rule 341
++	CPU	reduce by rule 341
++	LATENCY	reduce by rule 341
++	EXCEPTION	reduce by rule 341
++	ID	reduce by rule 341
++	SYMBOL	reduce by rule 341
++	WORD	reduce by rule 341
++	INT	reduce by rule 341
++	EOF	reduce by rule 341
++
++
++	.	error
++
++
++state 413:
++
++	typedpat : typedpat . COLON ty 
++	clause : typedpat . guard cont DARROW exp 
++
++	COLON	shift 316
++	DARROW	reduce by rule 339
++	WHERE	shift 514
++	EXCEPTION	reduce by rule 339
++
++	guard	goto 513
++
++	.	error
++
++
++state 414:
++
++	asms : asm .  (reduce by rule 188)
++	asms : asm . asms 
++
++	RDQUOTE	reduce by rule 188
++	LMETA	shift 417
++	ASMTEXT	shift 416
++
++	asms	goto 515
++	asm	goto 414
++
++	.	error
++
++
++state 415:
++
++	asm_strings : LDQUOTE asms . RDQUOTE 
++	asm_strings : LDQUOTE asms . RDQUOTE asm_strings 
++
++	RDQUOTE	shift 516
++
++
++	.	error
++
++
++state 416:
++
++	asm : ASMTEXT .  (reduce by rule 191)
++
++	RDQUOTE	reduce by rule 191
++	LMETA	reduce by rule 191
++	ASMTEXT	reduce by rule 191
++
++
++	.	error
++
++
++state 417:
++
++	asm : LMETA . exp RMETA 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 517
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 418:
++
++	labexps : labexp .  (reduce by rule 268)
++	labexps : labexp . COMMA labexps 
++
++	RBRACE	reduce by rule 268
++	COMMA	shift 518
++
++
++	.	error
++
++
++state 419:
++
++	labexps0 : labexps .  (reduce by rule 267)
++
++	RBRACE	reduce by rule 267
++
++
++	.	error
++
++
++state 420:
++
++	aexp : LBRACE labexps0 . RBRACE 
++
++	RBRACE	shift 519
++
++
++	.	error
++
++
++state 421:
++
++	labexp : id . EQ typedexp 
++	labexp : id .  (reduce by rule 271)
++
++	EQ	shift 520
++	RBRACE	reduce by rule 271
++	COMMA	reduce by rule 271
++
++
++	.	error
++
++
++state 422:
++
++	exps : exps1 .  (reduce by rule 289)
++
++	RBRACKET	reduce by rule 289
++
++
++	.	error
++
++
++state 423:
++
++	aexp : LBRACKET exps . RBRACKET 
++	aexp : LBRACKET exps . RBRACKET CONCAT sym 
++
++	RBRACKET	shift 521
++
++
++	.	error
++
++
++state 424:
++
++	typedexp : typedexp . COLON ty 
++	exps1 : typedexp .  (reduce by rule 285)
++	exps1 : typedexp . COMMA exps1 
++
++	RPAREN	reduce by rule 285
++	RBRACKET	reduce by rule 285
++	COMMA	shift 522
++	COLON	shift 458
++
++
++	.	error
++
++
++state 425:
++
++	aexp : LPAREN expseq2 . RPAREN 
++
++	RPAREN	shift 523
++
++
++	.	error
++
++
++state 426:
++
++	aexp : LPAREN exps2 . RPAREN 
++
++	RPAREN	shift 524
++
++
++	.	error
++
++
++state 427:
++
++	aexp : LPAREN typedexp . RPAREN 
++	typedexp : typedexp . COLON ty 
++	exps2 : typedexp . COMMA exps1 
++	expseq2 : typedexp . SEMICOLON expseq 
++
++	RPAREN	shift 527
++	SEMICOLON	shift 526
++	COMMA	shift 525
++	COLON	shift 458
++
++
++	.	error
++
++error:  state 428: shift/reduce conflict (shift RPAREN, reduce by rule 417)
++
++state 428:
++
++	sym : symb .  (reduce by rule 417)
++	aexp : LPAREN symb . RPAREN 
++
++	EQ	reduce by rule 417
++	DOLLAR	reduce by rule 417
++	TIMES	reduce by rule 417
++	DEREF	reduce by rule 417
++	NOT	reduce by rule 417
++	CONCAT	reduce by rule 417
++	LLBRACKET	reduce by rule 417
++	LHASHBRACKET	reduce by rule 417
++	LPAREN	reduce by rule 417
++	RPAREN	shift 528
++	LBRACKET	reduce by rule 417
++	LBRACE	reduce by rule 417
++	SEMICOLON	reduce by rule 417
++	LDQUOTE	reduce by rule 417
++	CELLSET	reduce by rule 417
++	HASH	reduce by rule 417
++	COMMA	reduce by rule 417
++	COLON	reduce by rule 417
++	AT	reduce by rule 417
++	TRUE	reduce by rule 417
++	FALSE	reduce by rule 417
++	HANDLE	reduce by rule 417
++	LET	reduce by rule 417
++	OP	reduce by rule 417
++	ALWAYS	reduce by rule 417
++	NEVER	reduce by rule 417
++	ID	reduce by rule 417
++	SYMBOL	reduce by rule 417
++	WORD	reduce by rule 417
++	INT	reduce by rule 417
++	INTINF	reduce by rule 417
++	REAL	reduce by rule 417
++	STRING	reduce by rule 417
++	CHAR	reduce by rule 417
++
++
++	.	error
++
++
++state 429:
++
++	aexp : LPAREN RPAREN .  (reduce by rule 247)
++
++	ARCHITECTURE	reduce by rule 247
++	END	reduce by rule 247
++	LOCAL	reduce by rule 247
++	IN	reduce by rule 247
++	OF	reduce by rule 247
++	DATATYPE	reduce by rule 247
++	TYPE	reduce by rule 247
++	EQ	reduce by rule 247
++	DOLLAR	reduce by rule 247
++	TIMES	reduce by rule 247
++	AND	reduce by rule 247
++	DEREF	reduce by rule 247
++	NOT	reduce by rule 247
++	LLBRACKET	reduce by rule 247
++	LHASHBRACKET	reduce by rule 247
++	LPAREN	reduce by rule 247
++	RPAREN	reduce by rule 247
++	LBRACKET	reduce by rule 247
++	RBRACKET	reduce by rule 247
++	LBRACE	reduce by rule 247
++	RBRACE	reduce by rule 247
++	SEMICOLON	reduce by rule 247
++	LDQUOTE	reduce by rule 247
++	RMETA	reduce by rule 247
++	CELLSET	reduce by rule 247
++	STORAGE	reduce by rule 247
++	LOCATIONS	reduce by rule 247
++	HASH	reduce by rule 247
++	COMMA	reduce by rule 247
++	COLON	reduce by rule 247
++	AT	reduce by rule 247
++	BAR	reduce by rule 247
++	DARROW	reduce by rule 247
++	THEN	reduce by rule 247
++	ELSE	reduce by rule 247
++	TRUE	reduce by rule 247
++	FALSE	reduce by rule 247
++	HANDLE	reduce by rule 247
++	LET	reduce by rule 247
++	STRUCTURE	reduce by rule 247
++	FUNCTOR	reduce by rule 247
++	SIGNATURE	reduce by rule 247
++	SHARING	reduce by rule 247
++	INSTRUCTION	reduce by rule 247
++	VLIW	reduce by rule 247
++	SUPERSCALAR	reduce by rule 247
++	WITHTYPE	reduce by rule 247
++	FUN	reduce by rule 247
++	VAL	reduce by rule 247
++	INCLUDE	reduce by rule 247
++	OPEN	reduce by rule 247
++	OP	reduce by rule 247
++	LITTLE	reduce by rule 247
++	BIG	reduce by rule 247
++	PIPELINE	reduce by rule 247
++	LOWERCASE	reduce by rule 247
++	UPPERCASE	reduce by rule 247
++	VERBATIM	reduce by rule 247
++	RTL	reduce by rule 247
++	SPAN	reduce by rule 247
++	DELAYSLOT	reduce by rule 247
++	ALWAYS	reduce by rule 247
++	NEVER	reduce by rule 247
++	NONFIX	reduce by rule 247
++	INFIX	reduce by rule 247
++	INFIXR	reduce by rule 247
++	DEBUG	reduce by rule 247
++	ASM_COLON	reduce by rule 247
++	MC_COLON	reduce by rule 247
++	RTL_COLON	reduce by rule 247
++	DELAYSLOT_COLON	reduce by rule 247
++	NULLIFIED_COLON	reduce by rule 247
++	PADDING_COLON	reduce by rule 247
++	RESOURCE	reduce by rule 247
++	CPU	reduce by rule 247
++	LATENCY	reduce by rule 247
++	EXCEPTION	reduce by rule 247
++	ID	reduce by rule 247
++	SYMBOL	reduce by rule 247
++	WORD	reduce by rule 247
++	INT	reduce by rule 247
++	INTINF	reduce by rule 247
++	REAL	reduce by rule 247
++	STRING	reduce by rule 247
++	CHAR	reduce by rule 247
++	EOF	reduce by rule 247
++
++
++	.	error
++
++
++state 430:
++
++	aexp : LHASHBRACKET exps . RBRACKET 
++
++	RBRACKET	shift 529
++
++
++	.	error
++
++
++state 431:
++
++	aexp : LLBRACKET rtlterms . RRBRACKET 
++
++	RRBRACKET	shift 530
++
++
++	.	error
++
++
++state 432:
++
++	rtlterms : rtlterm .  (reduce by rule 118)
++	rtlterms : rtlterm . rtlterms 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	RRBRACKET	reduce by rule 118
++	CELLSET	shift 50
++	HASH	shift 435
++	ID	shift 49
++	SYMBOL	shift 48
++	STRING	shift 91
++
++	id	goto 69
++	sym	goto 434
++	symb	goto 67
++	string	goto 433
++	rtlterm	goto 432
++	rtlterms	goto 531
++
++	.	error
++
++
++state 433:
++
++	rtlterm : string .  (reduce by rule 120)
++
++	TIMES	reduce by rule 120
++	DEREF	reduce by rule 120
++	NOT	reduce by rule 120
++	RRBRACKET	reduce by rule 120
++	CELLSET	reduce by rule 120
++	HASH	reduce by rule 120
++	ID	reduce by rule 120
++	SYMBOL	reduce by rule 120
++	STRING	reduce by rule 120
++
++
++	.	error
++
++
++state 434:
++
++	rtlterm : sym .  (reduce by rule 121)
++
++	TIMES	reduce by rule 121
++	DEREF	reduce by rule 121
++	NOT	reduce by rule 121
++	RRBRACKET	reduce by rule 121
++	CELLSET	reduce by rule 121
++	HASH	reduce by rule 121
++	ID	reduce by rule 121
++	SYMBOL	reduce by rule 121
++	STRING	reduce by rule 121
++
++
++	.	error
++
++
++state 435:
++
++	rtlterm : HASH . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 532
++
++	.	error
++
++
++state 436:
++
++	aexp : DOLLAR id . LBRACKET exp region RBRACKET 
++
++	LBRACKET	shift 533
++
++
++	.	error
++
++
++state 437:
++
++	exp : CASE typedexp . OF clauses 
++	typedexp : typedexp . COLON ty 
++
++	OF	shift 534
++	COLON	shift 458
++
++
++	.	error
++
++
++state 438:
++
++	apat : sym CONCAT LBRACKET pats . RBRACKET 
++	apat : sym CONCAT LBRACKET pats . RBRACKET CONCAT sym 
++
++	RBRACKET	shift 535
++
++
++	.	error
++
++
++state 439:
++
++	mymldecl : RTL id LBRACE labpats0 RBRACE . EQ exp 
++
++	EQ	shift 536
++
++
++	.	error
++
++
++state 440:
++
++	labpats : labpat COMMA labpats .  (reduce by rule 330)
++
++	RBRACE	reduce by rule 330
++
++
++	.	error
++
++
++state 441:
++
++	labpats : labpat COMMA DOTDOT .  (reduce by rule 329)
++
++	RBRACE	reduce by rule 329
++
++
++	.	error
++
++
++state 442:
++
++	typedpat : typedpat . COLON ty 
++	labpat : sym AS typedpat .  (reduce by rule 333)
++
++	RBRACE	reduce by rule 333
++	COMMA	reduce by rule 333
++	COLON	shift 316
++
++
++	.	error
++
++
++state 443:
++
++	typedexp : typedexp . COLON ty 
++	labpat : sym WHERE typedexp .  (reduce by rule 334)
++	labpat : sym WHERE typedexp . IN typedpat 
++
++	IN	shift 537
++	RBRACE	reduce by rule 334
++	COMMA	reduce by rule 334
++	COLON	shift 458
++
++
++	.	error
++
++
++state 444:
++
++	typedpat : typedpat . COLON ty 
++	labpat : sym EQ typedpat .  (reduce by rule 332)
++
++	RBRACE	reduce by rule 332
++	COMMA	reduce by rule 332
++	COLON	shift 316
++
++
++	.	error
++
++
++state 445:
++
++	apat : LBRACKET pats RBRACKET CONCAT . sym 
++
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 69
++	sym	goto 538
++	symb	goto 67
++
++	.	error
++
++
++state 446:
++
++	typedpat : typedpat COLON ty .  (reduce by rule 318)
++	ty : ty . ARROW ty 
++
++	AND	reduce by rule 318
++	RPAREN	reduce by rule 318
++	RBRACKET	reduce by rule 318
++	RBRACE	reduce by rule 318
++	COMMA	reduce by rule 318
++	COLON	reduce by rule 318
++	BAR	reduce by rule 318
++	ARROW	shift 388
++	DARROW	reduce by rule 318
++	WHERE	reduce by rule 318
++	EXCEPTION	reduce by rule 318
++
++
++	.	error
++
++
++state 447:
++
++	pats1 : typedpat COMMA pats1 .  (reduce by rule 324)
++
++	RPAREN	reduce by rule 324
++	RBRACKET	reduce by rule 324
++
++
++	.	error
++
++
++state 448:
++
++	typedexp : typedexp . COLON ty 
++	apat : LPAREN typedpat WHERE typedexp . RPAREN 
++	apat : LPAREN typedpat WHERE typedexp . IN typedpat RPAREN 
++
++	IN	shift 540
++	RPAREN	shift 539
++	COLON	shift 458
++
++
++	.	error
++
++
++state 449:
++
++	orpats2 : typedpat BAR orpats2 .  (reduce by rule 307)
++
++	RPAREN	reduce by rule 307
++
++
++	.	error
++
++
++state 450:
++
++	typedpat : typedpat . COLON ty 
++	orpats2 : typedpat . BAR typedpat 
++	orpats2 : typedpat BAR typedpat .  (reduce by rule 306)
++	orpats2 : typedpat . BAR orpats2 
++
++	RPAREN	reduce by rule 306
++	COLON	shift 316
++	BAR	shift 322
++
++
++	.	error
++
++
++state 451:
++
++	pats2 : typedpat COMMA pats1 .  (reduce by rule 325)
++
++	RPAREN	reduce by rule 325
++
++
++	.	error
++
++
++state 452:
++
++	andpats2 : typedpat AND andpats2 .  (reduce by rule 309)
++
++	RPAREN	reduce by rule 309
++
++
++	.	error
++
++
++state 453:
++
++	typedpat : typedpat . COLON ty 
++	andpats2 : typedpat . AND typedpat 
++	andpats2 : typedpat AND typedpat .  (reduce by rule 308)
++	andpats2 : typedpat . AND andpats2 
++
++	AND	shift 325
++	RPAREN	reduce by rule 308
++	COLON	shift 316
++
++
++	.	error
++
++
++state 454:
++
++	pipelineclause : id pat EQ LBRACKET . cycles0 RBRACKET 
++
++	LPAREN	shift 545
++	RBRACKET	reduce by rule 45
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 544
++	cycles0	goto 543
++	cycles	goto 542
++	cycle	goto 541
++
++	.	error
++
++
++state 455:
++
++	sigsubs : sigsub AND . sigsubs 
++
++	TYPE	shift 333
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 114
++	ident	goto 332
++	ident2	goto 112
++	path	goto 85
++	sigsub	goto 331
++	sigsubs	goto 546
++
++	.	error
++
++
++state 456:
++
++	sigsub : ident EQ . structexp 
++
++	CELLSET	shift 50
++	STRUCT	shift 364
++	ID	shift 49
++	SYMBOL	shift 48
++
++	structexp	goto 547
++	id	goto 114
++	ident	goto 362
++	ident2	goto 112
++	path	goto 85
++
++	.	error
++
++
++state 457:
++
++	sigsub : TYPE ident . EQ ty 
++
++	EQ	shift 548
++
++
++	.	error
++
++
++state 458:
++
++	typedexp : typedexp COLON . ty 
++
++	DOLLAR	shift 271
++	LPAREN	shift 270
++	LBRACE	shift 269
++	CELLSET	shift 50
++	HASH	shift 268
++	BITS	shift 246
++	INSTRUCTION	shift 245
++	CELL	shift 244
++	ID	shift 49
++	SYMBOL	shift 48
++	TYVAR	shift 158
++
++	id	goto 243
++	tid	goto 267
++	tid2	goto 241
++	tident	goto 266
++	tpath	goto 265
++	ty	goto 549
++	aty	goto 263
++	appty	goto 262
++	tuplety	goto 261
++	tyvar	goto 260
++
++	.	error
++
++
++state 459:
++
++	funclause : apppat funguard return_ty cont . EQ typedexp 
++
++	EQ	shift 550
++
++
++	.	error
++
++
++state 460:
++
++	cont : EXCEPTION . id 
++
++	CELLSET	shift 50
++	ID	shift 49
++	SYMBOL	shift 48
++
++	id	goto 551
++
++	.	error
++
++
++state 461:
++
++	ty : ty . ARROW ty 
++	return_ty : COLON ty .  (reduce by rule 345)
++
++	EQ	reduce by rule 345
++	ARROW	shift 388
++	EXCEPTION	reduce by rule 345
++
++
++	.	error
++
++
++state 462:
++
++	typedexp : typedexp . COLON ty 
++	funguard : WHERE LPAREN typedexp . RPAREN 
++
++	RPAREN	shift 552
++	COLON	shift 458
++
++
++	.	error
++
++
++state 463:
++
++	consbind : sym of_ty consassembly consencoding . rtl nop nullified delayslot delayslotcandidate sdi latency pipeline 
++
++	ARCHITECTURE	reduce by rule 117
++	END	reduce by rule 117
++	LOCAL	reduce by rule 117
++	IN	reduce by rule 117
++	DATATYPE	reduce by rule 117
++	TYPE	reduce by rule 117
++	AND	reduce by rule 117
++	RPAREN	reduce by rule 117
++	SEMICOLON	reduce by rule 117
++	STORAGE	reduce by rule 117
++	LOCATIONS	reduce by rule 117
++	BAR	reduce by rule 117
++	STRUCTURE	reduce by rule 117
++	FUNCTOR	reduce by rule 117
++	SIGNATURE	reduce by rule 117
++	SHARING	reduce by rule 117
++	INSTRUCTION	reduce by rule 117
++	VLIW	reduce by rule 117
++	SUPERSCALAR	reduce by rule 117
++	WITHTYPE	reduce by rule 117
++	FUN	reduce by rule 117
++	VAL	reduce by rule 117
++	INCLUDE	reduce by rule 117
++	OPEN	reduce by rule 117
++	LITTLE	reduce by rule 117
++	BIG	reduce by rule 117
++	PIPELINE	reduce by rule 117
++	LOWERCASE	reduce by rule 117
++	UPPERCASE	reduce by rule 117
++	VERBATIM	reduce by rule 117
++	RTL	reduce by rule 117
++	SPAN	reduce by rule 117
++	DELAYSLOT	reduce by rule 117
++	NONFIX	reduce by rule 117
++	INFIX	reduce by rule 117
++	INFIXR	reduce by rule 117
++	DEBUG	reduce by rule 117
++	RTL_COLON	shift 554
++	DELAYSLOT_COLON	reduce by rule 117
++	NULLIFIED_COLON	reduce by rule 117
++	PADDING_COLON	reduce by rule 117
++	RESOURCE	reduce by rule 117
++	CPU	reduce by rule 117
++	LATENCY	reduce by rule 117
++	EXCEPTION	reduce by rule 117
++	EOF	reduce by rule 117
++
++	rtl	goto 553
++
++	.	error
++
++
++state 464:
++
++	unsignedint : int .  (reduce by rule 221)
++
++	ARCHITECTURE	reduce by rule 221
++	END	reduce by rule 221
++	LOCAL	reduce by rule 221
++	IN	reduce by rule 221
++	DATATYPE	reduce by rule 221
++	TYPE	reduce by rule 221
++	AND	reduce by rule 221
++	RPAREN	reduce by rule 221
++	RBRACE	reduce by rule 221
++	SEMICOLON	reduce by rule 221
++	STORAGE	reduce by rule 221
++	LOCATIONS	reduce by rule 221
++	COMMA	reduce by rule 221
++	BAR	reduce by rule 221
++	STRUCTURE	reduce by rule 221
++	FUNCTOR	reduce by rule 221
++	SIGNATURE	reduce by rule 221
++	SHARING	reduce by rule 221
++	INSTRUCTION	reduce by rule 221
++	VLIW	reduce by rule 221
++	SUPERSCALAR	reduce by rule 221
++	WITHTYPE	reduce by rule 221
++	FUN	reduce by rule 221
++	VAL	reduce by rule 221
++	INCLUDE	reduce by rule 221
++	OPEN	reduce by rule 221
++	LITTLE	reduce by rule 221
++	BIG	reduce by rule 221
++	PIPELINE	reduce by rule 221
++	LOWERCASE	reduce by rule 221
++	UPPERCASE	reduce by rule 221
++	VERBATIM	reduce by rule 221
++	RTL	reduce by rule 221
++	SPAN	reduce by rule 221
++	DELAYSLOT	reduce by rule 221
++	NONFIX	reduce by rule 221
++	INFIX	reduce by rule 221
++	INFIXR	reduce by rule 221
++	DEBUG	reduce by rule 221
++	RTL_COLON	reduce by rule 221
++	DELAYSLOT_COLON	reduce by rule 221
++	NULLIFIED_COLON	reduce by rule 221
++	PADDING_COLON	reduce by rule 221
++	RESOURCE	reduce by rule 221
++	CPU	reduce by rule 221
++	LATENCY	reduce by rule 221
++	EXCEPTION	reduce by rule 221
++	EOF	reduce by rule 221
++
++
++	.	error
++
++
++state 465:
++
++	consencoding : unsignedint .  (reduce by rule 177)
++
++	ARCHITECTURE	reduce by rule 177
++	END	reduce by rule 177
++	LOCAL	reduce by rule 177
++	IN	reduce by rule 177
++	DATATYPE	reduce by rule 177
++	TYPE	reduce by rule 177
++	AND	reduce by rule 177
++	RPAREN	reduce by rule 177
++	SEMICOLON	reduce by rule 177
++	STORAGE	reduce by rule 177
++	LOCATIONS	reduce by rule 177
++	BAR	reduce by rule 177
++	STRUCTURE	reduce by rule 177
++	FUNCTOR	reduce by rule 177
++	SIGNATURE	reduce by rule 177
++	SHARING	reduce by rule 177
++	INSTRUCTION	reduce by rule 177
++	VLIW	reduce by rule 177
++	SUPERSCALAR	reduce by rule 177
++	WITHTYPE	reduce by rule 177
++	FUN	reduce by rule 177
++	VAL	reduce by rule 177
++	INCLUDE	reduce by rule 177
++	OPEN	reduce by rule 177
++	LITTLE	reduce by rule 177
++	BIG	reduce by rule 177
++	PIPELINE	reduce by rule 177
++	LOWERCASE	reduce by rule 177
++	UPPERCASE	reduce by rule 177
++	VERBATIM	reduce by rule 177
++	RTL	reduce by rule 177
++	SPAN	reduce by rule 177
++	DELAYSLOT	reduce by rule 177
++	NONFIX	reduce by rule 177
++	INFIX	reduce by rule 177
++	INFIXR	reduce by rule 177
++	DEBUG	reduce by rule 177
++	RTL_COLON	reduce by rule 177
++	DELAYSLOT_COLON	reduce by rule 177
++	NULLIFIED_COLON	reduce by rule 177
++	PADDING_COLON	reduce by rule 177
++	RESOURCE	reduce by rule 177
++	CPU	reduce by rule 177
++	LATENCY	reduce by rule 177
++	EXCEPTION	reduce by rule 177
++	EOF	reduce by rule 177
++
++
++	.	error
++
++
++state 466:
++
++	unsignedint : word .  (reduce by rule 222)
++
++	ARCHITECTURE	reduce by rule 222
++	END	reduce by rule 222
++	LOCAL	reduce by rule 222
++	IN	reduce by rule 222
++	DATATYPE	reduce by rule 222
++	TYPE	reduce by rule 222
++	AND	reduce by rule 222
++	RPAREN	reduce by rule 222
++	RBRACE	reduce by rule 222
++	SEMICOLON	reduce by rule 222
++	STORAGE	reduce by rule 222
++	LOCATIONS	reduce by rule 222
++	COMMA	reduce by rule 222
++	BAR	reduce by rule 222
++	STRUCTURE	reduce by rule 222
++	FUNCTOR	reduce by rule 222
++	SIGNATURE	reduce by rule 222
++	SHARING	reduce by rule 222
++	INSTRUCTION	reduce by rule 222
++	VLIW	reduce by rule 222
++	SUPERSCALAR	reduce by rule 222
++	WITHTYPE	reduce by rule 222
++	FUN	reduce by rule 222
++	VAL	reduce by rule 222
++	INCLUDE	reduce by rule 222
++	OPEN	reduce by rule 222
++	LITTLE	reduce by rule 222
++	BIG	reduce by rule 222
++	PIPELINE	reduce by rule 222
++	LOWERCASE	reduce by rule 222
++	UPPERCASE	reduce by rule 222
++	VERBATIM	reduce by rule 222
++	RTL	reduce by rule 222
++	SPAN	reduce by rule 222
++	DELAYSLOT	reduce by rule 222
++	NONFIX	reduce by rule 222
++	INFIX	reduce by rule 222
++	INFIXR	reduce by rule 222
++	DEBUG	reduce by rule 222
++	RTL_COLON	reduce by rule 222
++	DELAYSLOT_COLON	reduce by rule 222
++	NULLIFIED_COLON	reduce by rule 222
++	PADDING_COLON	reduce by rule 222
++	RESOURCE	reduce by rule 222
++	CPU	reduce by rule 222
++	LATENCY	reduce by rule 222
++	EXCEPTION	reduce by rule 222
++	EOF	reduce by rule 222
++
++
++	.	error
++
++
++state 467:
++
++	consencoding : id . LBRACE labexps0 RBRACE 
++
++	LBRACE	shift 555
++
++
++	.	error
++
++
++state 468:
++
++	consencoding : MC_COLON . exp 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE	shift 98
++	RAISE	shift 289
++	LET	shift 288
++	OP	shift 287
++	ALWAYS	shift 96
++	NEVER	shift 95
++	ID	shift 49
++	SYMBOL	shift 48
++	WORD	shift 94
++	INT	shift 64
++	INTINF	shift 93
++	REAL	shift 92
++	STRING	shift 91
++	CHAR	shift 90
++
++	id	goto 135
++	sym	goto 286
++	symb	goto 67
++	ident2	goto 285
++	path	goto 85
++	aexp	goto 284
++	aexp2	goto 283
++	appexp	goto 282
++	exp	goto 556
++	word	goto 82
++	int	goto 81
++	intinf	goto 80
++	real	goto 79
++	string	goto 78
++	char	goto 77
++	bool	goto 76
++	literal	goto 280
++	asm_strings	goto 279
++	True	goto 74
++	False	goto 73
++
++	.	error
++
++
++state 469:
++
++	consencoding : LPAREN . expseq RPAREN 
++	consencoding : LPAREN . exps2 RPAREN 
++
++	CASE	shift 301
++	EQ	shift 300
++	DOLLAR	shift 299
++	TIMES	shift 72
++	DEREF	shift 71
++	NOT	shift 70
++	LLBRACKET	shift 298
++	LHASHBRACKET	shift 297
++	LPAREN	shift 296
++	LBRACKET	shift 295
++	LBRACE	shift 294
++	LDQUOTE	shift 293
++	CELLSET	shift 50
++	FN	shift 292
++	HASH	shift 291
++	IF	shift 290
++	TRUE	shift 99
++	FALSE