Toggle navigation
Toggle navigation
This project
Loading...
Sign in
Franck Pommereau
/
cct
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Issues
0
Wiki
Network
Create a new issue
Commits
Authored by
Franck Pommereau
2018-04-20 16:40:10 +0200
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
1d59a46d3f306f136d1e3cfbba8168d654224503
1d59a46d
1 parent
75ec9cdd
cosmetic changes
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
96 additions
and
90 deletions
cctlib/cparse.py
cctlib/cttc.py
cctlib/parsetab.py
cctlib/cparse.py
View file @
1d59a46
...
...
@@ -448,7 +448,6 @@ precedence = (
class
ParseError
(
Exception
):
"Exception raised whenever a parsing error occurs."
pass
def
p_translation_unit_01
(
t
):
...
...
cctlib/cttc.py
View file @
1d59a46
...
...
@@ -178,14 +178,21 @@ class CodeGenVisitor (Visitor) :
"# Franck Pommereau (2018)
\n
"
"# Adapted from Atul Varma's c.py (Spring 2004)
\n
"
)
for
c
in
chunks
:
outfile
.
write
(
"
\n
# code from file
%
r
\n
"
%
c
.
path
)
outfile
.
write
(
c
.
curr_str
.
getvalue
())
s
=
c
.
curr_str
.
getvalue
()
if
s
.
strip
()
:
outfile
.
write
(
"
\n
###
\n
### code from file
%
r
\n
###
\n
"
%
c
.
path
)
outfile
.
write
(
s
)
for
c
in
chunks
:
outfile
.
write
(
"
\n
# globals from file
%
r
\n\n
"
%
c
.
path
)
outfile
.
write
(
c
.
globals_str
.
getvalue
())
s
=
c
.
globals_str
.
getvalue
()
if
s
.
strip
()
:
outfile
.
write
(
"
\n
###
\n
### globals from file
%
r
\n
###
\n\n
"
%
c
.
path
)
outfile
.
write
(
s
)
for
c
in
chunks
:
outfile
.
write
(
"
\n
# string literals from file
%
r
\n\n
"
%
c
.
path
)
outfile
.
write
(
c
.
str_literal_str
.
getvalue
())
s
=
c
.
str_literal_str
.
getvalue
()
if
s
.
strip
()
:
outfile
.
write
(
"
\n
###
\n
### string literals from file
%
r
\n
###
\n\n
"
%
c
.
path
)
outfile
.
write
(
s
)
def
_calc_function_var_addrs
(
self
,
symtab
,
last_fp_loc
):
self
.
_calc_function_arg_addrs
(
symtab
)
...
...
cctlib/parsetab.py
View file @
1d59a46
...
...
@@ -8,7 +8,7 @@ _lr_method = 'LALR'
_lr_signature
=
'rightELSEAMPERSAND ARROW ASSIGN ASTERISK AUTO BREAK CARET CASE CHAR CHARACTER COLON COMMA CONST CONTINUE DEFAULT DIV DO DOT DOUBLE DOUBLE_AMPERSAND DOUBLE_MINUS DOUBLE_PIPE DOUBLE_PLUS ELLIPSIS ELSE ENUM EQ EQ_AMPERSAND EQ_CARET EQ_DIV EQ_MINUS EQ_MODULO EQ_PIPE EQ_PLUS EQ_SHIFT_LEFT EQ_SHIFT_RIGHT EQ_TIMES EXCLAMATION EXTERN FLOAT FNUMBER FOR GOTO GREATER GREATER_EQ ID IF INT INUMBER LBRACE LBRACKET LESS LESS_EQ LONG LPAREN MINUS MODULO NOT_EQ PIPE PLUS POUND QUESTION RBRACE RBRACKET REGISTER RETURN RPAREN SEMICOLON SHIFT_LEFT SHIFT_RIGHT SHORT SIGNED SIZEOF STATIC STRING STRUCT SWITCH TILDE TYPEDEF UNION UNSIGNED VOID VOLATILE WHILEtranslation_unit : external_declarationtranslation_unit : translation_unit external_declarationexternal_declaration : function_definition
\n
| declarationfunction_definition : type_specifier declarator compound_statementfunction_definition : STATIC type_specifier declarator compound_statementdeclaration : type_specifier declarator SEMICOLONdeclaration : EXTERN type_specifier declarator SEMICOLONdeclaration_list_opt : emptydeclaration_list_opt : declaration_listdeclaration_list : declarationdeclaration_list : declaration_list declarationtype_specifier : INT
\n
| CHARdeclarator : direct_declaratordeclarator : ASTERISK declaratordirect_declarator : IDdirect_declarator : direct_declarator LPAREN parameter_type_list RPARENdirect_declarator : direct_declarator LPAREN RPARENparameter_type_list : parameter_listparameter_type_list : parameter_list COMMA ELLIPSISparameter_list : parameter_declarationparameter_list : parameter_list COMMA parameter_declarationparameter_declaration : type_specifier declaratorcompound_statement : LBRACE declaration_list_opt statement_list RBRACEcompound_statement : LBRACE declaration_list_opt RBRACEexpression_statement : expression SEMICOLONexpression : equality_expressionexpression : equality_expression ASSIGN expression
\n
| equality_expression EQ_PLUS expression
\n
| equality_expression EQ_MINUS expressionequality_expression : relational_expressionequality_expression : equality_expression EQ relational_expression
\n
| equality_expression NOT_EQ relational_expressionrelational_expression : additive_expressionrelational_expression : relational_expression LESS additive_expression
\n
| relational_expression GREATER additive_expression
\n
| relational_expression LESS_EQ additive_expression
\n
| relational_expression GREATER_EQ additive_expressionpostfix_expression : primary_expressionpostfix_expression : postfix_expression LPAREN argument_expression_list RPARENpostfix_expression : postfix_expression LPAREN RPARENpostfix_expression : postfix_expression LBRACKET expression RBRACKETargument_expression_list : expressionargument_expression_list : argument_expression_list COMMA expressionunary_expression : postfix_expressionunary_expression : MINUS unary_expressionunary_expression : EXCLAMATION unary_expressionunary_expression : ASTERISK unary_expressionunary_expression : AMPERSAND unary_expressionmult_expression : unary_expressionmult_expression : mult_expression ASTERISK unary_expression
\n
| mult_expression DIV unary_expression
\n
| mult_expression MODULO unary_expressionadditive_expression : mult_expressionadditive_expression : additive_expression PLUS mult_expression
\n
| additive_expression MINUS mult_expressionprimary_expression : IDprimary_expression : INUMBERprimary_expression : FNUMBERprimary_expression : CHARACTERprimary_expression : string_literalprimary_expression : LPAREN expression RPARENstring_literal : STRINGstring_literal : string_literal STRINGstatement : compound_statement
\n
| expression_statement
\n
| selection_statement
\n
| iteration_statement
\n
| jump_statementjump_statement : RETURN SEMICOLONjump_statement : RETURN expression SEMICOLONjump_statement : BREAK SEMICOLONjump_statement : CONTINUE SEMICOLONiteration_statement : WHILE LPAREN expression RPAREN statementiteration_statement : FOR LPAREN expression_statement expression_statement expression RPAREN statementselection_statement : IF LPAREN expression RPAREN statementselection_statement : IF LPAREN expression RPAREN statement ELSE statementstatement_list : statementstatement_list : statement_list statementempty :'
_lr_action_items
=
{
'
ASSIGN'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
102
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
34
,
-
43
,
-
41
,]),
'BREAK'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
65
,
-
10
,
-
8
,
-
79
,
-
26
,
65
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
65
,
65
,
-
75
,
-
77
,
65
,
65
,
-
76
,
-
78
,]),
'LESS'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
78
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
78
,
78
,
-
43
,
-
41
,]),
'IF'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
64
,
-
10
,
-
8
,
-
79
,
-
26
,
64
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
64
,
64
,
-
75
,
-
77
,
64
,
64
,
-
76
,
-
78
,]),
'NOT_EQ'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
104
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
34
,
-
43
,
-
41
,]),
'FOR'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
58
,
-
10
,
-
8
,
-
79
,
-
26
,
58
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
58
,
58
,
-
75
,
-
77
,
58
,
58
,
-
76
,
-
78
,]),
'MINUS'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
42
,
43
,
44
,
45
,
46
,
47
,
48
,
50
,
51
,
52
,
53
,
54
,
55
,
56
,
57
,
59
,
60
,
61
,
62
,
63
,
66
,
67
,
69
,
72
,
73
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
123
,
130
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
62
,
-
10
,
-
8
,
62
,
-
62
,
83
,
-
79
,
62
,
-
26
,
-
51
,
-
64
,
-
59
,
62
,
-
46
,
-
68
,
62
,
-
55
,
-
70
,
-
66
,
-
60
,
62
,
-
58
,
62
,
-
40
,
-
67
,
-
61
,
-
69
,
62
,
-
12
,
-
48
,
62
,
62
,
62
,
62
,
-
65
,
62
,
62
,
62
,
-
80
,
-
25
,
62
,
62
,
-
50
,
62
,
62
,
62
,
62
,
-
49
,
-
47
,
62
,
-
73
,
-
74
,
-
27
,
62
,
62
,
62
,
62
,
62
,
-
71
,
83
,
83
,
83
,
83
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
62
,
-
72
,
62
,
-
43
,
62
,
-
41
,
62
,
62
,
-
75
,
-
77
,
62
,
62
,
-
76
,
-
78
,]),
'GREATER'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
80
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
80
,
80
,
-
43
,
-
41
,]),
'COMMA'
:([
12
,
15
,
22
,
26
,
27
,
28
,
36
,
38
,
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
75
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
118
,
119
,
120
,
121
,
122
,
125
,
126
,
127
,
128
,
129
,
132
,
134
,
138
,],[
-
15
,
-
17
,
-
16
,
37
,
-
19
,
-
22
,
-
24
,
-
18
,
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
28
,
-
23
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
44
,
133
,
-
52
,
-
54
,
-
53
,
-
33
,
-
29
,
-
31
,
-
34
,
-
30
,
-
43
,
-
41
,
-
45
,]),
'RPAREN'
:([
12
,
15
,
18
,
22
,
26
,
27
,
28
,
29
,
36
,
38
,
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
74
,
75
,
76
,
81
,
84
,
89
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
117
,
118
,
119
,
120
,
121
,
122
,
124
,
125
,
126
,
127
,
128
,
129
,
132
,
134
,
138
,
139
,],[
-
15
,
-
17
,
27
,
-
16
,
-
20
,
-
19
,
-
22
,
38
,
-
24
,
-
18
,
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
28
,
-
21
,
-
23
,
-
48
,
-
65
,
114
,
117
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
131
,
-
42
,
-
44
,
134
,
-
52
,
-
54
,
-
53
,
136
,
-
33
,
-
29
,
-
31
,
-
34
,
-
30
,
-
43
,
-
41
,
-
45
,
141
,]),
'LESS_EQ'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
79
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
79
,
79
,
-
43
,
-
41
,]),
'EQ_MINUS'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
103
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
34
,
-
43
,
-
41
,]),
'ASTERISK'
:([
4
,
5
,
8
,
11
,
14
,
16
,
19
,
21
,
25
,
30
,
31
,
32
,
33
,
34
,
35
,
40
,
42
,
44
,
45
,
46
,
47
,
48
,
50
,
51
,
52
,
53
,
54
,
55
,
56
,
57
,
59
,
60
,
61
,
62
,
63
,
66
,
67
,
69
,
72
,
73
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
123
,
130
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
14
,
-
13
,
-
14
,
14
,
14
,
14
,
-
81
,
-
7
,
14
,
-
9
,
14
,
-
11
,
60
,
-
10
,
-
8
,
60
,
-
62
,
-
79
,
60
,
-
26
,
-
51
,
-
64
,
-
59
,
60
,
-
46
,
-
68
,
60
,
91
,
-
70
,
-
66
,
-
60
,
60
,
-
58
,
60
,
-
40
,
-
67
,
-
61
,
-
69
,
60
,
-
12
,
-
48
,
60
,
60
,
60
,
60
,
-
65
,
60
,
60
,
60
,
-
80
,
-
25
,
60
,
60
,
-
50
,
60
,
60
,
60
,
60
,
-
49
,
-
47
,
60
,
-
73
,
-
74
,
-
27
,
60
,
60
,
60
,
60
,
60
,
-
71
,
91
,
91
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
60
,
-
72
,
60
,
-
43
,
60
,
-
41
,
60
,
60
,
-
75
,
-
77
,
60
,
60
,
-
76
,
-
78
,]),
'EQ'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
101
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
34
,
-
43
,
-
41
,]),
'CHAR'
:([
0
,
1
,
2
,
3
,
6
,
7
,
9
,
10
,
18
,
19
,
20
,
21
,
24
,
32
,
34
,
35
,
37
,
46
,
73
,
87
,],[
8
,
8
,
-
3
,
8
,
-
4
,
-
1
,
8
,
-
2
,
8
,
8
,
-
5
,
-
7
,
-
6
,
-
11
,
8
,
-
8
,
8
,
-
26
,
-
12
,
-
25
,]),
'LPAREN'
:([
12
,
15
,
19
,
21
,
27
,
30
,
32
,
33
,
34
,
35
,
38
,
40
,
42
,
44
,
45
,
46
,
48
,
49
,
50
,
51
,
52
,
53
,
54
,
56
,
57
,
58
,
59
,
60
,
61
,
62
,
63
,
64
,
66
,
67
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
114
,
117
,
123
,
130
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
18
,
-
17
,
-
81
,
-
7
,
-
19
,
-
9
,
-
11
,
45
,
-
10
,
-
8
,
-
18
,
45
,
-
62
,
-
79
,
45
,
-
26
,
-
64
,
85
,
-
59
,
45
,
89
,
-
68
,
45
,
-
70
,
-
66
,
94
,
-
60
,
45
,
-
58
,
45
,
-
40
,
97
,
-
67
,
-
61
,
-
69
,
45
,
-
12
,
45
,
45
,
45
,
45
,
-
65
,
45
,
45
,
45
,
-
80
,
-
25
,
45
,
45
,
45
,
45
,
45
,
45
,
45
,
-
73
,
-
74
,
-
27
,
45
,
45
,
45
,
45
,
45
,
-
71
,
-
63
,
-
42
,
45
,
-
72
,
45
,
-
43
,
45
,
-
41
,
45
,
45
,
-
75
,
-
77
,
45
,
45
,
-
76
,
-
78
,]),
'EXTERN'
:([
0
,
1
,
2
,
6
,
7
,
10
,
19
,
20
,
21
,
24
,
32
,
34
,
35
,
46
,
73
,
87
,],[
9
,
9
,
-
3
,
-
4
,
-
1
,
-
2
,
9
,
-
5
,
-
7
,
-
6
,
-
11
,
9
,
-
8
,
-
26
,
-
12
,
-
25
,]),
'MODULO'
:([
42
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
132
,
134
,],[
-
62
,
-
51
,
-
64
,
-
59
,
-
46
,
92
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
92
,
92
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
43
,
-
41
,]),
'RBRACE'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
137
,
140
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
46
,
-
10
,
-
8
,
-
79
,
-
26
,
87
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
-
75
,
-
77
,
-
76
,
-
78
,]),
'$end'
:([
1
,
2
,
6
,
7
,
10
,
20
,
21
,
24
,
35
,
46
,
87
,],[
0
,
-
3
,
-
4
,
-
1
,
-
2
,
-
5
,
-
7
,
-
6
,
-
8
,
-
26
,
-
25
,]),
'EQ_PLUS'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
105
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
34
,
-
43
,
-
41
,]),
'ID'
:([
4
,
5
,
8
,
11
,
14
,
16
,
19
,
21
,
25
,
30
,
31
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
15
,
-
13
,
-
14
,
15
,
15
,
15
,
-
81
,
-
7
,
15
,
-
9
,
15
,
-
11
,
61
,
-
10
,
-
8
,
61
,
-
79
,
61
,
-
26
,
61
,
-
68
,
61
,
-
70
,
-
66
,
61
,
61
,
-
67
,
-
69
,
61
,
-
12
,
61
,
61
,
61
,
61
,
61
,
61
,
61
,
-
80
,
-
25
,
61
,
61
,
61
,
61
,
61
,
61
,
61
,
-
73
,
-
74
,
-
27
,
61
,
61
,
61
,
61
,
61
,
-
71
,
61
,
-
72
,
61
,
61
,
61
,
61
,
-
75
,
-
77
,
61
,
61
,
-
76
,
-
78
,]),
'STRING'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
42
,
44
,
45
,
46
,
48
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
48
,
-
10
,
-
8
,
48
,
81
,
-
79
,
48
,
-
26
,
-
64
,
48
,
-
68
,
48
,
-
70
,
-
66
,
48
,
48
,
-
67
,
-
69
,
48
,
-
12
,
48
,
48
,
48
,
48
,
-
65
,
48
,
48
,
48
,
-
80
,
-
25
,
48
,
48
,
48
,
48
,
48
,
48
,
48
,
-
73
,
-
74
,
-
27
,
48
,
48
,
48
,
48
,
48
,
-
71
,
48
,
-
72
,
48
,
48
,
48
,
48
,
-
75
,
-
77
,
48
,
48
,
-
76
,
-
78
,]),
'PLUS'
:([
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
132
,
134
,],[
-
62
,
82
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
82
,
82
,
82
,
82
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
43
,
-
41
,]),
'GREATER_EQ'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
128
,
132
,
134
,],[
77
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
77
,
77
,
-
43
,
-
41
,]),
'WHILE'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
49
,
-
10
,
-
8
,
-
79
,
-
26
,
49
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
49
,
49
,
-
75
,
-
77
,
49
,
49
,
-
76
,
-
78
,]),
'INUMBER'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
50
,
-
10
,
-
8
,
50
,
-
79
,
50
,
-
26
,
50
,
-
68
,
50
,
-
70
,
-
66
,
50
,
50
,
-
67
,
-
69
,
50
,
-
12
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
-
80
,
-
25
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
-
73
,
-
74
,
-
27
,
50
,
50
,
50
,
50
,
50
,
-
71
,
50
,
-
72
,
50
,
50
,
50
,
50
,
-
75
,
-
77
,
50
,
50
,
-
76
,
-
78
,]),
'LBRACKET'
:([
42
,
48
,
50
,
52
,
59
,
61
,
63
,
67
,
81
,
114
,
117
,
132
,
134
,],[
-
62
,
-
64
,
-
59
,
88
,
-
60
,
-
58
,
-
40
,
-
61
,
-
65
,
-
63
,
-
42
,
-
43
,
-
41
,]),
'EXCLAMATION'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
40
,
-
10
,
-
8
,
40
,
-
79
,
40
,
-
26
,
40
,
-
68
,
40
,
-
70
,
-
66
,
40
,
40
,
-
67
,
-
69
,
40
,
-
12
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
-
80
,
-
25
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
-
73
,
-
74
,
-
27
,
40
,
40
,
40
,
40
,
40
,
-
71
,
40
,
-
72
,
40
,
40
,
40
,
40
,
-
75
,
-
77
,
40
,
40
,
-
76
,
-
78
,]),
'SEMICOLON'
:([
12
,
13
,
15
,
22
,
23
,
27
,
38
,
39
,
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
65
,
67
,
68
,
70
,
71
,
72
,
76
,
81
,
90
,
95
,
96
,
107
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
125
,
126
,
127
,
128
,
129
,
132
,
134
,],[
-
15
,
21
,
-
17
,
-
16
,
35
,
-
19
,
-
18
,
21
,
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
98
,
-
61
,
99
,
100
,
-
28
,
106
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
130
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
29
,
-
31
,
-
34
,
-
30
,
-
43
,
-
41
,]),
'STATIC'
:([
0
,
1
,
2
,
6
,
7
,
10
,
20
,
21
,
24
,
35
,
46
,
87
,],[
3
,
3
,
-
3
,
-
4
,
-
1
,
-
2
,
-
5
,
-
7
,
-
6
,
-
8
,
-
26
,
-
25
,]),
'CHARACTER'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
67
,
-
10
,
-
8
,
67
,
-
79
,
67
,
-
26
,
67
,
-
68
,
67
,
-
70
,
-
66
,
67
,
67
,
-
67
,
-
69
,
67
,
-
12
,
67
,
67
,
67
,
67
,
67
,
67
,
67
,
-
80
,
-
25
,
67
,
67
,
67
,
67
,
67
,
67
,
67
,
-
73
,
-
74
,
-
27
,
67
,
67
,
67
,
67
,
67
,
-
71
,
67
,
-
72
,
67
,
67
,
67
,
67
,
-
75
,
-
77
,
67
,
67
,
-
76
,
-
78
,]),
'ELLIPSIS'
:([
37
,],[
74
,]),
'CONTINUE'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
68
,
-
10
,
-
8
,
-
79
,
-
26
,
68
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
68
,
68
,
-
75
,
-
77
,
68
,
68
,
-
76
,
-
78
,]),
'AMPERSAND'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
54
,
-
10
,
-
8
,
54
,
-
79
,
54
,
-
26
,
54
,
-
68
,
54
,
-
70
,
-
66
,
54
,
54
,
-
67
,
-
69
,
54
,
-
12
,
54
,
54
,
54
,
54
,
54
,
54
,
54
,
-
80
,
-
25
,
54
,
54
,
54
,
54
,
54
,
54
,
54
,
-
73
,
-
74
,
-
27
,
54
,
54
,
54
,
54
,
54
,
-
71
,
54
,
-
72
,
54
,
54
,
54
,
54
,
-
75
,
-
77
,
54
,
54
,
-
76
,
-
78
,]),
'FNUMBER'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
40
,
44
,
45
,
46
,
51
,
53
,
54
,
56
,
57
,
60
,
62
,
66
,
69
,
72
,
73
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
86
,
87
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
106
,
123
,
130
,
131
,
133
,
135
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
59
,
-
10
,
-
8
,
59
,
-
79
,
59
,
-
26
,
59
,
-
68
,
59
,
-
70
,
-
66
,
59
,
59
,
-
67
,
-
69
,
59
,
-
12
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
-
80
,
-
25
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
-
73
,
-
74
,
-
27
,
59
,
59
,
59
,
59
,
59
,
-
71
,
59
,
-
72
,
59
,
59
,
59
,
59
,
-
75
,
-
77
,
59
,
59
,
-
76
,
-
78
,]),
'INT'
:([
0
,
1
,
2
,
3
,
6
,
7
,
9
,
10
,
18
,
19
,
20
,
21
,
24
,
32
,
34
,
35
,
37
,
46
,
73
,
87
,],[
5
,
5
,
-
3
,
5
,
-
4
,
-
1
,
5
,
-
2
,
5
,
5
,
-
5
,
-
7
,
-
6
,
-
11
,
5
,
-
8
,
5
,
-
26
,
-
12
,
-
25
,]),
'RBRACKET'
:([
41
,
42
,
43
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
71
,
76
,
81
,
90
,
95
,
96
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
116
,
117
,
120
,
121
,
122
,
125
,
126
,
127
,
128
,
129
,
132
,
134
,],[
-
32
,
-
62
,
-
35
,
-
51
,
-
64
,
-
59
,
-
46
,
-
55
,
-
60
,
-
58
,
-
40
,
-
61
,
-
28
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
-
39
,
-
36
,
-
38
,
-
37
,
-
56
,
-
57
,
-
63
,
132
,
-
42
,
-
52
,
-
54
,
-
53
,
-
33
,
-
29
,
-
31
,
-
34
,
-
30
,
-
43
,
-
41
,]),
'LBRACE'
:([
12
,
13
,
15
,
17
,
19
,
21
,
22
,
27
,
30
,
32
,
33
,
34
,
35
,
38
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
15
,
19
,
-
17
,
19
,
-
81
,
-
7
,
-
16
,
-
19
,
-
9
,
-
11
,
19
,
-
10
,
-
8
,
-
18
,
-
79
,
-
26
,
19
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
19
,
19
,
-
75
,
-
77
,
19
,
19
,
-
76
,
-
78
,]),
'ELSE'
:([
46
,
53
,
56
,
57
,
66
,
69
,
87
,
98
,
99
,
100
,
106
,
130
,
137
,
140
,
143
,
144
,],[
-
26
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
-
75
,
142
,
-
76
,
-
78
,]),
'RETURN'
:([
19
,
21
,
30
,
32
,
33
,
34
,
35
,
44
,
46
,
51
,
53
,
56
,
57
,
66
,
69
,
73
,
86
,
87
,
98
,
99
,
100
,
106
,
130
,
131
,
136
,
137
,
140
,
141
,
142
,
143
,
144
,],[
-
81
,
-
7
,
-
9
,
-
11
,
72
,
-
10
,
-
8
,
-
79
,
-
26
,
72
,
-
68
,
-
70
,
-
66
,
-
67
,
-
69
,
-
12
,
-
80
,
-
25
,
-
73
,
-
74
,
-
27
,
-
71
,
-
72
,
72
,
72
,
-
75
,
-
77
,
72
,
72
,
-
76
,
-
78
,]),
'DIV'
:([
42
,
47
,
48
,
50
,
52
,
55
,
59
,
61
,
63
,
67
,
76
,
81
,
90
,
95
,
96
,
112
,
113
,
114
,
117
,
120
,
121
,
122
,
132
,
134
,],[
-
62
,
-
51
,
-
64
,
-
59
,
-
46
,
93
,
-
60
,
-
58
,
-
40
,
-
61
,
-
48
,
-
65
,
-
50
,
-
49
,
-
47
,
93
,
93
,
-
63
,
-
42
,
-
52
,
-
54
,
-
53
,
-
43
,
-
41
,]),}
_lr_action_items
=
{
'
ELLIPSIS'
:([
73
,],[
106
,]),
'GREATER'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
83
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
83
,
83
,
-
42
,
-
43
,
-
41
,]),
'GREATER_EQ'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
84
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
84
,
84
,
-
42
,
-
43
,
-
41
,]),
'INT'
:([
0
,
1
,
2
,
4
,
5
,
8
,
9
,
10
,
19
,
20
,
21
,
22
,
24
,
25
,
27
,
35
,
44
,
69
,
73
,
89
,],[
7
,
7
,
-
4
,
-
1
,
7
,
-
3
,
7
,
-
2
,
-
7
,
-
5
,
7
,
7
,
-
6
,
-
11
,
7
,
-
8
,
-
26
,
-
12
,
7
,
-
25
,]),
'IF'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
36
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
36
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
36
,
36
,
-
77
,
-
75
,
36
,
36
,
-
78
,
-
76
,]),
'MODULO'
:([
42
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
129
,
134
,
136
,],[
80
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
80
,
80
,
-
53
,
-
54
,
-
52
,
-
42
,
-
43
,
-
41
,]),
'COMMA'
:([
12
,
15
,
18
,
30
,
31
,
34
,
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
71
,
72
,
87
,
88
,
94
,
101
,
102
,
107
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
122
,
123
,
124
,
125
,
128
,
129
,
130
,
134
,
136
,
140
,],[
-
17
,
-
15
,
-
16
,
-
22
,
-
19
,
73
,
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
28
,
-
51
,
-
46
,
-
61
,
-
18
,
-
24
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
23
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
29
,
-
30
,
-
31
,
-
33
,
135
,
-
42
,
-
44
,
-
43
,
-
41
,
-
45
,]),
'LESS'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
85
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
85
,
85
,
-
42
,
-
43
,
-
41
,]),
'ID'
:([
3
,
6
,
7
,
11
,
13
,
16
,
19
,
21
,
25
,
26
,
27
,
28
,
29
,
33
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
14
,
12
,
-
13
,
12
,
12
,
12
,
-
7
,
-
81
,
-
11
,
52
,
-
10
,
12
,
-
9
,
12
,
-
8
,
52
,
-
70
,
-
69
,
-
26
,
-
79
,
52
,
-
67
,
52
,
52
,
-
66
,
52
,
52
,
52
,
-
68
,
-
12
,
52
,
-
74
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
-
73
,
-
25
,
-
80
,
52
,
-
71
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
-
27
,
-
72
,
52
,
52
,
52
,
52
,
52
,
-
77
,
-
75
,
52
,
52
,
-
78
,
-
76
,]),
'RPAREN'
:([
12
,
15
,
18
,
22
,
30
,
31
,
32
,
34
,
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
71
,
72
,
75
,
87
,
88
,
94
,
101
,
102
,
104
,
106
,
107
,
108
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
119
,
121
,
122
,
123
,
124
,
125
,
128
,
129
,
130
,
134
,
136
,
139
,
140
,],[
-
17
,
-
15
,
-
16
,
31
,
-
22
,
-
19
,
71
,
-
20
,
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
28
,
-
51
,
-
46
,
-
61
,
-
18
,
-
24
,
109
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
129
,
-
21
,
-
23
,
131
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
132
,
-
34
,
-
29
,
-
30
,
-
31
,
-
33
,
136
,
-
42
,
-
44
,
-
43
,
-
41
,
142
,
-
45
,]),
'BREAK'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
45
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
45
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
45
,
45
,
-
77
,
-
75
,
45
,
45
,
-
78
,
-
76
,]),
'EQ'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
99
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'INUMBER'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
59
,
-
10
,
-
9
,
-
8
,
59
,
-
70
,
-
69
,
-
26
,
-
79
,
59
,
-
67
,
59
,
59
,
-
66
,
59
,
59
,
59
,
-
68
,
-
12
,
59
,
-
74
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
-
73
,
-
25
,
-
80
,
59
,
-
71
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
59
,
-
27
,
-
72
,
59
,
59
,
59
,
59
,
59
,
-
77
,
-
75
,
59
,
59
,
-
78
,
-
76
,]),
'NOT_EQ'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
95
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'LPAREN'
:([
12
,
15
,
19
,
21
,
25
,
26
,
27
,
29
,
31
,
35
,
36
,
37
,
39
,
41
,
44
,
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
54
,
55
,
56
,
57
,
58
,
59
,
61
,
63
,
64
,
65
,
66
,
68
,
69
,
71
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
88
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
109
,
120
,
126
,
129
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
17
,
22
,
-
7
,
-
81
,
-
11
,
37
,
-
10
,
-
9
,
-
19
,
-
8
,
74
,
37
,
-
70
,
-
69
,
-
26
,
-
40
,
-
79
,
37
,
-
60
,
-
62
,
-
67
,
-
58
,
37
,
91
,
37
,
-
66
,
-
64
,
37
,
-
59
,
100
,
37
,
37
,
104
,
-
61
,
-
68
,
-
12
,
-
18
,
37
,
-
74
,
37
,
37
,
37
,
37
,
37
,
37
,
37
,
37
,
37
,
-
73
,
-
65
,
-
25
,
-
80
,
37
,
-
71
,
37
,
37
,
37
,
37
,
37
,
37
,
37
,
37
,
-
27
,
-
63
,
-
72
,
37
,
-
42
,
37
,
37
,
37
,
-
43
,
37
,
-
41
,
-
77
,
-
75
,
37
,
37
,
-
78
,
-
76
,]),
'ELSE'
:([
39
,
41
,
44
,
51
,
56
,
68
,
76
,
86
,
89
,
93
,
105
,
120
,
137
,
138
,
143
,
144
,],[
-
70
,
-
69
,
-
26
,
-
67
,
-
66
,
-
68
,
-
74
,
-
73
,
-
25
,
-
71
,
-
27
,
-
72
,
141
,
-
75
,
-
78
,
-
76
,]),
'CONTINUE'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
38
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
38
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
38
,
38
,
-
77
,
-
75
,
38
,
38
,
-
78
,
-
76
,]),
'EXCLAMATION'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
64
,
-
10
,
-
9
,
-
8
,
64
,
-
70
,
-
69
,
-
26
,
-
79
,
64
,
-
67
,
64
,
64
,
-
66
,
64
,
64
,
64
,
-
68
,
-
12
,
64
,
-
74
,
64
,
64
,
64
,
64
,
64
,
64
,
64
,
64
,
64
,
-
73
,
-
25
,
-
80
,
64
,
-
71
,
64
,
64
,
64
,
64
,
64
,
64
,
64
,
64
,
-
27
,
-
72
,
64
,
64
,
64
,
64
,
64
,
-
77
,
-
75
,
64
,
64
,
-
78
,
-
76
,]),
'LBRACE'
:([
12
,
14
,
15
,
17
,
18
,
19
,
21
,
25
,
26
,
27
,
29
,
31
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
71
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
17
,
21
,
-
15
,
21
,
-
16
,
-
7
,
-
81
,
-
11
,
21
,
-
10
,
-
9
,
-
19
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
21
,
-
66
,
-
68
,
-
12
,
-
18
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
21
,
21
,
-
77
,
-
75
,
21
,
21
,
-
78
,
-
76
,]),
'STRING'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
50
,
51
,
53
,
55
,
56
,
57
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
88
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
57
,
-
10
,
-
9
,
-
8
,
57
,
-
70
,
-
69
,
-
26
,
-
79
,
57
,
88
,
-
67
,
57
,
57
,
-
66
,
-
64
,
57
,
57
,
57
,
-
68
,
-
12
,
57
,
-
74
,
57
,
57
,
57
,
57
,
57
,
57
,
57
,
57
,
57
,
-
73
,
-
65
,
-
25
,
-
80
,
57
,
-
71
,
57
,
57
,
57
,
57
,
57
,
57
,
57
,
57
,
-
27
,
-
72
,
57
,
57
,
57
,
57
,
57
,
-
77
,
-
75
,
57
,
57
,
-
78
,
-
76
,]),
'FNUMBER'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
49
,
-
10
,
-
9
,
-
8
,
49
,
-
70
,
-
69
,
-
26
,
-
79
,
49
,
-
67
,
49
,
49
,
-
66
,
49
,
49
,
49
,
-
68
,
-
12
,
49
,
-
74
,
49
,
49
,
49
,
49
,
49
,
49
,
49
,
49
,
49
,
-
73
,
-
25
,
-
80
,
49
,
-
71
,
49
,
49
,
49
,
49
,
49
,
49
,
49
,
49
,
-
27
,
-
72
,
49
,
49
,
49
,
49
,
49
,
-
77
,
-
75
,
49
,
49
,
-
78
,
-
76
,]),
'CHAR'
:([
0
,
1
,
2
,
4
,
5
,
8
,
9
,
10
,
19
,
20
,
21
,
22
,
24
,
25
,
27
,
35
,
44
,
69
,
73
,
89
,],[
3
,
3
,
-
4
,
-
1
,
3
,
-
3
,
3
,
-
2
,
-
7
,
-
5
,
3
,
3
,
-
6
,
-
11
,
3
,
-
8
,
-
26
,
-
12
,
3
,
-
25
,]),
'SEMICOLON'
:([
12
,
14
,
15
,
18
,
23
,
31
,
38
,
40
,
42
,
43
,
45
,
46
,
49
,
50
,
52
,
55
,
57
,
59
,
60
,
62
,
65
,
66
,
67
,
70
,
71
,
87
,
88
,
92
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
122
,
123
,
124
,
125
,
129
,
134
,
136
,],[
-
17
,
19
,
-
15
,
-
16
,
35
,
-
19
,
76
,
-
35
,
-
55
,
-
32
,
86
,
-
40
,
-
60
,
-
62
,
-
58
,
93
,
-
64
,
-
59
,
-
28
,
-
51
,
-
46
,
-
61
,
105
,
19
,
-
18
,
-
49
,
-
65
,
120
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
29
,
-
30
,
-
31
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'RBRACE'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
137
,
138
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
44
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
89
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
-
77
,
-
75
,
-
78
,
-
76
,]),
'$end'
:([
1
,
2
,
4
,
8
,
10
,
19
,
20
,
24
,
35
,
44
,
89
,],[
0
,
-
4
,
-
1
,
-
3
,
-
2
,
-
7
,
-
5
,
-
6
,
-
8
,
-
26
,
-
25
,]),
'CHARACTER'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
66
,
-
10
,
-
9
,
-
8
,
66
,
-
70
,
-
69
,
-
26
,
-
79
,
66
,
-
67
,
66
,
66
,
-
66
,
66
,
66
,
66
,
-
68
,
-
12
,
66
,
-
74
,
66
,
66
,
66
,
66
,
66
,
66
,
66
,
66
,
66
,
-
73
,
-
25
,
-
80
,
66
,
-
71
,
66
,
66
,
66
,
66
,
66
,
66
,
66
,
66
,
-
27
,
-
72
,
66
,
66
,
66
,
66
,
66
,
-
77
,
-
75
,
66
,
66
,
-
78
,
-
76
,]),
'AMPERSAND'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
41
,
44
,
47
,
48
,
51
,
53
,
55
,
56
,
58
,
63
,
64
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
89
,
90
,
91
,
93
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
105
,
120
,
126
,
131
,
132
,
133
,
135
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
58
,
-
10
,
-
9
,
-
8
,
58
,
-
70
,
-
69
,
-
26
,
-
79
,
58
,
-
67
,
58
,
58
,
-
66
,
58
,
58
,
58
,
-
68
,
-
12
,
58
,
-
74
,
58
,
58
,
58
,
58
,
58
,
58
,
58
,
58
,
58
,
-
73
,
-
25
,
-
80
,
58
,
-
71
,
58
,
58
,
58
,
58
,
58
,
58
,
58
,
58
,
-
27
,
-
72
,
58
,
58
,
58
,
58
,
58
,
-
77
,
-
75
,
58
,
58
,
-
78
,
-
76
,]),
'LESS_EQ'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
82
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
82
,
82
,
-
42
,
-
43
,
-
41
,]),
'FOR'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
61
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
61
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
61
,
61
,
-
77
,
-
75
,
61
,
61
,
-
78
,
-
76
,]),
'EXTERN'
:([
0
,
1
,
2
,
4
,
8
,
10
,
19
,
20
,
21
,
24
,
25
,
27
,
35
,
44
,
69
,
89
,],[
9
,
9
,
-
4
,
-
1
,
-
3
,
-
2
,
-
7
,
-
5
,
9
,
-
6
,
-
11
,
9
,
-
8
,
-
26
,
-
12
,
-
25
,]),
'MINUS'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
37
,
39
,
40
,
41
,
42
,
44
,
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
55
,
56
,
57
,
58
,
59
,
62
,
63
,
64
,
65
,
66
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
87
,
88
,
89
,
90
,
91
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
120
,
126
,
129
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
63
,
-
10
,
-
9
,
-
8
,
63
,
-
70
,
78
,
-
69
,
-
55
,
-
26
,
-
40
,
-
79
,
63
,
-
60
,
-
62
,
-
67
,
-
58
,
63
,
63
,
-
66
,
-
64
,
63
,
-
59
,
-
51
,
63
,
63
,
-
46
,
-
61
,
-
68
,
-
12
,
63
,
-
74
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
-
73
,
-
49
,
-
65
,
-
25
,
-
80
,
63
,
-
71
,
-
50
,
63
,
63
,
63
,
63
,
63
,
63
,
-
47
,
-
48
,
63
,
63
,
-
27
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
78
,
78
,
78
,
78
,
-
72
,
63
,
-
42
,
63
,
63
,
63
,
-
43
,
63
,
-
41
,
-
77
,
-
75
,
63
,
63
,
-
78
,
-
76
,]),
'PLUS'
:([
40
,
42
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
129
,
134
,
136
,],[
77
,
-
55
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
77
,
77
,
77
,
77
,
-
42
,
-
43
,
-
41
,]),
'LBRACKET'
:([
46
,
49
,
50
,
52
,
57
,
59
,
65
,
66
,
88
,
109
,
129
,
134
,
136
,],[
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
103
,
-
61
,
-
65
,
-
63
,
-
42
,
-
43
,
-
41
,]),
'ASSIGN'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
96
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'EQ_PLUS'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
97
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'EQ_MINUS'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
125
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
98
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
33
,
-
42
,
-
43
,
-
41
,]),
'STATIC'
:([
0
,
1
,
2
,
4
,
8
,
10
,
19
,
20
,
24
,
35
,
44
,
89
,],[
5
,
5
,
-
4
,
-
1
,
-
3
,
-
2
,
-
7
,
-
5
,
-
6
,
-
8
,
-
26
,
-
25
,]),
'WHILE'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
54
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
54
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
54
,
54
,
-
77
,
-
75
,
54
,
54
,
-
78
,
-
76
,]),
'RETURN'
:([
19
,
21
,
25
,
26
,
27
,
29
,
35
,
39
,
41
,
44
,
47
,
51
,
53
,
56
,
68
,
69
,
76
,
86
,
89
,
90
,
93
,
105
,
120
,
131
,
132
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
7
,
-
81
,
-
11
,
55
,
-
10
,
-
9
,
-
8
,
-
70
,
-
69
,
-
26
,
-
79
,
-
67
,
55
,
-
66
,
-
68
,
-
12
,
-
74
,
-
73
,
-
25
,
-
80
,
-
71
,
-
27
,
-
72
,
55
,
55
,
-
77
,
-
75
,
55
,
55
,
-
78
,
-
76
,]),
'DIV'
:([
42
,
46
,
49
,
50
,
52
,
57
,
59
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
129
,
134
,
136
,],[
79
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
79
,
79
,
-
53
,
-
54
,
-
52
,
-
42
,
-
43
,
-
41
,]),
'ASTERISK'
:([
3
,
6
,
7
,
11
,
13
,
16
,
19
,
21
,
25
,
26
,
27
,
28
,
29
,
33
,
35
,
37
,
39
,
41
,
42
,
44
,
46
,
47
,
48
,
49
,
50
,
51
,
52
,
53
,
55
,
56
,
57
,
58
,
59
,
62
,
63
,
64
,
65
,
66
,
68
,
69
,
74
,
76
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
86
,
87
,
88
,
89
,
90
,
91
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
100
,
101
,
102
,
103
,
104
,
105
,
109
,
110
,
111
,
112
,
113
,
114
,
120
,
126
,
129
,
131
,
132
,
133
,
134
,
135
,
136
,
137
,
138
,
141
,
142
,
143
,
144
,],[
-
14
,
13
,
-
13
,
13
,
13
,
13
,
-
7
,
-
81
,
-
11
,
48
,
-
10
,
13
,
-
9
,
13
,
-
8
,
48
,
-
70
,
-
69
,
81
,
-
26
,
-
40
,
-
79
,
48
,
-
60
,
-
62
,
-
67
,
-
58
,
48
,
48
,
-
66
,
-
64
,
48
,
-
59
,
-
51
,
48
,
48
,
-
46
,
-
61
,
-
68
,
-
12
,
48
,
-
74
,
48
,
48
,
48
,
48
,
48
,
48
,
48
,
48
,
48
,
-
73
,
-
49
,
-
65
,
-
25
,
-
80
,
48
,
-
71
,
-
50
,
48
,
48
,
48
,
48
,
48
,
48
,
-
47
,
-
48
,
48
,
48
,
-
27
,
-
63
,
81
,
81
,
-
53
,
-
54
,
-
52
,
-
72
,
48
,
-
42
,
48
,
48
,
48
,
-
43
,
48
,
-
41
,
-
77
,
-
75
,
48
,
48
,
-
78
,
-
76
,]),
'RBRACKET'
:([
40
,
42
,
43
,
46
,
49
,
50
,
52
,
57
,
59
,
60
,
62
,
65
,
66
,
87
,
88
,
94
,
101
,
102
,
109
,
110
,
111
,
112
,
113
,
114
,
115
,
116
,
117
,
118
,
121
,
122
,
123
,
124
,
125
,
127
,
129
,
134
,
136
,],[
-
35
,
-
55
,
-
32
,
-
40
,
-
60
,
-
62
,
-
58
,
-
64
,
-
59
,
-
28
,
-
51
,
-
46
,
-
61
,
-
49
,
-
65
,
-
50
,
-
47
,
-
48
,
-
63
,
-
56
,
-
57
,
-
53
,
-
54
,
-
52
,
-
38
,
-
37
,
-
39
,
-
36
,
-
34
,
-
29
,
-
30
,
-
31
,
-
33
,
134
,
-
42
,
-
43
,
-
41
,]),}
_lr_action
=
{}
for
_k
,
_v
in
_lr_action_items
.
items
():
...
...
@@ -17,7 +17,7 @@ for _k, _v in _lr_action_items.items():
_lr_action
[
_x
][
_k
]
=
_y
del
_lr_action_items
_lr_goto_items
=
{
'
string_literal'
:([
33
,
40
,
45
,
51
,
54
,
60
,
62
,
72
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,]),
'declaration_list_opt'
:([
19
,],[
33
,]),
'empty'
:([
19
,],[
30
,]),
'parameter_declaration'
:([
18
,
37
,],[
28
,
75
,]),
'function_definition'
:([
0
,
1
,],[
2
,
2
,]),
'relational_expression'
:([
33
,
45
,
51
,
72
,
85
,
88
,
89
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
41
,
41
,
41
,
41
,
41
,
41
,
41
,
41
,
41
,
125
,
41
,
41
,
128
,
41
,
41
,
41
,
41
,
41
,
41
,
41
,
41
,]),
'compound_statement'
:([
13
,
17
,
33
,
51
,
131
,
136
,
141
,
142
,],[
20
,
24
,
57
,
57
,
57
,
57
,
57
,
57
,]),
'additive_expression'
:([
33
,
45
,
51
,
72
,
77
,
78
,
79
,
80
,
85
,
88
,
89
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
43
,
43
,
43
,
43
,
108
,
109
,
110
,
111
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,]),
'argument_expression_list'
:([
89
,],[
119
,]),
'postfix_expression'
:([
33
,
40
,
45
,
51
,
54
,
60
,
62
,
72
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,
52
,]),
'translation_unit'
:([
0
,],[
1
,]),
'declaration'
:([
0
,
1
,
19
,
34
,],[
6
,
6
,
32
,
73
,]),
'primary_expression'
:([
33
,
40
,
45
,
51
,
54
,
60
,
62
,
72
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,
63
,]),
'statement'
:([
33
,
51
,
131
,
136
,
141
,
142
,],[
44
,
86
,
137
,
140
,
143
,
144
,]),
'parameter_type_list'
:([
18
,],[
29
,]),
'unary_expression'
:([
33
,
40
,
45
,
51
,
54
,
60
,
62
,
72
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
88
,
89
,
91
,
92
,
93
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
47
,
76
,
47
,
47
,
90
,
95
,
96
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
120
,
121
,
122
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,
47
,]),
'declarator'
:([
4
,
11
,
14
,
16
,
25
,
31
,],[
13
,
17
,
22
,
23
,
36
,
39
,]),
'parameter_list'
:([
18
,],[
26
,]),
'statement_list'
:([
33
,],[
51
,]),
'expression_statement'
:([
33
,
51
,
94
,
123
,
131
,
136
,
141
,
142
,],[
66
,
66
,
123
,
135
,
66
,
66
,
66
,
66
,]),
'type_specifier'
:([
0
,
1
,
3
,
9
,
18
,
19
,
34
,
37
,],[
4
,
4
,
11
,
16
,
25
,
31
,
31
,
25
,]),
'jump_statement'
:([
33
,
51
,
131
,
136
,
141
,
142
,],[
56
,
56
,
56
,
56
,
56
,
56
,]),
'direct_declarator'
:([
4
,
11
,
14
,
16
,
25
,
31
,],[
12
,
12
,
12
,
12
,
12
,
12
,]),
'selection_statement'
:([
33
,
51
,
131
,
136
,
141
,
142
,],[
53
,
53
,
53
,
53
,
53
,
53
,]),
'mult_expression'
:([
33
,
45
,
51
,
72
,
77
,
78
,
79
,
80
,
82
,
83
,
85
,
88
,
89
,
94
,
97
,
101
,
102
,
103
,
104
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
112
,
113
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,
55
,]),
'iteration_statement'
:([
33
,
51
,
131
,
136
,
141
,
142
,],[
69
,
69
,
69
,
69
,
69
,
69
,]),
'expression'
:([
33
,
45
,
51
,
72
,
85
,
88
,
89
,
94
,
97
,
102
,
103
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
70
,
84
,
70
,
107
,
115
,
116
,
118
,
70
,
124
,
126
,
127
,
129
,
70
,
70
,
138
,
139
,
70
,
70
,
70
,]),
'declaration_list'
:([
19
,],[
34
,]),
'external_declaration'
:([
0
,
1
,],[
7
,
10
,]),
'equality_expression'
:([
33
,
45
,
51
,
72
,
85
,
88
,
89
,
94
,
97
,
102
,
103
,
105
,
123
,
131
,
133
,
135
,
136
,
141
,
142
,],[
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,
71
,]),}
_lr_goto_items
=
{
'
translation_unit'
:([
0
,],[
1
,]),
'mult_expression'
:([
26
,
37
,
53
,
55
,
74
,
77
,
78
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
42
,
42
,
42
,
42
,
42
,
110
,
111
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,
42
,]),
'additive_expression'
:([
26
,
37
,
53
,
55
,
74
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
40
,
40
,
40
,
40
,
40
,
115
,
116
,
117
,
118
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,
40
,]),
'declaration'
:([
0
,
1
,
21
,
27
,],[
2
,
2
,
25
,
69
,]),
'argument_expression_list'
:([
104
,],[
128
,]),
'string_literal'
:([
26
,
37
,
48
,
53
,
55
,
58
,
63
,
64
,
74
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,
50
,]),
'expression_statement'
:([
26
,
53
,
100
,
126
,
131
,
132
,
141
,
142
,],[
51
,
51
,
126
,
133
,
51
,
51
,
51
,
51
,]),
'declarator'
:([
6
,
11
,
13
,
16
,
28
,
33
,],[
14
,
17
,
18
,
23
,
70
,
72
,]),
'statement_list'
:([
26
,],[
53
,]),
'type_specifier'
:([
0
,
1
,
5
,
9
,
21
,
22
,
27
,
73
,],[
6
,
6
,
11
,
16
,
28
,
33
,
28
,
33
,]),
'empty'
:([
21
,],[
29
,]),
'compound_statement'
:([
14
,
17
,
26
,
53
,
131
,
132
,
141
,
142
,],[
20
,
24
,
56
,
56
,
56
,
56
,
56
,
56
,]),
'parameter_list'
:([
22
,],[
34
,]),
'declaration_list'
:([
21
,],[
27
,]),
'iteration_statement'
:([
26
,
53
,
131
,
132
,
141
,
142
,],[
41
,
41
,
41
,
41
,
41
,
41
,]),
'parameter_declaration'
:([
22
,
73
,],[
30
,
107
,]),
'relational_expression'
:([
26
,
37
,
53
,
55
,
74
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
43
,
43
,
43
,
43
,
43
,
43
,
121
,
43
,
43
,
43
,
125
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,
43
,]),
'declaration_list_opt'
:([
21
,],[
26
,]),
'external_declaration'
:([
0
,
1
,],[
4
,
10
,]),
'function_definition'
:([
0
,
1
,],[
8
,
8
,]),
'equality_expression'
:([
26
,
37
,
53
,
55
,
74
,
91
,
96
,
97
,
98
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,
60
,]),
'unary_expression'
:([
26
,
37
,
48
,
53
,
55
,
58
,
63
,
64
,
74
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
62
,
62
,
87
,
62
,
62
,
94
,
101
,
102
,
62
,
62
,
62
,
112
,
113
,
114
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,
62
,]),
'primary_expression'
:([
26
,
37
,
48
,
53
,
55
,
58
,
63
,
64
,
74
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,
46
,]),
'parameter_type_list'
:([
22
,],[
32
,]),
'statement'
:([
26
,
53
,
131
,
132
,
141
,
142
,],[
47
,
90
,
137
,
138
,
143
,
144
,]),
'postfix_expression'
:([
26
,
37
,
48
,
53
,
55
,
58
,
63
,
64
,
74
,
77
,
78
,
79
,
80
,
81
,
82
,
83
,
84
,
85
,
91
,
95
,
96
,
97
,
98
,
99
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,
65
,]),
'expression'
:([
26
,
37
,
53
,
55
,
74
,
91
,
96
,
97
,
98
,
100
,
103
,
104
,
126
,
131
,
132
,
133
,
135
,
141
,
142
,],[
67
,
75
,
67
,
92
,
108
,
119
,
122
,
123
,
124
,
67
,
127
,
130
,
67
,
67
,
67
,
139
,
140
,
67
,
67
,]),
'selection_statement'
:([
26
,
53
,
131
,
132
,
141
,
142
,],[
68
,
68
,
68
,
68
,
68
,
68
,]),
'jump_statement'
:([
26
,
53
,
131
,
132
,
141
,
142
,],[
39
,
39
,
39
,
39
,
39
,
39
,]),
'direct_declarator'
:([
6
,
11
,
13
,
16
,
28
,
33
,],[
15
,
15
,
15
,
15
,
15
,
15
,]),}
_lr_goto
=
{}
for
_k
,
_v
in
_lr_goto_items
.
items
():
...
...
@@ -27,85 +27,85 @@ for _k, _v in _lr_goto_items.items():
del
_lr_goto_items
_lr_productions
=
[
(
"S' -> translation_unit"
,
"S'"
,
1
,
None
,
None
,
None
),
(
'translation_unit -> external_declaration'
,
'translation_unit'
,
1
,
'p_translation_unit_01'
,
'cparse.py'
,
45
3
),
(
'translation_unit -> translation_unit external_declaration'
,
'translation_unit'
,
2
,
'p_translation_unit_02'
,
'cparse.py'
,
45
7
),
(
'external_declaration -> function_definition'
,
'external_declaration'
,
1
,
'p_external_declaration'
,
'cparse.py'
,
46
2
),
(
'external_declaration -> declaration'
,
'external_declaration'
,
1
,
'p_external_declaration'
,
'cparse.py'
,
46
3
),
(
'function_definition -> type_specifier declarator compound_statement'
,
'function_definition'
,
3
,
'p_function_definition_01'
,
'cparse.py'
,
4
67
),
(
'function_definition -> STATIC type_specifier declarator compound_statement'
,
'function_definition'
,
4
,
'p_function_definition_02'
,
'cparse.py'
,
47
2
),
(
'declaration -> type_specifier declarator SEMICOLON'
,
'declaration'
,
3
,
'p_declaration_01'
,
'cparse.py'
,
4
78
),
(
'declaration -> EXTERN type_specifier declarator SEMICOLON'
,
'declaration'
,
4
,
'p_declaration_02'
,
'cparse.py'
,
4
85
),
(
'declaration_list_opt -> empty'
,
'declaration_list_opt'
,
1
,
'p_declaration_list_opt_01'
,
'cparse.py'
,
49
1
),
(
'declaration_list_opt -> declaration_list'
,
'declaration_list_opt'
,
1
,
'p_declaration_list_opt_02'
,
'cparse.py'
,
495
),
(
'declaration_list -> declaration'
,
'declaration_list'
,
1
,
'p_declaration_list_02'
,
'cparse.py'
,
49
9
),
(
'declaration_list -> declaration_list declaration'
,
'declaration_list'
,
2
,
'p_declaration_list_03'
,
'cparse.py'
,
5
03
),
(
'type_specifier -> INT'
,
'type_specifier'
,
1
,
'p_type_specifier'
,
'cparse.py'
,
5
08
),
(
'type_specifier -> CHAR'
,
'type_specifier'
,
1
,
'p_type_specifier'
,
'cparse.py'
,
5
09
),
(
'declarator -> direct_declarator'
,
'declarator'
,
1
,
'p_declarator_01'
,
'cparse.py'
,
5
13
),
(
'declarator -> ASTERISK declarator'
,
'declarator'
,
2
,
'p_declarator_02'
,
'cparse.py'
,
5
17
),
(
'direct_declarator -> ID'
,
'direct_declarator'
,
1
,
'p_direct_declarator_01'
,
'cparse.py'
,
5
22
),
(
'direct_declarator -> direct_declarator LPAREN parameter_type_list RPAREN'
,
'direct_declarator'
,
4
,
'p_direct_declarator_02'
,
'cparse.py'
,
5
26
),
(
'direct_declarator -> direct_declarator LPAREN RPAREN'
,
'direct_declarator'
,
3
,
'p_direct_declarator_03'
,
'cparse.py'
,
5
31
),
(
'parameter_type_list -> parameter_list'
,
'parameter_type_list'
,
1
,
'p_parameter_type_list_01'
,
'cparse.py'
,
5
36
),
(
'parameter_type_list -> parameter_list COMMA ELLIPSIS'
,
'parameter_type_list'
,
3
,
'p_parameter_type_list_02'
,
'cparse.py'
,
5
40
),
(
'parameter_list -> parameter_declaration'
,
'parameter_list'
,
1
,
'p_parameter_list_01'
,
'cparse.py'
,
5
4
5
),
(
'parameter_list -> parameter_list COMMA parameter_declaration'
,
'parameter_list'
,
3
,
'p_parameter_list_02'
,
'cparse.py'
,
5
49
),
(
'parameter_declaration -> type_specifier declarator'
,
'parameter_declaration'
,
2
,
'p_parameter_declaration'
,
'cparse.py'
,
5
54
),
(
'compound_statement -> LBRACE declaration_list_opt statement_list RBRACE'
,
'compound_statement'
,
4
,
'p_compound_statement_01'
,
'cparse.py'
,
5
59
),
(
'compound_statement -> LBRACE declaration_list_opt RBRACE'
,
'compound_statement'
,
3
,
'p_compound_statement_02'
,
'cparse.py'
,
5
63
),
(
'expression_statement -> expression SEMICOLON'
,
'expression_statement'
,
2
,
'p_expression_statement'
,
'cparse.py'
,
5
67
),
(
'expression -> equality_expression'
,
'expression'
,
1
,
'p_expression_01'
,
'cparse.py'
,
5
71
),
(
'expression -> equality_expression ASSIGN expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
575
),
(
'expression -> equality_expression EQ_PLUS expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
576
),
(
'expression -> equality_expression EQ_MINUS expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
577
),
(
'equality_expression -> relational_expression'
,
'equality_expression'
,
1
,
'p_equality_expression_01'
,
'cparse.py'
,
581
),
(
'equality_expression -> equality_expression EQ relational_expression'
,
'equality_expression'
,
3
,
'p_equality_expression_02'
,
'cparse.py'
,
585
),
(
'equality_expression -> equality_expression NOT_EQ relational_expression'
,
'equality_expression'
,
3
,
'p_equality_expression_02'
,
'cparse.py'
,
586
),
(
'relational_expression -> additive_expression'
,
'relational_expression'
,
1
,
'p_relational_expression_01'
,
'cparse.py'
,
590
),
(
'relational_expression -> relational_expression LESS additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
59
4
),
(
'relational_expression -> relational_expression GREATER additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
59
5
),
(
'relational_expression -> relational_expression LESS_EQ additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
59
6
),
(
'relational_expression -> relational_expression GREATER_EQ additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
59
7
),
(
'postfix_expression -> primary_expression'
,
'postfix_expression'
,
1
,
'p_postfix_expression_01'
,
'cparse.py'
,
6
01
),
(
'postfix_expression -> postfix_expression LPAREN argument_expression_list RPAREN'
,
'postfix_expression'
,
4
,
'p_postfix_expression_02'
,
'cparse.py'
,
6
05
),
(
'postfix_expression -> postfix_expression LPAREN RPAREN'
,
'postfix_expression'
,
3
,
'p_postfix_expression_03'
,
'cparse.py'
,
6
10
),
(
'postfix_expression -> postfix_expression LBRACKET expression RBRACKET'
,
'postfix_expression'
,
4
,
'p_postfix_expression_04'
,
'cparse.py'
,
6
14
),
(
'argument_expression_list -> expression'
,
'argument_expression_list'
,
1
,
'p_argument_expression_list_01'
,
'cparse.py'
,
6
18
),
(
'argument_expression_list -> argument_expression_list COMMA expression'
,
'argument_expression_list'
,
3
,
'p_argument_expression_list_02'
,
'cparse.py'
,
6
22
),
(
'unary_expression -> postfix_expression'
,
'unary_expression'
,
1
,
'p_unary_expression_01'
,
'cparse.py'
,
6
27
),
(
'unary_expression -> MINUS unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_02'
,
'cparse.py'
,
6
31
),
(
'unary_expression -> EXCLAMATION unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_03'
,
'cparse.py'
,
6
3
9
),
(
'unary_expression -> ASTERISK unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_04'
,
'cparse.py'
,
6
45
),
(
'unary_expression -> AMPERSAND unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_05'
,
'cparse.py'
,
6
49
),
(
'mult_expression -> unary_expression'
,
'mult_expression'
,
1
,
'p_mult_expression_01'
,
'cparse.py'
,
6
53
),
(
'mult_expression -> mult_expression ASTERISK unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
657
),
(
'mult_expression -> mult_expression DIV unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
658
),
(
'mult_expression -> mult_expression MODULO unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
659
),
(
'additive_expression -> mult_expression'
,
'additive_expression'
,
1
,
'p_additive_expression_01'
,
'cparse.py'
,
663
),
(
'additive_expression -> additive_expression PLUS mult_expression'
,
'additive_expression'
,
3
,
'p_additive_expression_02'
,
'cparse.py'
,
667
),
(
'additive_expression -> additive_expression MINUS mult_expression'
,
'additive_expression'
,
3
,
'p_additive_expression_02'
,
'cparse.py'
,
668
),
(
'primary_expression -> ID'
,
'primary_expression'
,
1
,
'p_primary_expression_01'
,
'cparse.py'
,
672
),
(
'primary_expression -> INUMBER'
,
'primary_expression'
,
1
,
'p_primary_expression_02'
,
'cparse.py'
,
676
),
(
'primary_expression -> FNUMBER'
,
'primary_expression'
,
1
,
'p_primary_expression_03'
,
'cparse.py'
,
680
),
(
'primary_expression -> CHARACTER'
,
'primary_expression'
,
1
,
'p_primary_expression_04'
,
'cparse.py'
,
68
4
),
(
'primary_expression -> string_literal'
,
'primary_expression'
,
1
,
'p_primary_expression_05'
,
'cparse.py'
,
688
),
(
'primary_expression -> LPAREN expression RPAREN'
,
'primary_expression'
,
3
,
'p_primary_expression_06'
,
'cparse.py'
,
692
),
(
'string_literal -> STRING'
,
'string_literal'
,
1
,
'p_string_literal_01'
,
'cparse.py'
,
696
),
(
'string_literal -> string_literal STRING'
,
'string_literal'
,
2
,
'p_string_literal_02'
,
'cparse.py'
,
7
00
),
(
'statement -> compound_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
05
),
(
'statement -> expression_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
06
),
(
'statement -> selection_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
07
),
(
'statement -> iteration_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
08
),
(
'statement -> jump_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
09
),
(
'jump_statement -> RETURN SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_01'
,
'cparse.py'
,
7
13
),
(
'jump_statement -> RETURN expression SEMICOLON'
,
'jump_statement'
,
3
,
'p_jump_statement_02'
,
'cparse.py'
,
7
17
),
(
'jump_statement -> BREAK SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_03'
,
'cparse.py'
,
7
21
),
(
'jump_statement -> CONTINUE SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_04'
,
'cparse.py'
,
7
25
),
(
'iteration_statement -> WHILE LPAREN expression RPAREN statement'
,
'iteration_statement'
,
5
,
'p_iteration_statement_01'
,
'cparse.py'
,
7
2
9
),
(
'iteration_statement -> FOR LPAREN expression_statement expression_statement expression RPAREN statement'
,
'iteration_statement'
,
7
,
'p_iteration_statement_02'
,
'cparse.py'
,
7
33
),
(
'selection_statement -> IF LPAREN expression RPAREN statement'
,
'selection_statement'
,
5
,
'p_selection_statement_01'
,
'cparse.py'
,
7
37
),
(
'selection_statement -> IF LPAREN expression RPAREN statement ELSE statement'
,
'selection_statement'
,
7
,
'p_selection_statement_02'
,
'cparse.py'
,
741
),
(
'statement_list -> statement'
,
'statement_list'
,
1
,
'p_statement_list_02'
,
'cparse.py'
,
745
),
(
'statement_list -> statement_list statement'
,
'statement_list'
,
2
,
'p_statement_list_03'
,
'cparse.py'
,
749
),
(
'empty -> <empty>'
,
'empty'
,
0
,
'p_empty'
,
'cparse.py'
,
754
),
(
'translation_unit -> external_declaration'
,
'translation_unit'
,
1
,
'p_translation_unit_01'
,
'cparse.py'
,
45
4
),
(
'translation_unit -> translation_unit external_declaration'
,
'translation_unit'
,
2
,
'p_translation_unit_02'
,
'cparse.py'
,
45
9
),
(
'external_declaration -> function_definition'
,
'external_declaration'
,
1
,
'p_external_declaration'
,
'cparse.py'
,
46
5
),
(
'external_declaration -> declaration'
,
'external_declaration'
,
1
,
'p_external_declaration'
,
'cparse.py'
,
46
6
),
(
'function_definition -> type_specifier declarator compound_statement'
,
'function_definition'
,
3
,
'p_function_definition_01'
,
'cparse.py'
,
4
71
),
(
'function_definition -> STATIC type_specifier declarator compound_statement'
,
'function_definition'
,
4
,
'p_function_definition_02'
,
'cparse.py'
,
47
7
),
(
'declaration -> type_specifier declarator SEMICOLON'
,
'declaration'
,
3
,
'p_declaration_01'
,
'cparse.py'
,
4
84
),
(
'declaration -> EXTERN type_specifier declarator SEMICOLON'
,
'declaration'
,
4
,
'p_declaration_02'
,
'cparse.py'
,
4
92
),
(
'declaration_list_opt -> empty'
,
'declaration_list_opt'
,
1
,
'p_declaration_list_opt_01'
,
'cparse.py'
,
49
9
),
(
'declaration_list_opt -> declaration_list'
,
'declaration_list_opt'
,
1
,
'p_declaration_list_opt_02'
,
'cparse.py'
,
504
),
(
'declaration_list -> declaration'
,
'declaration_list'
,
1
,
'p_declaration_list_02'
,
'cparse.py'
,
50
9
),
(
'declaration_list -> declaration_list declaration'
,
'declaration_list'
,
2
,
'p_declaration_list_03'
,
'cparse.py'
,
5
14
),
(
'type_specifier -> INT'
,
'type_specifier'
,
1
,
'p_type_specifier'
,
'cparse.py'
,
5
20
),
(
'type_specifier -> CHAR'
,
'type_specifier'
,
1
,
'p_type_specifier'
,
'cparse.py'
,
5
21
),
(
'declarator -> direct_declarator'
,
'declarator'
,
1
,
'p_declarator_01'
,
'cparse.py'
,
5
26
),
(
'declarator -> ASTERISK declarator'
,
'declarator'
,
2
,
'p_declarator_02'
,
'cparse.py'
,
5
31
),
(
'direct_declarator -> ID'
,
'direct_declarator'
,
1
,
'p_direct_declarator_01'
,
'cparse.py'
,
5
37
),
(
'direct_declarator -> direct_declarator LPAREN parameter_type_list RPAREN'
,
'direct_declarator'
,
4
,
'p_direct_declarator_02'
,
'cparse.py'
,
5
42
),
(
'direct_declarator -> direct_declarator LPAREN RPAREN'
,
'direct_declarator'
,
3
,
'p_direct_declarator_03'
,
'cparse.py'
,
5
48
),
(
'parameter_type_list -> parameter_list'
,
'parameter_type_list'
,
1
,
'p_parameter_type_list_01'
,
'cparse.py'
,
5
54
),
(
'parameter_type_list -> parameter_list COMMA ELLIPSIS'
,
'parameter_type_list'
,
3
,
'p_parameter_type_list_02'
,
'cparse.py'
,
5
59
),
(
'parameter_list -> parameter_declaration'
,
'parameter_list'
,
1
,
'p_parameter_list_01'
,
'cparse.py'
,
5
6
5
),
(
'parameter_list -> parameter_list COMMA parameter_declaration'
,
'parameter_list'
,
3
,
'p_parameter_list_02'
,
'cparse.py'
,
5
70
),
(
'parameter_declaration -> type_specifier declarator'
,
'parameter_declaration'
,
2
,
'p_parameter_declaration'
,
'cparse.py'
,
5
76
),
(
'compound_statement -> LBRACE declaration_list_opt statement_list RBRACE'
,
'compound_statement'
,
4
,
'p_compound_statement_01'
,
'cparse.py'
,
5
81
),
(
'compound_statement -> LBRACE declaration_list_opt RBRACE'
,
'compound_statement'
,
3
,
'p_compound_statement_02'
,
'cparse.py'
,
5
86
),
(
'expression_statement -> expression SEMICOLON'
,
'expression_statement'
,
2
,
'p_expression_statement'
,
'cparse.py'
,
5
91
),
(
'expression -> equality_expression'
,
'expression'
,
1
,
'p_expression_01'
,
'cparse.py'
,
5
96
),
(
'expression -> equality_expression ASSIGN expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
601
),
(
'expression -> equality_expression EQ_PLUS expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
602
),
(
'expression -> equality_expression EQ_MINUS expression'
,
'expression'
,
3
,
'p_expression_02'
,
'cparse.py'
,
603
),
(
'equality_expression -> relational_expression'
,
'equality_expression'
,
1
,
'p_equality_expression_01'
,
'cparse.py'
,
608
),
(
'equality_expression -> equality_expression EQ relational_expression'
,
'equality_expression'
,
3
,
'p_equality_expression_02'
,
'cparse.py'
,
613
),
(
'equality_expression -> equality_expression NOT_EQ relational_expression'
,
'equality_expression'
,
3
,
'p_equality_expression_02'
,
'cparse.py'
,
614
),
(
'relational_expression -> additive_expression'
,
'relational_expression'
,
1
,
'p_relational_expression_01'
,
'cparse.py'
,
619
),
(
'relational_expression -> relational_expression LESS additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
62
4
),
(
'relational_expression -> relational_expression GREATER additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
62
5
),
(
'relational_expression -> relational_expression LESS_EQ additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
62
6
),
(
'relational_expression -> relational_expression GREATER_EQ additive_expression'
,
'relational_expression'
,
3
,
'p_relational_expression_02'
,
'cparse.py'
,
62
7
),
(
'postfix_expression -> primary_expression'
,
'postfix_expression'
,
1
,
'p_postfix_expression_01'
,
'cparse.py'
,
6
32
),
(
'postfix_expression -> postfix_expression LPAREN argument_expression_list RPAREN'
,
'postfix_expression'
,
4
,
'p_postfix_expression_02'
,
'cparse.py'
,
6
37
),
(
'postfix_expression -> postfix_expression LPAREN RPAREN'
,
'postfix_expression'
,
3
,
'p_postfix_expression_03'
,
'cparse.py'
,
6
43
),
(
'postfix_expression -> postfix_expression LBRACKET expression RBRACKET'
,
'postfix_expression'
,
4
,
'p_postfix_expression_04'
,
'cparse.py'
,
6
48
),
(
'argument_expression_list -> expression'
,
'argument_expression_list'
,
1
,
'p_argument_expression_list_01'
,
'cparse.py'
,
6
53
),
(
'argument_expression_list -> argument_expression_list COMMA expression'
,
'argument_expression_list'
,
3
,
'p_argument_expression_list_02'
,
'cparse.py'
,
6
58
),
(
'unary_expression -> postfix_expression'
,
'unary_expression'
,
1
,
'p_unary_expression_01'
,
'cparse.py'
,
6
64
),
(
'unary_expression -> MINUS unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_02'
,
'cparse.py'
,
6
69
),
(
'unary_expression -> EXCLAMATION unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_03'
,
'cparse.py'
,
6
7
9
),
(
'unary_expression -> ASTERISK unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_04'
,
'cparse.py'
,
6
86
),
(
'unary_expression -> AMPERSAND unary_expression'
,
'unary_expression'
,
2
,
'p_unary_expression_05'
,
'cparse.py'
,
6
91
),
(
'mult_expression -> unary_expression'
,
'mult_expression'
,
1
,
'p_mult_expression_01'
,
'cparse.py'
,
6
96
),
(
'mult_expression -> mult_expression ASTERISK unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
701
),
(
'mult_expression -> mult_expression DIV unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
702
),
(
'mult_expression -> mult_expression MODULO unary_expression'
,
'mult_expression'
,
3
,
'p_mult_expression_02'
,
'cparse.py'
,
703
),
(
'additive_expression -> mult_expression'
,
'additive_expression'
,
1
,
'p_additive_expression_01'
,
'cparse.py'
,
708
),
(
'additive_expression -> additive_expression PLUS mult_expression'
,
'additive_expression'
,
3
,
'p_additive_expression_02'
,
'cparse.py'
,
713
),
(
'additive_expression -> additive_expression MINUS mult_expression'
,
'additive_expression'
,
3
,
'p_additive_expression_02'
,
'cparse.py'
,
714
),
(
'primary_expression -> ID'
,
'primary_expression'
,
1
,
'p_primary_expression_01'
,
'cparse.py'
,
719
),
(
'primary_expression -> INUMBER'
,
'primary_expression'
,
1
,
'p_primary_expression_02'
,
'cparse.py'
,
724
),
(
'primary_expression -> FNUMBER'
,
'primary_expression'
,
1
,
'p_primary_expression_03'
,
'cparse.py'
,
729
),
(
'primary_expression -> CHARACTER'
,
'primary_expression'
,
1
,
'p_primary_expression_04'
,
'cparse.py'
,
73
4
),
(
'primary_expression -> string_literal'
,
'primary_expression'
,
1
,
'p_primary_expression_05'
,
'cparse.py'
,
739
),
(
'primary_expression -> LPAREN expression RPAREN'
,
'primary_expression'
,
3
,
'p_primary_expression_06'
,
'cparse.py'
,
744
),
(
'string_literal -> STRING'
,
'string_literal'
,
1
,
'p_string_literal_01'
,
'cparse.py'
,
749
),
(
'string_literal -> string_literal STRING'
,
'string_literal'
,
2
,
'p_string_literal_02'
,
'cparse.py'
,
7
54
),
(
'statement -> compound_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
60
),
(
'statement -> expression_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
61
),
(
'statement -> selection_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
62
),
(
'statement -> iteration_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
63
),
(
'statement -> jump_statement'
,
'statement'
,
1
,
'p_statement'
,
'cparse.py'
,
7
64
),
(
'jump_statement -> RETURN SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_01'
,
'cparse.py'
,
7
69
),
(
'jump_statement -> RETURN expression SEMICOLON'
,
'jump_statement'
,
3
,
'p_jump_statement_02'
,
'cparse.py'
,
7
74
),
(
'jump_statement -> BREAK SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_03'
,
'cparse.py'
,
7
79
),
(
'jump_statement -> CONTINUE SEMICOLON'
,
'jump_statement'
,
2
,
'p_jump_statement_04'
,
'cparse.py'
,
7
84
),
(
'iteration_statement -> WHILE LPAREN expression RPAREN statement'
,
'iteration_statement'
,
5
,
'p_iteration_statement_01'
,
'cparse.py'
,
7
8
9
),
(
'iteration_statement -> FOR LPAREN expression_statement expression_statement expression RPAREN statement'
,
'iteration_statement'
,
7
,
'p_iteration_statement_02'
,
'cparse.py'
,
7
94
),
(
'selection_statement -> IF LPAREN expression RPAREN statement'
,
'selection_statement'
,
5
,
'p_selection_statement_01'
,
'cparse.py'
,
7
99
),
(
'selection_statement -> IF LPAREN expression RPAREN statement ELSE statement'
,
'selection_statement'
,
7
,
'p_selection_statement_02'
,
'cparse.py'
,
804
),
(
'statement_list -> statement'
,
'statement_list'
,
1
,
'p_statement_list_02'
,
'cparse.py'
,
809
),
(
'statement_list -> statement_list statement'
,
'statement_list'
,
2
,
'p_statement_list_03'
,
'cparse.py'
,
814
),
(
'empty -> <empty>'
,
'empty'
,
0
,
'p_empty'
,
'cparse.py'
,
820
),
]
...
...
Please
register
or
login
to post a comment