x/internal/pic/y.output
2020-06-11 21:26:57 -07:00

6894 lines
118 KiB
Plaintext
Executable File

state 0
$accept: .top $end
top: . (2)
$end reduce 2 (src line 90)
error shift 3
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
'[' shift 33
. error
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 4
piclist goto 2
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
top goto 1
state 1
$accept: top.$end
$end accept
. error
state 2
top: piclist. (1)
piclist: piclist.picture
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
'[' shift 33
. reduce 1 (src line 88)
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 37
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 3
top: error. (3)
. reduce 3 (src line 91)
state 4
piclist: picture. (4)
. reduce 4 (src line 94)
state 5
picture: prim.ST
ST shift 38
. error
state 6
picture: leftbrace.piclist '}'
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
'[' shift 33
. error
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 4
piclist goto 39
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 7
picture: PLACENAME.':' picture
picture: PLACENAME.':' ST picture
picture: PLACENAME.':' position ST
':' shift 40
. error
state 8
picture: asgn.ST
ST shift 41
. error
state 9
picture: DIR. (12)
. reduce 12 (src line 106)
state 10
picture: PRINT.expr ST
picture: PRINT.position ST
picture: PRINT.text ST
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 42
asgn goto 47
text goto 44
position goto 43
place goto 51
blockname goto 68
last goto 53
11: shift/reduce conflict (shift 71(0), red'n 21(0)) on VARNAME
state 11
picture: RESET.varlist ST
varlist: . (21)
VARNAME shift 71
. reduce 21 (src line 117)
varlist goto 70
state 12
picture: copy. (17)
. reduce 17 (src line 111)
state 13
picture: for. (18)
. reduce 18 (src line 112)
state 14
picture: if. (19)
. reduce 19 (src line 113)
state 15
picture: ST. (20)
. reduce 20 (src line 114)
state 16
prim: BOX.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 72
state 17
prim: CIRCLE.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 73
state 18
prim: ELLIPSE.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 74
state 19
prim: ARC.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 75
state 20
prim: LINE.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 76
state 21
prim: ARROW.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 77
state 22
prim: SPLINE.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 78
state 23
prim: MOVE.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 79
24: shift/reduce conflict (shift 35(0), red'n 62(0)) on TEXT
24: shift/reduce conflict (shift 36(0), red'n 62(0)) on SPRINTF
state 24
prim: textlist.attrlist
textlist: textlist.textattr
attrlist: . (62)
TEXT shift 35
SPRINTF shift 36
. reduce 62 (src line 199)
text goto 34
textattr goto 81
attrlist goto 80
state 25
prim: TROFF. (57)
. reduce 57 (src line 188)
state 26
prim: lbracket.piclist ']' $$58 attrlist
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
'[' shift 33
. error
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 4
piclist goto 82
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 27
leftbrace: '{'. (47)
. reduce 47 (src line 174)
state 28
asgn: VARNAME.'=' expr
'=' shift 83
. error
state 29
copy: COPY.copylist
TEXT shift 35
THRU shift 87
UNTIL shift 88
SPRINTF shift 36
. error
text goto 86
copylist goto 84
copyattr goto 85
state 30
for: FOR.name FROM expr TO expr BY optop expr DOSTR
for: FOR.name FROM expr TO expr DOSTR
for: FOR.name '=' expr TO expr BY optop expr DOSTR
for: FOR.name '=' expr TO expr DOSTR
VARNAME shift 90
. error
name goto 89
state 31
if: IF.if_expr THENSTR ELSESTR
if: IF.if_expr THENSTR
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 92
if_expr goto 91
asgn goto 47
text goto 93
place goto 95
blockname goto 68
last goto 53
32: shift/reduce conflict (shift 96(0), red'n 90(0)) on TEXTATTR
state 32
textlist: textattr. (90)
textattr: textattr.TEXTATTR
TEXTATTR shift 96
. reduce 90 (src line 233)
state 33
lbracket: '['. (60)
. reduce 60 (src line 193)
34: shift/reduce conflict (shift 97(0), red'n 92(0)) on TEXTATTR
state 34
textattr: text. (92)
textattr: text.TEXTATTR
TEXTATTR shift 97
. reduce 92 (src line 237)
state 35
text: TEXT. (95)
. reduce 95 (src line 242)
state 36
text: SPRINTF.'(' text ')'
text: SPRINTF.'(' text ',' exprlist ')'
'(' shift 98
. error
state 37
piclist: piclist picture. (5)
. reduce 5 (src line 96)
state 38
picture: prim ST. (6)
. reduce 6 (src line 99)
state 39
piclist: piclist.picture
picture: leftbrace piclist.'}'
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'}' shift 99
'{' shift 27
'[' shift 33
. error
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 37
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 40
picture: PLACENAME ':'.picture
picture: PLACENAME ':'.ST picture
picture: PLACENAME ':'.position ST
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 103
VARNAME shift 46
SPRINTF shift 36
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 9
ST shift 101
'+' shift 49
'-' shift 48
NOT shift 55
'{' shift 27
'[' shift 33
'(' shift 50
. error
expr goto 105
asgn goto 104
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 100
position goto 102
lbracket goto 26
prim goto 5
place goto 51
blockname goto 68
textlist goto 24
textattr goto 32
last goto 53
state 41
picture: asgn ST. (11)
. reduce 11 (src line 105)
state 42
picture: PRINT expr.ST
position: expr.',' expr
position: expr.LT position ',' position GT
position: expr.BETWEEN position AND position
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
BETWEEN shift 109
ST shift 106
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 108
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 107
. error
state 43
picture: PRINT position.ST
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
ST shift 123
'+' shift 124
'-' shift 125
. error
state 44
picture: PRINT text.ST
ST shift 126
. error
state 45
expr: NUMBER. (139)
. reduce 139 (src line 307)
state 46
asgn: VARNAME.'=' expr
expr: VARNAME. (140)
'=' shift 83
. reduce 140 (src line 309)
state 47
expr: asgn. (141)
. reduce 141 (src line 310)
state 48
expr: '-'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 127
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 49
expr: '+'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 128
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 50
position: '('.position ')'
position: '('.place ',' place ')'
expr: '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 131
asgn goto 47
position goto 129
place goto 130
blockname goto 68
last goto 53
state 51
position: place. (100)
expr: place.DOTX
expr: place.DOTY
expr: place.DOTHT
expr: place.DOTWID
expr: place.DOTRAD
DOTX shift 132
DOTY shift 133
DOTHT shift 134
DOTWID shift 135
DOTRAD shift 136
. reduce 100 (src line 253)
52: shift/reduce conflict (shift 137(0), red'n 112(0)) on CORNER
state 52
place: PLACENAME. (112)
place: PLACENAME.CORNER
blockname: PLACENAME.'.' PLACENAME
expr: PLACENAME.'.' VARNAME
CORNER shift 137
'.' shift 138
. reduce 112 (src line 268)
state 53
place: last.type
place: last.type CORNER
blockname: last.BLOCK '.' PLACENAME
last: last.LAST
expr: last.BLOCK '.' VARNAME
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 140
LAST shift 141
. error
type goto 139
state 54
place: NTH.type
place: NTH.type CORNER
blockname: NTH.BLOCK '.' PLACENAME
last: NTH.LAST
expr: NTH.BLOCK '.' VARNAME
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 150
LAST shift 151
. error
type goto 149
state 55
expr: NOT.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 152
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 56
expr: LOG.'(' expr ')'
'(' shift 153
. error
state 57
expr: EXP.'(' expr ')'
'(' shift 154
. error
state 58
expr: SIN.'(' expr ')'
'(' shift 155
. error
state 59
expr: COS.'(' expr ')'
'(' shift 156
. error
state 60
expr: ATAN2.'(' expr ',' expr ')'
'(' shift 157
. error
state 61
expr: SQRT.'(' expr ')'
'(' shift 158
. error
state 62
expr: RAND.'(' ')'
'(' shift 159
. error
state 63
expr: MAX.'(' expr ',' expr ')'
'(' shift 160
. error
state 64
expr: MIN.'(' expr ',' expr ')'
'(' shift 161
. error
state 65
expr: INT.'(' expr ')'
'(' shift 162
. error
state 66
place: CORNER.PLACENAME
place: CORNER.last type
place: CORNER.NTH type
place: CORNER.blockname
PLACENAME shift 163
LAST shift 69
NTH shift 165
. error
blockname goto 166
last goto 164
state 67
place: HERE. (115)
. reduce 115 (src line 272)
68: shift/reduce conflict (shift 167(0), red'n 122(0)) on CORNER
state 68
place: blockname. (122)
place: blockname.CORNER
CORNER shift 167
. reduce 122 (src line 279)
state 69
last: LAST. (130)
. reduce 130 (src line 293)
state 70
picture: RESET varlist.ST
varlist: varlist.VARNAME
varlist: varlist.',' VARNAME
VARNAME shift 169
ST shift 168
',' shift 170
. error
state 71
varlist: VARNAME. (22)
. reduce 22 (src line 119)
state 72
prim: BOX attrlist. (48)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 48 (src line 178)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 73
prim: CIRCLE attrlist. (49)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 49 (src line 180)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 74
prim: ELLIPSE attrlist. (50)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 50 (src line 181)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 75
prim: ARC attrlist. (51)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 51 (src line 182)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 76
prim: LINE attrlist. (52)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 52 (src line 183)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 77
prim: ARROW attrlist. (53)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 53 (src line 184)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 78
prim: SPLINE attrlist. (54)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 54 (src line 185)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 79
prim: MOVE attrlist. (55)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 55 (src line 186)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 80
prim: textlist attrlist. (56)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 56 (src line 187)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
81: shift/reduce conflict (shift 96(0), red'n 91(0)) on TEXTATTR
state 81
textlist: textlist textattr. (91)
textattr: textattr.TEXTATTR
TEXTATTR shift 96
. reduce 91 (src line 235)
state 82
piclist: piclist.picture
prim: lbracket piclist.']' $$58 attrlist
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
']' shift 189
'[' shift 33
. error
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 37
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 83
asgn: VARNAME '='.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 190
asgn goto 47
place goto 95
blockname goto 68
last goto 53
84: shift/reduce conflict (shift 35(0), red'n 26(0)) on TEXT
84: shift/reduce conflict (shift 36(0), red'n 26(0)) on SPRINTF
state 84
copy: COPY copylist. (26)
copylist: copylist.copyattr
TEXT shift 35
THRU shift 87
UNTIL shift 88
SPRINTF shift 36
. reduce 26 (src line 128)
text goto 86
copyattr goto 191
state 85
copylist: copyattr. (27)
. reduce 27 (src line 131)
state 86
copyattr: text. (29)
. reduce 29 (src line 135)
state 87
copyattr: THRU.DEFNAME
DEFNAME shift 192
. error
state 88
copyattr: UNTIL.text
TEXT shift 35
SPRINTF shift 36
. error
text goto 193
state 89
for: FOR name.FROM expr TO expr BY optop expr DOSTR
for: FOR name.FROM expr TO expr DOSTR
for: FOR name.'=' expr TO expr BY optop expr DOSTR
for: FOR name.'=' expr TO expr DOSTR
FROM shift 194
'=' shift 195
. error
state 90
name: VARNAME. (41)
. reduce 41 (src line 162)
state 91
if: IF if_expr.THENSTR ELSESTR
if: IF if_expr.THENSTR
THENSTR shift 196
. error
state 92
if_expr: expr. (38)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 38 (src line 156)
state 93
if_expr: text.EQ text
if_expr: text.NEQ text
EQ shift 198
NEQ shift 199
. error
state 94
expr: '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 200
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 95
expr: place.DOTX
expr: place.DOTY
expr: place.DOTHT
expr: place.DOTWID
expr: place.DOTRAD
DOTX shift 132
DOTY shift 133
DOTHT shift 134
DOTWID shift 135
DOTRAD shift 136
. error
state 96
textattr: textattr TEXTATTR. (94)
. reduce 94 (src line 240)
state 97
textattr: text TEXTATTR. (93)
. reduce 93 (src line 239)
state 98
text: SPRINTF '('.text ')'
text: SPRINTF '('.text ',' exprlist ')'
TEXT shift 35
SPRINTF shift 36
. error
text goto 201
state 99
picture: leftbrace piclist '}'. (7)
. reduce 7 (src line 101)
state 100
picture: PLACENAME ':' picture. (8)
. reduce 8 (src line 102)
101: shift/reduce conflict (shift 16(0), red'n 20(0)) on BOX
101: shift/reduce conflict (shift 20(0), red'n 20(0)) on LINE
101: shift/reduce conflict (shift 21(0), red'n 20(0)) on ARROW
101: shift/reduce conflict (shift 17(0), red'n 20(0)) on CIRCLE
101: shift/reduce conflict (shift 18(0), red'n 20(0)) on ELLIPSE
101: shift/reduce conflict (shift 19(0), red'n 20(0)) on ARC
101: shift/reduce conflict (shift 22(0), red'n 20(0)) on SPLINE
101: shift/reduce conflict (shift 35(0), red'n 20(0)) on TEXT
101: shift/reduce conflict (shift 25(0), red'n 20(0)) on TROFF
101: shift/reduce conflict (shift 23(0), red'n 20(0)) on MOVE
101: shift/reduce conflict (shift 10(0), red'n 20(0)) on PRINT
101: shift/reduce conflict (shift 11(0), red'n 20(0)) on RESET
101: shift/reduce conflict (shift 30(0), red'n 20(0)) on FOR
101: shift/reduce conflict (shift 31(0), red'n 20(0)) on IF
101: shift/reduce conflict (shift 29(0), red'n 20(0)) on COPY
101: shift/reduce conflict (shift 7(0), red'n 20(0)) on PLACENAME
101: shift/reduce conflict (shift 28(0), red'n 20(0)) on VARNAME
101: shift/reduce conflict (shift 36(0), red'n 20(0)) on SPRINTF
101: shift/reduce conflict (shift 9(0), red'n 20(0)) on DIR
101: shift/reduce conflict (shift 15(0), red'n 20(0)) on ST
101: shift/reduce conflict (shift 27(0), red'n 20(0)) on '{'
101: shift/reduce conflict (shift 33(0), red'n 20(0)) on '['
state 101
picture: PLACENAME ':' ST.picture
picture: ST. (20)
BOX shift 16
LINE shift 20
ARROW shift 21
CIRCLE shift 17
ELLIPSE shift 18
ARC shift 19
SPLINE shift 22
TEXT shift 35
TROFF shift 25
MOVE shift 23
PRINT shift 10
RESET shift 11
FOR shift 30
IF shift 31
COPY shift 29
PLACENAME shift 7
VARNAME shift 28
SPRINTF shift 36
DIR shift 9
ST shift 15
'{' shift 27
'[' shift 33
. reduce 20 (src line 114)
asgn goto 8
text goto 34
if goto 14
for goto 13
copy goto 12
leftbrace goto 6
picture goto 202
lbracket goto 26
prim goto 5
textlist goto 24
textattr goto 32
state 102
picture: PLACENAME ':' position.ST
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
ST shift 203
'+' shift 124
'-' shift 125
. error
state 103
picture: PLACENAME.':' picture
picture: PLACENAME.':' ST picture
picture: PLACENAME.':' position ST
place: PLACENAME. (112)
place: PLACENAME.CORNER
blockname: PLACENAME.'.' PLACENAME
expr: PLACENAME.'.' VARNAME
CORNER shift 137
':' shift 40
'.' shift 138
. reduce 112 (src line 268)
state 104
picture: asgn.ST
expr: asgn. (141)
ST shift 41
. reduce 141 (src line 310)
state 105
position: expr.',' expr
position: expr.LT position ',' position GT
position: expr.BETWEEN position AND position
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
BETWEEN shift 109
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 108
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 107
. error
state 106
picture: PRINT expr ST. (13)
. reduce 13 (src line 107)
state 107
position: expr ','.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 204
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 108
position: expr LT.position ',' position GT
expr: expr LT.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 206
asgn goto 47
position goto 205
place goto 51
blockname goto 68
last goto 53
state 109
position: expr BETWEEN.position AND position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 207
place goto 51
blockname goto 68
last goto 53
state 110
expr: expr '+'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 208
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 111
expr: expr '-'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 209
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 112
expr: expr '*'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 210
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 113
expr: expr '/'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 211
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 114
expr: expr '%'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 212
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 115
expr: expr GT.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 213
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 116
expr: expr LE.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 214
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 117
expr: expr GE.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 215
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 118
expr: expr EQ.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 216
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 119
expr: expr NEQ.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 217
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 120
expr: expr ANDAND.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 218
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 121
expr: expr OROR.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 219
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 122
expr: expr '^'.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 220
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 123
picture: PRINT position ST. (14)
. reduce 14 (src line 108)
state 124
position: position '+'.expr ',' expr
position: position '+'.'(' expr ',' expr ')'
position: position '+'.place
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 222
. error
expr goto 221
asgn goto 47
place goto 223
blockname goto 68
last goto 53
state 125
position: position '-'.expr ',' expr
position: position '-'.'(' expr ',' expr ')'
position: position '-'.place
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 225
. error
expr goto 224
asgn goto 47
place goto 226
blockname goto 68
last goto 53
state 126
picture: PRINT text ST. (15)
. reduce 15 (src line 109)
state 127
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '-' expr. (147)
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'^' shift 122
. reduce 147 (src line 320)
state 128
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '+' expr. (148)
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'^' shift 122
. reduce 148 (src line 321)
state 129
position: '(' position.')'
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
')' shift 227
. error
state 130
position: place. (100)
position: '(' place.',' place ')'
expr: place.DOTX
expr: place.DOTY
expr: place.DOTHT
expr: place.DOTWID
expr: place.DOTRAD
DOTX shift 132
DOTY shift 133
DOTHT shift 134
DOTWID shift 135
DOTRAD shift 136
',' shift 228
. reduce 100 (src line 253)
state 131
position: expr.',' expr
position: expr.LT position ',' position GT
position: expr.BETWEEN position AND position
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '(' expr.')'
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
BETWEEN shift 109
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 108
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 107
')' shift 229
. error
state 132
expr: place DOTX. (150)
. reduce 150 (src line 323)
state 133
expr: place DOTY. (151)
. reduce 151 (src line 324)
state 134
expr: place DOTHT. (152)
. reduce 152 (src line 325)
state 135
expr: place DOTWID. (153)
. reduce 153 (src line 326)
state 136
expr: place DOTRAD. (154)
. reduce 154 (src line 327)
state 137
place: PLACENAME CORNER. (113)
. reduce 113 (src line 270)
state 138
blockname: PLACENAME '.'.PLACENAME
expr: PLACENAME '.'.VARNAME
PLACENAME shift 230
VARNAME shift 231
. error
139: shift/reduce conflict (shift 232(0), red'n 116(0)) on CORNER
state 139
place: last type. (116)
place: last type.CORNER
CORNER shift 232
. reduce 116 (src line 273)
state 140
blockname: last BLOCK.'.' PLACENAME
type: BLOCK. (138)
expr: last BLOCK.'.' VARNAME
'.' shift 233
. reduce 138 (src line 304)
state 141
last: last LAST. (128)
. reduce 128 (src line 290)
state 142
type: BOX. (131)
. reduce 131 (src line 296)
state 143
type: CIRCLE. (132)
. reduce 132 (src line 298)
state 144
type: ELLIPSE. (133)
. reduce 133 (src line 299)
state 145
type: ARC. (134)
. reduce 134 (src line 300)
state 146
type: LINE. (135)
. reduce 135 (src line 301)
state 147
type: ARROW. (136)
. reduce 136 (src line 302)
state 148
type: SPLINE. (137)
. reduce 137 (src line 303)
149: shift/reduce conflict (shift 234(0), red'n 119(0)) on CORNER
state 149
place: NTH type. (119)
place: NTH type.CORNER
CORNER shift 234
. reduce 119 (src line 276)
state 150
blockname: NTH BLOCK.'.' PLACENAME
type: BLOCK. (138)
expr: NTH BLOCK.'.' VARNAME
'.' shift 235
. reduce 138 (src line 304)
state 151
last: NTH LAST. (129)
. reduce 129 (src line 292)
state 152
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: NOT expr. (166)
expr: expr.'^' expr
'^' shift 122
. reduce 166 (src line 339)
state 153
expr: LOG '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 236
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 154
expr: EXP '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 237
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 155
expr: SIN '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 238
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 156
expr: COS '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 239
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 157
expr: ATAN2 '('.expr ',' expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 240
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 158
expr: SQRT '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 241
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 159
expr: RAND '('.')'
')' shift 242
. error
state 160
expr: MAX '('.expr ',' expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 243
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 161
expr: MIN '('.expr ',' expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 244
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 162
expr: INT '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 245
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 163
place: CORNER PLACENAME. (114)
blockname: PLACENAME.'.' PLACENAME
'.' shift 246
. reduce 114 (src line 271)
state 164
place: CORNER last.type
blockname: last.BLOCK '.' PLACENAME
last: last.LAST
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 248
LAST shift 141
. error
type goto 247
state 165
place: CORNER NTH.type
blockname: NTH.BLOCK '.' PLACENAME
last: NTH.LAST
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 250
LAST shift 151
. error
type goto 249
state 166
place: CORNER blockname. (124)
. reduce 124 (src line 281)
state 167
place: blockname CORNER. (123)
. reduce 123 (src line 280)
state 168
picture: RESET varlist ST. (16)
. reduce 16 (src line 110)
state 169
varlist: varlist VARNAME. (23)
. reduce 23 (src line 120)
state 170
varlist: varlist ','.VARNAME
VARNAME shift 251
. error
state 171
attrlist: attrlist attr. (61)
. reduce 61 (src line 197)
172: shift/reduce conflict (shift 52(0), red'n 64(0)) on PLACENAME
172: shift/reduce conflict (shift 46(0), red'n 64(0)) on VARNAME
172: shift/reduce conflict (shift 66(0), red'n 64(0)) on CORNER
172: shift/reduce conflict (shift 67(0), red'n 64(0)) on HERE
172: shift/reduce conflict (shift 69(0), red'n 64(0)) on LAST
172: shift/reduce conflict (shift 54(0), red'n 64(0)) on NTH
172: shift/reduce conflict (shift 45(0), red'n 64(0)) on NUMBER
172: shift/reduce conflict (shift 56(0), red'n 64(0)) on LOG
172: shift/reduce conflict (shift 57(0), red'n 64(0)) on EXP
172: shift/reduce conflict (shift 58(0), red'n 64(0)) on SIN
172: shift/reduce conflict (shift 59(0), red'n 64(0)) on COS
172: shift/reduce conflict (shift 60(0), red'n 64(0)) on ATAN2
172: shift/reduce conflict (shift 61(0), red'n 64(0)) on SQRT
172: shift/reduce conflict (shift 62(0), red'n 64(0)) on RAND
172: shift/reduce conflict (shift 64(0), red'n 64(0)) on MIN
172: shift/reduce conflict (shift 63(0), red'n 64(0)) on MAX
172: shift/reduce conflict (shift 65(0), red'n 64(0)) on INT
172: shift/reduce conflict (shift 49(5), red'n 64(0)) on '+'
172: shift/reduce conflict (shift 48(5), red'n 64(0)) on '-'
172: shift/reduce conflict (shift 55(7), red'n 64(0)) on NOT
172: shift/reduce conflict (shift 94(0), red'n 64(0)) on '('
state 172
attr: ATTR.expr
attr: ATTR. (64)
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 64 (src line 204)
expr goto 252
asgn goto 47
place goto 95
blockname goto 68
last goto 53
173: shift/reduce conflict (shift 110(5), red'n 65(0)) on '+'
173: shift/reduce conflict (shift 111(5), red'n 65(0)) on '-'
state 173
attr: expr. (65)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 65 (src line 205)
174: shift/reduce conflict (shift 52(0), red'n 67(0)) on PLACENAME
174: shift/reduce conflict (shift 46(0), red'n 67(0)) on VARNAME
174: shift/reduce conflict (shift 66(0), red'n 67(0)) on CORNER
174: shift/reduce conflict (shift 67(0), red'n 67(0)) on HERE
174: shift/reduce conflict (shift 69(0), red'n 67(0)) on LAST
174: shift/reduce conflict (shift 54(0), red'n 67(0)) on NTH
174: shift/reduce conflict (shift 45(0), red'n 67(0)) on NUMBER
174: shift/reduce conflict (shift 56(0), red'n 67(0)) on LOG
174: shift/reduce conflict (shift 57(0), red'n 67(0)) on EXP
174: shift/reduce conflict (shift 58(0), red'n 67(0)) on SIN
174: shift/reduce conflict (shift 59(0), red'n 67(0)) on COS
174: shift/reduce conflict (shift 60(0), red'n 67(0)) on ATAN2
174: shift/reduce conflict (shift 61(0), red'n 67(0)) on SQRT
174: shift/reduce conflict (shift 62(0), red'n 67(0)) on RAND
174: shift/reduce conflict (shift 64(0), red'n 67(0)) on MIN
174: shift/reduce conflict (shift 63(0), red'n 67(0)) on MAX
174: shift/reduce conflict (shift 65(0), red'n 67(0)) on INT
174: shift/reduce conflict (shift 49(5), red'n 67(0)) on '+'
174: shift/reduce conflict (shift 48(5), red'n 67(0)) on '-'
174: shift/reduce conflict (shift 55(7), red'n 67(0)) on NOT
174: shift/reduce conflict (shift 94(0), red'n 67(0)) on '('
state 174
attr: DIR.expr
attr: DIR. (67)
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 67 (src line 207)
expr goto 253
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 175
attr: FROM.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 254
place goto 51
blockname goto 68
last goto 53
state 176
attr: TO.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 255
place goto 51
blockname goto 68
last goto 53
state 177
attr: AT.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 256
place goto 51
blockname goto 68
last goto 53
state 178
attr: BY.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 257
place goto 51
blockname goto 68
last goto 53
state 179
attr: WITH.CORNER
attr: WITH.'.' PLACENAME
attr: WITH.'.' PLACENAME CORNER
attr: WITH.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 258
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'.' shift 259
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 260
place goto 51
blockname goto 68
last goto 53
state 180
attr: SAME. (76)
. reduce 76 (src line 217)
state 181
attr: TEXTATTR. (77)
. reduce 77 (src line 218)
state 182
attr: HEAD. (78)
. reduce 78 (src line 219)
183: shift/reduce conflict (shift 52(0), red'n 80(0)) on PLACENAME
183: shift/reduce conflict (shift 46(0), red'n 80(0)) on VARNAME
183: shift/reduce conflict (shift 66(0), red'n 80(0)) on CORNER
183: shift/reduce conflict (shift 67(0), red'n 80(0)) on HERE
183: shift/reduce conflict (shift 69(0), red'n 80(0)) on LAST
183: shift/reduce conflict (shift 54(0), red'n 80(0)) on NTH
183: shift/reduce conflict (shift 45(0), red'n 80(0)) on NUMBER
183: shift/reduce conflict (shift 56(0), red'n 80(0)) on LOG
183: shift/reduce conflict (shift 57(0), red'n 80(0)) on EXP
183: shift/reduce conflict (shift 58(0), red'n 80(0)) on SIN
183: shift/reduce conflict (shift 59(0), red'n 80(0)) on COS
183: shift/reduce conflict (shift 60(0), red'n 80(0)) on ATAN2
183: shift/reduce conflict (shift 61(0), red'n 80(0)) on SQRT
183: shift/reduce conflict (shift 62(0), red'n 80(0)) on RAND
183: shift/reduce conflict (shift 64(0), red'n 80(0)) on MIN
183: shift/reduce conflict (shift 63(0), red'n 80(0)) on MAX
183: shift/reduce conflict (shift 65(0), red'n 80(0)) on INT
183: shift/reduce conflict (shift 49(5), red'n 80(0)) on '+'
183: shift/reduce conflict (shift 48(5), red'n 80(0)) on '-'
183: shift/reduce conflict (shift 55(7), red'n 80(0)) on NOT
183: shift/reduce conflict (shift 94(0), red'n 80(0)) on '('
state 183
attr: DOT.expr
attr: DOT. (80)
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 80 (src line 221)
expr goto 261
asgn goto 47
place goto 95
blockname goto 68
last goto 53
184: shift/reduce conflict (shift 52(0), red'n 82(0)) on PLACENAME
184: shift/reduce conflict (shift 46(0), red'n 82(0)) on VARNAME
184: shift/reduce conflict (shift 66(0), red'n 82(0)) on CORNER
184: shift/reduce conflict (shift 67(0), red'n 82(0)) on HERE
184: shift/reduce conflict (shift 69(0), red'n 82(0)) on LAST
184: shift/reduce conflict (shift 54(0), red'n 82(0)) on NTH
184: shift/reduce conflict (shift 45(0), red'n 82(0)) on NUMBER
184: shift/reduce conflict (shift 56(0), red'n 82(0)) on LOG
184: shift/reduce conflict (shift 57(0), red'n 82(0)) on EXP
184: shift/reduce conflict (shift 58(0), red'n 82(0)) on SIN
184: shift/reduce conflict (shift 59(0), red'n 82(0)) on COS
184: shift/reduce conflict (shift 60(0), red'n 82(0)) on ATAN2
184: shift/reduce conflict (shift 61(0), red'n 82(0)) on SQRT
184: shift/reduce conflict (shift 62(0), red'n 82(0)) on RAND
184: shift/reduce conflict (shift 64(0), red'n 82(0)) on MIN
184: shift/reduce conflict (shift 63(0), red'n 82(0)) on MAX
184: shift/reduce conflict (shift 65(0), red'n 82(0)) on INT
184: shift/reduce conflict (shift 49(5), red'n 82(0)) on '+'
184: shift/reduce conflict (shift 48(5), red'n 82(0)) on '-'
184: shift/reduce conflict (shift 55(7), red'n 82(0)) on NOT
184: shift/reduce conflict (shift 94(0), red'n 82(0)) on '('
state 184
attr: DASH.expr
attr: DASH. (82)
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 82 (src line 223)
expr goto 262
asgn goto 47
place goto 95
blockname goto 68
last goto 53
185: shift/reduce conflict (shift 264(0), red'n 84(0)) on PLACENAME
185: shift/reduce conflict (shift 46(0), red'n 84(0)) on VARNAME
185: shift/reduce conflict (shift 66(0), red'n 84(0)) on CORNER
185: shift/reduce conflict (shift 67(0), red'n 84(0)) on HERE
185: shift/reduce conflict (shift 69(0), red'n 84(0)) on LAST
185: shift/reduce conflict (shift 54(0), red'n 84(0)) on NTH
185: shift/reduce conflict (shift 45(0), red'n 84(0)) on NUMBER
185: shift/reduce conflict (shift 56(0), red'n 84(0)) on LOG
185: shift/reduce conflict (shift 57(0), red'n 84(0)) on EXP
185: shift/reduce conflict (shift 58(0), red'n 84(0)) on SIN
185: shift/reduce conflict (shift 59(0), red'n 84(0)) on COS
185: shift/reduce conflict (shift 60(0), red'n 84(0)) on ATAN2
185: shift/reduce conflict (shift 61(0), red'n 84(0)) on SQRT
185: shift/reduce conflict (shift 62(0), red'n 84(0)) on RAND
185: shift/reduce conflict (shift 64(0), red'n 84(0)) on MIN
185: shift/reduce conflict (shift 63(0), red'n 84(0)) on MAX
185: shift/reduce conflict (shift 65(0), red'n 84(0)) on INT
185: shift/reduce conflict (shift 49(5), red'n 84(0)) on '+'
185: shift/reduce conflict (shift 48(5), red'n 84(0)) on '-'
185: shift/reduce conflict (shift 55(7), red'n 84(0)) on NOT
185: shift/reduce conflict (shift 94(0), red'n 84(0)) on '('
state 185
attr: CHOP.expr
attr: CHOP. (84)
attr: CHOP.PLACENAME
PLACENAME shift 264
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 84 (src line 225)
expr goto 263
asgn goto 47
place goto 95
blockname goto 68
last goto 53
186: shift/reduce conflict (shift 52(0), red'n 87(0)) on PLACENAME
186: shift/reduce conflict (shift 46(0), red'n 87(0)) on VARNAME
186: shift/reduce conflict (shift 66(0), red'n 87(0)) on CORNER
186: shift/reduce conflict (shift 67(0), red'n 87(0)) on HERE
186: shift/reduce conflict (shift 69(0), red'n 87(0)) on LAST
186: shift/reduce conflict (shift 54(0), red'n 87(0)) on NTH
186: shift/reduce conflict (shift 45(0), red'n 87(0)) on NUMBER
186: shift/reduce conflict (shift 56(0), red'n 87(0)) on LOG
186: shift/reduce conflict (shift 57(0), red'n 87(0)) on EXP
186: shift/reduce conflict (shift 58(0), red'n 87(0)) on SIN
186: shift/reduce conflict (shift 59(0), red'n 87(0)) on COS
186: shift/reduce conflict (shift 60(0), red'n 87(0)) on ATAN2
186: shift/reduce conflict (shift 61(0), red'n 87(0)) on SQRT
186: shift/reduce conflict (shift 62(0), red'n 87(0)) on RAND
186: shift/reduce conflict (shift 64(0), red'n 87(0)) on MIN
186: shift/reduce conflict (shift 63(0), red'n 87(0)) on MAX
186: shift/reduce conflict (shift 65(0), red'n 87(0)) on INT
186: shift/reduce conflict (shift 49(5), red'n 87(0)) on '+'
186: shift/reduce conflict (shift 48(5), red'n 87(0)) on '-'
186: shift/reduce conflict (shift 55(7), red'n 87(0)) on NOT
186: shift/reduce conflict (shift 94(0), red'n 87(0)) on '('
state 186
attr: FILL.expr
attr: FILL. (87)
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 87 (src line 228)
expr goto 265
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 187
attr: NOEDGE. (88)
. reduce 88 (src line 229)
188: shift/reduce conflict (shift 35(0), red'n 89(0)) on TEXT
188: shift/reduce conflict (shift 36(0), red'n 89(0)) on SPRINTF
state 188
attr: textlist. (89)
textlist: textlist.textattr
TEXT shift 35
SPRINTF shift 36
. reduce 89 (src line 230)
text goto 34
textattr goto 81
state 189
prim: lbracket piclist ']'.$$58 attrlist
$$58: . (58)
. reduce 58 (src line 189)
$$58 goto 266
state 190
asgn: VARNAME '=' expr. (25)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 25 (src line 124)
state 191
copylist: copylist copyattr. (28)
. reduce 28 (src line 133)
state 192
copyattr: THRU DEFNAME. (30)
. reduce 30 (src line 137)
state 193
copyattr: UNTIL text. (31)
. reduce 31 (src line 138)
state 194
for: FOR name FROM.expr TO expr BY optop expr DOSTR
for: FOR name FROM.expr TO expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 267
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 195
for: FOR name '='.expr TO expr BY optop expr DOSTR
for: FOR name '='.expr TO expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 268
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 196
if: IF if_expr THENSTR.ELSESTR
if: IF if_expr THENSTR. (37)
ELSESTR shift 269
. reduce 37 (src line 154)
state 197
expr: expr LT.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 270
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 198
if_expr: text EQ.text
TEXT shift 35
SPRINTF shift 36
. error
text goto 271
state 199
if_expr: text NEQ.text
TEXT shift 35
SPRINTF shift 36
. error
text goto 272
state 200
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '(' expr.')'
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 229
. error
state 201
text: SPRINTF '(' text.')'
text: SPRINTF '(' text.',' exprlist ')'
',' shift 274
')' shift 273
. error
state 202
picture: PLACENAME ':' ST picture. (9)
. reduce 9 (src line 103)
state 203
picture: PLACENAME ':' position ST. (10)
. reduce 10 (src line 104)
204: shift/reduce conflict (shift 115(4), red'n 102(0)) on GT
204: shift/reduce conflict (shift 110(5), red'n 102(0)) on '+'
204: shift/reduce conflict (shift 111(5), red'n 102(0)) on '-'
state 204
position: expr ',' expr. (102)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 102 (src line 256)
state 205
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
position: expr LT position.',' position GT
'+' shift 124
'-' shift 125
',' shift 275
. error
206: shift/reduce conflict (shift 109(0), red'n 159(4)) on BETWEEN
206: shift/reduce conflict (shift 107(0), red'n 159(4)) on ','
state 206
position: expr.',' expr
position: expr.LT position ',' position GT
position: expr.BETWEEN position AND position
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr LT expr. (159)
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
BETWEEN shift 109
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 107
. reduce 159 (src line 332)
state 207
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
position: expr BETWEEN position.AND position
AND shift 276
'+' shift 124
'-' shift 125
. error
state 208
expr: expr.'+' expr
expr: expr '+' expr. (142)
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 142 (src line 311)
state 209
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr '-' expr. (143)
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 143 (src line 312)
state 210
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr '*' expr. (144)
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'^' shift 122
. reduce 144 (src line 313)
state 211
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr '/' expr. (145)
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'^' shift 122
. reduce 145 (src line 314)
state 212
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr '%' expr. (146)
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
'^' shift 122
. reduce 146 (src line 317)
state 213
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr GT expr. (158)
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 158 (src line 331)
state 214
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr LE expr. (160)
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 160 (src line 333)
state 215
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr GE expr. (161)
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 161 (src line 334)
state 216
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr EQ expr. (162)
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 162 (src line 335)
state 217
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr NEQ expr. (163)
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 163 (src line 336)
state 218
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr ANDAND expr. (164)
expr: expr.OROR expr
expr: expr.'^' expr
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 164 (src line 337)
state 219
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr OROR expr. (165)
expr: expr.'^' expr
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 165 (src line 338)
state 220
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: expr '^' expr. (169)
'^' shift 122
. reduce 169 (src line 342)
state 221
position: position '+' expr.',' expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 277
. error
state 222
position: position '+' '('.expr ',' expr ')'
expr: '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 278
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 223
position: position '+' place. (107)
expr: place.DOTX
expr: place.DOTY
expr: place.DOTHT
expr: place.DOTWID
expr: place.DOTRAD
DOTX shift 132
DOTY shift 133
DOTHT shift 134
DOTWID shift 135
DOTRAD shift 136
. reduce 107 (src line 261)
state 224
position: position '-' expr.',' expr
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 279
. error
state 225
position: position '-' '('.expr ',' expr ')'
expr: '('.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 280
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 226
position: position '-' place. (108)
expr: place.DOTX
expr: place.DOTY
expr: place.DOTHT
expr: place.DOTWID
expr: place.DOTRAD
DOTX shift 132
DOTY shift 133
DOTHT shift 134
DOTWID shift 135
DOTRAD shift 136
. reduce 108 (src line 262)
state 227
position: '(' position ')'. (101)
. reduce 101 (src line 255)
state 228
position: '(' place ','.place ')'
PLACENAME shift 282
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 284
. error
place goto 281
blockname goto 68
last goto 283
state 229
expr: '(' expr ')'. (149)
. reduce 149 (src line 322)
state 230
blockname: PLACENAME '.' PLACENAME. (127)
. reduce 127 (src line 287)
state 231
expr: PLACENAME '.' VARNAME. (155)
. reduce 155 (src line 328)
state 232
place: last type CORNER. (117)
. reduce 117 (src line 274)
state 233
blockname: last BLOCK '.'.PLACENAME
expr: last BLOCK '.'.VARNAME
PLACENAME shift 285
VARNAME shift 286
. error
state 234
place: NTH type CORNER. (120)
. reduce 120 (src line 277)
state 235
blockname: NTH BLOCK '.'.PLACENAME
expr: NTH BLOCK '.'.VARNAME
PLACENAME shift 287
VARNAME shift 288
. error
state 236
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: LOG '(' expr.')'
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 289
. error
state 237
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: EXP '(' expr.')'
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 290
. error
state 238
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: SIN '(' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 291
. error
state 239
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: COS '(' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 292
. error
state 240
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: ATAN2 '(' expr.',' expr ')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 293
. error
state 241
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: SQRT '(' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 294
. error
state 242
expr: RAND '(' ')'. (174)
. reduce 174 (src line 347)
state 243
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: MAX '(' expr.',' expr ')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 295
. error
state 244
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: MIN '(' expr.',' expr ')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 296
. error
state 245
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: INT '(' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 297
. error
state 246
blockname: PLACENAME '.'.PLACENAME
PLACENAME shift 230
. error
state 247
place: CORNER last type. (118)
. reduce 118 (src line 275)
state 248
blockname: last BLOCK.'.' PLACENAME
type: BLOCK. (138)
'.' shift 298
. reduce 138 (src line 304)
state 249
place: CORNER NTH type. (121)
. reduce 121 (src line 278)
state 250
blockname: NTH BLOCK.'.' PLACENAME
type: BLOCK. (138)
'.' shift 299
. reduce 138 (src line 304)
state 251
varlist: varlist ',' VARNAME. (24)
. reduce 24 (src line 121)
252: shift/reduce conflict (shift 110(5), red'n 63(0)) on '+'
252: shift/reduce conflict (shift 111(5), red'n 63(0)) on '-'
state 252
attr: ATTR expr. (63)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 63 (src line 202)
253: shift/reduce conflict (shift 110(5), red'n 66(0)) on '+'
253: shift/reduce conflict (shift 111(5), red'n 66(0)) on '-'
state 253
attr: DIR expr. (66)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 66 (src line 206)
254: shift/reduce conflict (shift 124(5), red'n 68(0)) on '+'
254: shift/reduce conflict (shift 125(5), red'n 68(0)) on '-'
state 254
attr: FROM position. (68)
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
. reduce 68 (src line 208)
255: shift/reduce conflict (shift 124(5), red'n 69(0)) on '+'
255: shift/reduce conflict (shift 125(5), red'n 69(0)) on '-'
state 255
attr: TO position. (69)
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
. reduce 69 (src line 209)
256: shift/reduce conflict (shift 124(5), red'n 70(0)) on '+'
256: shift/reduce conflict (shift 125(5), red'n 70(0)) on '-'
state 256
attr: AT position. (70)
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
. reduce 70 (src line 210)
257: shift/reduce conflict (shift 124(5), red'n 71(0)) on '+'
257: shift/reduce conflict (shift 125(5), red'n 71(0)) on '-'
state 257
attr: BY position. (71)
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
. reduce 71 (src line 211)
258: shift/reduce conflict (shift 163(0), red'n 72(0)) on PLACENAME
258: shift/reduce conflict (shift 69(0), red'n 72(0)) on LAST
258: shift/reduce conflict (shift 165(0), red'n 72(0)) on NTH
state 258
attr: WITH CORNER. (72)
place: CORNER.PLACENAME
place: CORNER.last type
place: CORNER.NTH type
place: CORNER.blockname
PLACENAME shift 163
LAST shift 69
NTH shift 165
. reduce 72 (src line 212)
blockname goto 166
last goto 164
state 259
attr: WITH '.'.PLACENAME
attr: WITH '.'.PLACENAME CORNER
PLACENAME shift 300
. error
260: shift/reduce conflict (shift 124(5), red'n 75(0)) on '+'
260: shift/reduce conflict (shift 125(5), red'n 75(0)) on '-'
state 260
attr: WITH position. (75)
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
'+' shift 124
'-' shift 125
. reduce 75 (src line 216)
261: shift/reduce conflict (shift 110(5), red'n 79(0)) on '+'
261: shift/reduce conflict (shift 111(5), red'n 79(0)) on '-'
state 261
attr: DOT expr. (79)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 79 (src line 220)
262: shift/reduce conflict (shift 110(5), red'n 81(0)) on '+'
262: shift/reduce conflict (shift 111(5), red'n 81(0)) on '-'
state 262
attr: DASH expr. (81)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 81 (src line 222)
263: shift/reduce conflict (shift 110(5), red'n 83(0)) on '+'
263: shift/reduce conflict (shift 111(5), red'n 83(0)) on '-'
state 263
attr: CHOP expr. (83)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 83 (src line 224)
264: shift/reduce conflict (shift 137(0), red'n 85(0)) on CORNER
state 264
attr: CHOP PLACENAME. (85)
place: PLACENAME. (112)
place: PLACENAME.CORNER
blockname: PLACENAME.'.' PLACENAME
expr: PLACENAME.'.' VARNAME
CORNER shift 137
DOTX reduce 112 (src line 268)
DOTY reduce 112 (src line 268)
DOTHT reduce 112 (src line 268)
DOTWID reduce 112 (src line 268)
DOTRAD reduce 112 (src line 268)
'.' shift 138
. reduce 85 (src line 226)
265: shift/reduce conflict (shift 110(5), red'n 86(0)) on '+'
265: shift/reduce conflict (shift 111(5), red'n 86(0)) on '-'
state 265
attr: FILL expr. (86)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 86 (src line 227)
state 266
prim: lbracket piclist ']' $$58.attrlist
attrlist: . (62)
. reduce 62 (src line 199)
attrlist goto 301
state 267
for: FOR name FROM expr.TO expr BY optop expr DOSTR
for: FOR name FROM expr.TO expr DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
TO shift 302
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 268
for: FOR name '=' expr.TO expr BY optop expr DOSTR
for: FOR name '=' expr.TO expr DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
TO shift 303
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 269
if: IF if_expr THENSTR ELSESTR. (36)
. reduce 36 (src line 152)
state 270
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr LT expr. (159)
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
GT error
LT error
LE error
GE error
EQ error
NEQ error
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 159 (src line 332)
state 271
if_expr: text EQ text. (39)
. reduce 39 (src line 158)
state 272
if_expr: text NEQ text. (40)
. reduce 40 (src line 159)
state 273
text: SPRINTF '(' text ')'. (96)
. reduce 96 (src line 244)
state 274
text: SPRINTF '(' text ','.exprlist ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 305
asgn goto 47
exprlist goto 304
place goto 95
blockname goto 68
last goto 53
state 275
position: expr LT position ','.position GT
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 306
place goto 51
blockname goto 68
last goto 53
state 276
position: expr BETWEEN position AND.position
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 50
. error
expr goto 105
asgn goto 47
position goto 307
place goto 51
blockname goto 68
last goto 53
state 277
position: position '+' expr ','.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 308
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 278
position: position '+' '(' expr.',' expr ')'
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '(' expr.')'
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 309
')' shift 229
. error
state 279
position: position '-' expr ','.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 310
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 280
position: position '-' '(' expr.',' expr ')'
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: '(' expr.')'
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
',' shift 311
')' shift 229
. error
state 281
position: '(' place ',' place.')'
')' shift 312
. error
state 282
place: PLACENAME. (112)
place: PLACENAME.CORNER
blockname: PLACENAME.'.' PLACENAME
CORNER shift 137
'.' shift 246
. reduce 112 (src line 268)
state 283
place: last.type
place: last.type CORNER
blockname: last.BLOCK '.' PLACENAME
last: last.LAST
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 248
LAST shift 141
. error
type goto 139
state 284
place: NTH.type
place: NTH.type CORNER
blockname: NTH.BLOCK '.' PLACENAME
last: NTH.LAST
BOX shift 142
LINE shift 146
ARROW shift 147
CIRCLE shift 143
ELLIPSE shift 144
ARC shift 145
SPLINE shift 148
BLOCK shift 250
LAST shift 151
. error
type goto 149
state 285
blockname: last BLOCK '.' PLACENAME. (125)
. reduce 125 (src line 284)
state 286
expr: last BLOCK '.' VARNAME. (156)
. reduce 156 (src line 329)
state 287
blockname: NTH BLOCK '.' PLACENAME. (126)
. reduce 126 (src line 286)
state 288
expr: NTH BLOCK '.' VARNAME. (157)
. reduce 157 (src line 330)
state 289
expr: LOG '(' expr ')'. (167)
. reduce 167 (src line 340)
state 290
expr: EXP '(' expr ')'. (168)
. reduce 168 (src line 341)
state 291
expr: SIN '(' expr ')'. (170)
. reduce 170 (src line 343)
state 292
expr: COS '(' expr ')'. (171)
. reduce 171 (src line 344)
state 293
expr: ATAN2 '(' expr ','.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 313
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 294
expr: SQRT '(' expr ')'. (173)
. reduce 173 (src line 346)
state 295
expr: MAX '(' expr ','.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 314
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 296
expr: MIN '(' expr ','.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 315
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 297
expr: INT '(' expr ')'. (177)
. reduce 177 (src line 350)
state 298
blockname: last BLOCK '.'.PLACENAME
PLACENAME shift 285
. error
state 299
blockname: NTH BLOCK '.'.PLACENAME
PLACENAME shift 287
. error
300: shift/reduce conflict (shift 316(0), red'n 73(0)) on CORNER
state 300
attr: WITH '.' PLACENAME. (73)
attr: WITH '.' PLACENAME.CORNER
CORNER shift 316
. reduce 73 (src line 213)
state 301
prim: lbracket piclist ']' $$58 attrlist. (59)
attrlist: attrlist.attr
TEXT shift 35
PLACENAME shift 52
VARNAME shift 46
SPRINTF shift 36
ATTR shift 172
TEXTATTR shift 181
FROM shift 175
TO shift 176
AT shift 177
BY shift 178
WITH shift 179
HEAD shift 182
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
SAME shift 180
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
DIR shift 174
DOT shift 183
DASH shift 184
CHOP shift 185
FILL shift 186
NOEDGE shift 187
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. reduce 59 (src line 189)
expr goto 173
asgn goto 47
text goto 34
place goto 95
blockname goto 68
textlist goto 188
textattr goto 32
last goto 53
attr goto 171
state 302
for: FOR name FROM expr TO.expr BY optop expr DOSTR
for: FOR name FROM expr TO.expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 317
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 303
for: FOR name '=' expr TO.expr BY optop expr DOSTR
for: FOR name '=' expr TO.expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 318
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 304
text: SPRINTF '(' text ',' exprlist.')'
exprlist: exprlist.',' expr
',' shift 320
')' shift 319
. error
state 305
exprlist: expr. (98)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 98 (src line 248)
state 306
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
position: expr LT position ',' position.GT
GT shift 321
'+' shift 124
'-' shift 125
. error
307: shift/reduce conflict (shift 124(5), red'n 111(0)) on '+'
307: shift/reduce conflict (shift 125(5), red'n 111(0)) on '-'
state 307
position: position.'+' expr ',' expr
position: position.'-' expr ',' expr
position: position.'+' '(' expr ',' expr ')'
position: position.'-' '(' expr ',' expr ')'
position: position.'+' place
position: position.'-' place
position: expr BETWEEN position AND position. (111)
'+' shift 124
'-' shift 125
. reduce 111 (src line 265)
308: shift/reduce conflict (shift 115(4), red'n 103(0)) on GT
308: shift/reduce conflict (shift 110(5), red'n 103(0)) on '+'
308: shift/reduce conflict (shift 111(5), red'n 103(0)) on '-'
state 308
position: position '+' expr ',' expr. (103)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 103 (src line 257)
state 309
position: position '+' '(' expr ','.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 322
asgn goto 47
place goto 95
blockname goto 68
last goto 53
310: shift/reduce conflict (shift 115(4), red'n 104(0)) on GT
310: shift/reduce conflict (shift 110(5), red'n 104(0)) on '+'
310: shift/reduce conflict (shift 111(5), red'n 104(0)) on '-'
state 310
position: position '-' expr ',' expr. (104)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 104 (src line 258)
state 311
position: position '-' '(' expr ','.expr ')'
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 323
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 312
position: '(' place ',' place ')'. (109)
. reduce 109 (src line 263)
state 313
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: ATAN2 '(' expr ',' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 324
. error
state 314
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: MAX '(' expr ',' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 325
. error
state 315
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
expr: MIN '(' expr ',' expr.')'
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 326
. error
state 316
attr: WITH '.' PLACENAME CORNER. (74)
. reduce 74 (src line 214)
state 317
for: FOR name FROM expr TO expr.BY optop expr DOSTR
for: FOR name FROM expr TO expr.DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
DOSTR shift 328
BY shift 327
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 318
for: FOR name '=' expr TO expr.BY optop expr DOSTR
for: FOR name '=' expr TO expr.DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
DOSTR shift 330
BY shift 329
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 319
text: SPRINTF '(' text ',' exprlist ')'. (97)
. reduce 97 (src line 245)
state 320
exprlist: exprlist ','.expr
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 331
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 321
position: expr LT position ',' position GT. (110)
. reduce 110 (src line 264)
state 322
position: position '+' '(' expr ',' expr.')'
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 332
. error
state 323
position: position '-' '(' expr ',' expr.')'
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
')' shift 333
. error
state 324
expr: ATAN2 '(' expr ',' expr ')'. (172)
. reduce 172 (src line 345)
state 325
expr: MAX '(' expr ',' expr ')'. (175)
. reduce 175 (src line 348)
state 326
expr: MIN '(' expr ',' expr ')'. (176)
. reduce 176 (src line 349)
327: shift/reduce conflict (shift 335(5), red'n 46(0)) on '+'
327: shift/reduce conflict (shift 336(5), red'n 46(0)) on '-'
state 327
for: FOR name FROM expr TO expr BY.optop expr DOSTR
optop: . (46)
'+' shift 335
'-' shift 336
'*' shift 337
'/' shift 338
. reduce 46 (src line 170)
optop goto 334
state 328
for: FOR name FROM expr TO expr DOSTR. (33)
. reduce 33 (src line 144)
329: shift/reduce conflict (shift 335(5), red'n 46(0)) on '+'
329: shift/reduce conflict (shift 336(5), red'n 46(0)) on '-'
state 329
for: FOR name '=' expr TO expr BY.optop expr DOSTR
optop: . (46)
'+' shift 335
'-' shift 336
'*' shift 337
'/' shift 338
. reduce 46 (src line 170)
optop goto 339
state 330
for: FOR name '=' expr TO expr DOSTR. (35)
. reduce 35 (src line 148)
state 331
exprlist: exprlist ',' expr. (99)
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. reduce 99 (src line 250)
state 332
position: position '+' '(' expr ',' expr ')'. (105)
. reduce 105 (src line 259)
state 333
position: position '-' '(' expr ',' expr ')'. (106)
. reduce 106 (src line 260)
state 334
for: FOR name FROM expr TO expr BY optop.expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 340
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 335
optop: '+'. (42)
. reduce 42 (src line 165)
state 336
optop: '-'. (43)
. reduce 43 (src line 167)
state 337
optop: '*'. (44)
. reduce 44 (src line 168)
state 338
optop: '/'. (45)
. reduce 45 (src line 169)
state 339
for: FOR name '=' expr TO expr BY optop.expr DOSTR
PLACENAME shift 52
VARNAME shift 46
CORNER shift 66
HERE shift 67
LAST shift 69
NTH shift 54
NUMBER shift 45
LOG shift 56
EXP shift 57
SIN shift 58
COS shift 59
ATAN2 shift 60
SQRT shift 61
RAND shift 62
MIN shift 64
MAX shift 63
INT shift 65
'+' shift 49
'-' shift 48
NOT shift 55
'(' shift 94
. error
expr goto 341
asgn goto 47
place goto 95
blockname goto 68
last goto 53
state 340
for: FOR name FROM expr TO expr BY optop expr.DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
DOSTR shift 342
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 341
for: FOR name '=' expr TO expr BY optop expr.DOSTR
expr: expr.'+' expr
expr: expr.'-' expr
expr: expr.'*' expr
expr: expr.'/' expr
expr: expr.'%' expr
expr: expr.GT expr
expr: expr.LT expr
expr: expr.LE expr
expr: expr.GE expr
expr: expr.EQ expr
expr: expr.NEQ expr
expr: expr.ANDAND expr
expr: expr.OROR expr
expr: expr.'^' expr
DOSTR shift 343
OROR shift 121
ANDAND shift 120
GT shift 115
LT shift 197
LE shift 116
GE shift 117
EQ shift 118
NEQ shift 119
'+' shift 110
'-' shift 111
'*' shift 112
'/' shift 113
'%' shift 114
'^' shift 122
. error
state 342
for: FOR name FROM expr TO expr BY optop expr DOSTR. (32)
. reduce 32 (src line 141)
state 343
for: FOR name '=' expr TO expr BY optop expr DOSTR. (34)
. reduce 34 (src line 146)
117 terminals, 30 nonterminals
178 grammar rules, 344/8000 states
208 shift/reduce, 0 reduce/reduce conflicts reported
129 working sets used
memory: parser 785/120000
323 extra closures
2895 shift entries, 49 exceptions
175 goto entries
398 entries saved by goto default
Optimizer space used: output 1654/120000
1654 table entries, 501 zero
maximum spread: 117, maximum offset: 339