1*e86eba8aSchristos 0 $accept : list $end 2*e86eba8aSchristos 3*e86eba8aSchristos 1 list : 4*e86eba8aSchristos 2 | list stat '\n' 5*e86eba8aSchristos 3 | list error '\n' 6*e86eba8aSchristos 7*e86eba8aSchristos 4 stat : expr 8*e86eba8aSchristos 5 | LETTER '=' expr 9*e86eba8aSchristos 10*e86eba8aSchristos 6 expr : '(' expr ')' 11*e86eba8aSchristos 7 | expr '+' expr 12*e86eba8aSchristos 8 | expr '-' expr 13*e86eba8aSchristos 9 | expr '*' expr 14*e86eba8aSchristos 10 | expr '/' expr 15*e86eba8aSchristos 11 | expr '%' expr 16*e86eba8aSchristos 12 | expr '&' expr 17*e86eba8aSchristos 13 | expr '|' expr 18*e86eba8aSchristos 14 | '-' expr 19*e86eba8aSchristos 15 | LETTER 20*e86eba8aSchristos 16 | number 21*e86eba8aSchristos 22*e86eba8aSchristos 17 number : DIGIT 23*e86eba8aSchristos 18 | number DIGIT 24*e86eba8aSchristos 25*e86eba8aSchristosstate 0 26*e86eba8aSchristos $accept : . list $end (0) 27*e86eba8aSchristos list : . (1) 28*e86eba8aSchristos 29*e86eba8aSchristos . reduce 1 30*e86eba8aSchristos 31*e86eba8aSchristos list goto 1 32*e86eba8aSchristos 33*e86eba8aSchristos 34*e86eba8aSchristosstate 1 35*e86eba8aSchristos $accept : list . $end (0) 36*e86eba8aSchristos list : list . stat '\n' (2) 37*e86eba8aSchristos list : list . error '\n' (3) 38*e86eba8aSchristos 39*e86eba8aSchristos $end accept 40*e86eba8aSchristos error shift 2 41*e86eba8aSchristos DIGIT shift 3 42*e86eba8aSchristos LETTER shift 4 43*e86eba8aSchristos '-' shift 5 44*e86eba8aSchristos '(' shift 6 45*e86eba8aSchristos . error 46*e86eba8aSchristos 47*e86eba8aSchristos stat goto 7 48*e86eba8aSchristos expr goto 8 49*e86eba8aSchristos number goto 9 50*e86eba8aSchristos 51*e86eba8aSchristos 52*e86eba8aSchristosstate 2 53*e86eba8aSchristos list : list error . '\n' (3) 54*e86eba8aSchristos 55*e86eba8aSchristos '\n' shift 10 56*e86eba8aSchristos . error 57*e86eba8aSchristos 58*e86eba8aSchristos 59*e86eba8aSchristosstate 3 60*e86eba8aSchristos number : DIGIT . (17) 61*e86eba8aSchristos 62*e86eba8aSchristos . reduce 17 63*e86eba8aSchristos 64*e86eba8aSchristos 65*e86eba8aSchristosstate 4 66*e86eba8aSchristos stat : LETTER . '=' expr (5) 67*e86eba8aSchristos expr : LETTER . (15) 68*e86eba8aSchristos 69*e86eba8aSchristos '=' shift 11 70*e86eba8aSchristos '|' reduce 15 71*e86eba8aSchristos '&' reduce 15 72*e86eba8aSchristos '+' reduce 15 73*e86eba8aSchristos '-' reduce 15 74*e86eba8aSchristos '*' reduce 15 75*e86eba8aSchristos '/' reduce 15 76*e86eba8aSchristos '%' reduce 15 77*e86eba8aSchristos '\n' reduce 15 78*e86eba8aSchristos 79*e86eba8aSchristos 80*e86eba8aSchristosstate 5 81*e86eba8aSchristos expr : '-' . expr (14) 82*e86eba8aSchristos 83*e86eba8aSchristos DIGIT shift 3 84*e86eba8aSchristos LETTER shift 12 85*e86eba8aSchristos '-' shift 5 86*e86eba8aSchristos '(' shift 6 87*e86eba8aSchristos . error 88*e86eba8aSchristos 89*e86eba8aSchristos expr goto 13 90*e86eba8aSchristos number goto 9 91*e86eba8aSchristos 92*e86eba8aSchristos 93*e86eba8aSchristosstate 6 94*e86eba8aSchristos expr : '(' . expr ')' (6) 95*e86eba8aSchristos 96*e86eba8aSchristos DIGIT shift 3 97*e86eba8aSchristos LETTER shift 12 98*e86eba8aSchristos '-' shift 5 99*e86eba8aSchristos '(' shift 6 100*e86eba8aSchristos . error 101*e86eba8aSchristos 102*e86eba8aSchristos expr goto 14 103*e86eba8aSchristos number goto 9 104*e86eba8aSchristos 105*e86eba8aSchristos 106*e86eba8aSchristosstate 7 107*e86eba8aSchristos list : list stat . '\n' (2) 108*e86eba8aSchristos 109*e86eba8aSchristos '\n' shift 15 110*e86eba8aSchristos . error 111*e86eba8aSchristos 112*e86eba8aSchristos 113*e86eba8aSchristosstate 8 114*e86eba8aSchristos stat : expr . (4) 115*e86eba8aSchristos expr : expr . '+' expr (7) 116*e86eba8aSchristos expr : expr . '-' expr (8) 117*e86eba8aSchristos expr : expr . '*' expr (9) 118*e86eba8aSchristos expr : expr . '/' expr (10) 119*e86eba8aSchristos expr : expr . '%' expr (11) 120*e86eba8aSchristos expr : expr . '&' expr (12) 121*e86eba8aSchristos expr : expr . '|' expr (13) 122*e86eba8aSchristos 123*e86eba8aSchristos '|' shift 16 124*e86eba8aSchristos '&' shift 17 125*e86eba8aSchristos '+' shift 18 126*e86eba8aSchristos '-' shift 19 127*e86eba8aSchristos '*' shift 20 128*e86eba8aSchristos '/' shift 21 129*e86eba8aSchristos '%' shift 22 130*e86eba8aSchristos '\n' reduce 4 131*e86eba8aSchristos 132*e86eba8aSchristos 133*e86eba8aSchristosstate 9 134*e86eba8aSchristos expr : number . (16) 135*e86eba8aSchristos number : number . DIGIT (18) 136*e86eba8aSchristos 137*e86eba8aSchristos DIGIT shift 23 138*e86eba8aSchristos '|' reduce 16 139*e86eba8aSchristos '&' reduce 16 140*e86eba8aSchristos '+' reduce 16 141*e86eba8aSchristos '-' reduce 16 142*e86eba8aSchristos '*' reduce 16 143*e86eba8aSchristos '/' reduce 16 144*e86eba8aSchristos '%' reduce 16 145*e86eba8aSchristos '\n' reduce 16 146*e86eba8aSchristos ')' reduce 16 147*e86eba8aSchristos 148*e86eba8aSchristos 149*e86eba8aSchristosstate 10 150*e86eba8aSchristos list : list error '\n' . (3) 151*e86eba8aSchristos 152*e86eba8aSchristos . reduce 3 153*e86eba8aSchristos 154*e86eba8aSchristos 155*e86eba8aSchristosstate 11 156*e86eba8aSchristos stat : LETTER '=' . expr (5) 157*e86eba8aSchristos 158*e86eba8aSchristos DIGIT shift 3 159*e86eba8aSchristos LETTER shift 12 160*e86eba8aSchristos '-' shift 5 161*e86eba8aSchristos '(' shift 6 162*e86eba8aSchristos . error 163*e86eba8aSchristos 164*e86eba8aSchristos expr goto 24 165*e86eba8aSchristos number goto 9 166*e86eba8aSchristos 167*e86eba8aSchristos 168*e86eba8aSchristosstate 12 169*e86eba8aSchristos expr : LETTER . (15) 170*e86eba8aSchristos 171*e86eba8aSchristos . reduce 15 172*e86eba8aSchristos 173*e86eba8aSchristos 174*e86eba8aSchristosstate 13 175*e86eba8aSchristos expr : expr . '+' expr (7) 176*e86eba8aSchristos expr : expr . '-' expr (8) 177*e86eba8aSchristos expr : expr . '*' expr (9) 178*e86eba8aSchristos expr : expr . '/' expr (10) 179*e86eba8aSchristos expr : expr . '%' expr (11) 180*e86eba8aSchristos expr : expr . '&' expr (12) 181*e86eba8aSchristos expr : expr . '|' expr (13) 182*e86eba8aSchristos expr : '-' expr . (14) 183*e86eba8aSchristos 184*e86eba8aSchristos . reduce 14 185*e86eba8aSchristos 186*e86eba8aSchristos 187*e86eba8aSchristosstate 14 188*e86eba8aSchristos expr : '(' expr . ')' (6) 189*e86eba8aSchristos expr : expr . '+' expr (7) 190*e86eba8aSchristos expr : expr . '-' expr (8) 191*e86eba8aSchristos expr : expr . '*' expr (9) 192*e86eba8aSchristos expr : expr . '/' expr (10) 193*e86eba8aSchristos expr : expr . '%' expr (11) 194*e86eba8aSchristos expr : expr . '&' expr (12) 195*e86eba8aSchristos expr : expr . '|' expr (13) 196*e86eba8aSchristos 197*e86eba8aSchristos '|' shift 16 198*e86eba8aSchristos '&' shift 17 199*e86eba8aSchristos '+' shift 18 200*e86eba8aSchristos '-' shift 19 201*e86eba8aSchristos '*' shift 20 202*e86eba8aSchristos '/' shift 21 203*e86eba8aSchristos '%' shift 22 204*e86eba8aSchristos ')' shift 25 205*e86eba8aSchristos . error 206*e86eba8aSchristos 207*e86eba8aSchristos 208*e86eba8aSchristosstate 15 209*e86eba8aSchristos list : list stat '\n' . (2) 210*e86eba8aSchristos 211*e86eba8aSchristos . reduce 2 212*e86eba8aSchristos 213*e86eba8aSchristos 214*e86eba8aSchristosstate 16 215*e86eba8aSchristos expr : expr '|' . expr (13) 216*e86eba8aSchristos 217*e86eba8aSchristos DIGIT shift 3 218*e86eba8aSchristos LETTER shift 12 219*e86eba8aSchristos '-' shift 5 220*e86eba8aSchristos '(' shift 6 221*e86eba8aSchristos . error 222*e86eba8aSchristos 223*e86eba8aSchristos expr goto 26 224*e86eba8aSchristos number goto 9 225*e86eba8aSchristos 226*e86eba8aSchristos 227*e86eba8aSchristosstate 17 228*e86eba8aSchristos expr : expr '&' . expr (12) 229*e86eba8aSchristos 230*e86eba8aSchristos DIGIT shift 3 231*e86eba8aSchristos LETTER shift 12 232*e86eba8aSchristos '-' shift 5 233*e86eba8aSchristos '(' shift 6 234*e86eba8aSchristos . error 235*e86eba8aSchristos 236*e86eba8aSchristos expr goto 27 237*e86eba8aSchristos number goto 9 238*e86eba8aSchristos 239*e86eba8aSchristos 240*e86eba8aSchristosstate 18 241*e86eba8aSchristos expr : expr '+' . expr (7) 242*e86eba8aSchristos 243*e86eba8aSchristos DIGIT shift 3 244*e86eba8aSchristos LETTER shift 12 245*e86eba8aSchristos '-' shift 5 246*e86eba8aSchristos '(' shift 6 247*e86eba8aSchristos . error 248*e86eba8aSchristos 249*e86eba8aSchristos expr goto 28 250*e86eba8aSchristos number goto 9 251*e86eba8aSchristos 252*e86eba8aSchristos 253*e86eba8aSchristosstate 19 254*e86eba8aSchristos expr : expr '-' . expr (8) 255*e86eba8aSchristos 256*e86eba8aSchristos DIGIT shift 3 257*e86eba8aSchristos LETTER shift 12 258*e86eba8aSchristos '-' shift 5 259*e86eba8aSchristos '(' shift 6 260*e86eba8aSchristos . error 261*e86eba8aSchristos 262*e86eba8aSchristos expr goto 29 263*e86eba8aSchristos number goto 9 264*e86eba8aSchristos 265*e86eba8aSchristos 266*e86eba8aSchristosstate 20 267*e86eba8aSchristos expr : expr '*' . expr (9) 268*e86eba8aSchristos 269*e86eba8aSchristos DIGIT shift 3 270*e86eba8aSchristos LETTER shift 12 271*e86eba8aSchristos '-' shift 5 272*e86eba8aSchristos '(' shift 6 273*e86eba8aSchristos . error 274*e86eba8aSchristos 275*e86eba8aSchristos expr goto 30 276*e86eba8aSchristos number goto 9 277*e86eba8aSchristos 278*e86eba8aSchristos 279*e86eba8aSchristosstate 21 280*e86eba8aSchristos expr : expr '/' . expr (10) 281*e86eba8aSchristos 282*e86eba8aSchristos DIGIT shift 3 283*e86eba8aSchristos LETTER shift 12 284*e86eba8aSchristos '-' shift 5 285*e86eba8aSchristos '(' shift 6 286*e86eba8aSchristos . error 287*e86eba8aSchristos 288*e86eba8aSchristos expr goto 31 289*e86eba8aSchristos number goto 9 290*e86eba8aSchristos 291*e86eba8aSchristos 292*e86eba8aSchristosstate 22 293*e86eba8aSchristos expr : expr '%' . expr (11) 294*e86eba8aSchristos 295*e86eba8aSchristos DIGIT shift 3 296*e86eba8aSchristos LETTER shift 12 297*e86eba8aSchristos '-' shift 5 298*e86eba8aSchristos '(' shift 6 299*e86eba8aSchristos . error 300*e86eba8aSchristos 301*e86eba8aSchristos expr goto 32 302*e86eba8aSchristos number goto 9 303*e86eba8aSchristos 304*e86eba8aSchristos 305*e86eba8aSchristosstate 23 306*e86eba8aSchristos number : number DIGIT . (18) 307*e86eba8aSchristos 308*e86eba8aSchristos . reduce 18 309*e86eba8aSchristos 310*e86eba8aSchristos 311*e86eba8aSchristosstate 24 312*e86eba8aSchristos stat : LETTER '=' expr . (5) 313*e86eba8aSchristos expr : expr . '+' expr (7) 314*e86eba8aSchristos expr : expr . '-' expr (8) 315*e86eba8aSchristos expr : expr . '*' expr (9) 316*e86eba8aSchristos expr : expr . '/' expr (10) 317*e86eba8aSchristos expr : expr . '%' expr (11) 318*e86eba8aSchristos expr : expr . '&' expr (12) 319*e86eba8aSchristos expr : expr . '|' expr (13) 320*e86eba8aSchristos 321*e86eba8aSchristos '|' shift 16 322*e86eba8aSchristos '&' shift 17 323*e86eba8aSchristos '+' shift 18 324*e86eba8aSchristos '-' shift 19 325*e86eba8aSchristos '*' shift 20 326*e86eba8aSchristos '/' shift 21 327*e86eba8aSchristos '%' shift 22 328*e86eba8aSchristos '\n' reduce 5 329*e86eba8aSchristos 330*e86eba8aSchristos 331*e86eba8aSchristosstate 25 332*e86eba8aSchristos expr : '(' expr ')' . (6) 333*e86eba8aSchristos 334*e86eba8aSchristos . reduce 6 335*e86eba8aSchristos 336*e86eba8aSchristos 337*e86eba8aSchristosstate 26 338*e86eba8aSchristos expr : expr . '+' expr (7) 339*e86eba8aSchristos expr : expr . '-' expr (8) 340*e86eba8aSchristos expr : expr . '*' expr (9) 341*e86eba8aSchristos expr : expr . '/' expr (10) 342*e86eba8aSchristos expr : expr . '%' expr (11) 343*e86eba8aSchristos expr : expr . '&' expr (12) 344*e86eba8aSchristos expr : expr . '|' expr (13) 345*e86eba8aSchristos expr : expr '|' expr . (13) 346*e86eba8aSchristos 347*e86eba8aSchristos '&' shift 17 348*e86eba8aSchristos '+' shift 18 349*e86eba8aSchristos '-' shift 19 350*e86eba8aSchristos '*' shift 20 351*e86eba8aSchristos '/' shift 21 352*e86eba8aSchristos '%' shift 22 353*e86eba8aSchristos '|' reduce 13 354*e86eba8aSchristos '\n' reduce 13 355*e86eba8aSchristos ')' reduce 13 356*e86eba8aSchristos 357*e86eba8aSchristos 358*e86eba8aSchristosstate 27 359*e86eba8aSchristos expr : expr . '+' expr (7) 360*e86eba8aSchristos expr : expr . '-' expr (8) 361*e86eba8aSchristos expr : expr . '*' expr (9) 362*e86eba8aSchristos expr : expr . '/' expr (10) 363*e86eba8aSchristos expr : expr . '%' expr (11) 364*e86eba8aSchristos expr : expr . '&' expr (12) 365*e86eba8aSchristos expr : expr '&' expr . (12) 366*e86eba8aSchristos expr : expr . '|' expr (13) 367*e86eba8aSchristos 368*e86eba8aSchristos '+' shift 18 369*e86eba8aSchristos '-' shift 19 370*e86eba8aSchristos '*' shift 20 371*e86eba8aSchristos '/' shift 21 372*e86eba8aSchristos '%' shift 22 373*e86eba8aSchristos '|' reduce 12 374*e86eba8aSchristos '&' reduce 12 375*e86eba8aSchristos '\n' reduce 12 376*e86eba8aSchristos ')' reduce 12 377*e86eba8aSchristos 378*e86eba8aSchristos 379*e86eba8aSchristosstate 28 380*e86eba8aSchristos expr : expr . '+' expr (7) 381*e86eba8aSchristos expr : expr '+' expr . (7) 382*e86eba8aSchristos expr : expr . '-' expr (8) 383*e86eba8aSchristos expr : expr . '*' expr (9) 384*e86eba8aSchristos expr : expr . '/' expr (10) 385*e86eba8aSchristos expr : expr . '%' expr (11) 386*e86eba8aSchristos expr : expr . '&' expr (12) 387*e86eba8aSchristos expr : expr . '|' expr (13) 388*e86eba8aSchristos 389*e86eba8aSchristos '*' shift 20 390*e86eba8aSchristos '/' shift 21 391*e86eba8aSchristos '%' shift 22 392*e86eba8aSchristos '|' reduce 7 393*e86eba8aSchristos '&' reduce 7 394*e86eba8aSchristos '+' reduce 7 395*e86eba8aSchristos '-' reduce 7 396*e86eba8aSchristos '\n' reduce 7 397*e86eba8aSchristos ')' reduce 7 398*e86eba8aSchristos 399*e86eba8aSchristos 400*e86eba8aSchristosstate 29 401*e86eba8aSchristos expr : expr . '+' expr (7) 402*e86eba8aSchristos expr : expr . '-' expr (8) 403*e86eba8aSchristos expr : expr '-' expr . (8) 404*e86eba8aSchristos expr : expr . '*' expr (9) 405*e86eba8aSchristos expr : expr . '/' expr (10) 406*e86eba8aSchristos expr : expr . '%' expr (11) 407*e86eba8aSchristos expr : expr . '&' expr (12) 408*e86eba8aSchristos expr : expr . '|' expr (13) 409*e86eba8aSchristos 410*e86eba8aSchristos '*' shift 20 411*e86eba8aSchristos '/' shift 21 412*e86eba8aSchristos '%' shift 22 413*e86eba8aSchristos '|' reduce 8 414*e86eba8aSchristos '&' reduce 8 415*e86eba8aSchristos '+' reduce 8 416*e86eba8aSchristos '-' reduce 8 417*e86eba8aSchristos '\n' reduce 8 418*e86eba8aSchristos ')' reduce 8 419*e86eba8aSchristos 420*e86eba8aSchristos 421*e86eba8aSchristosstate 30 422*e86eba8aSchristos expr : expr . '+' expr (7) 423*e86eba8aSchristos expr : expr . '-' expr (8) 424*e86eba8aSchristos expr : expr . '*' expr (9) 425*e86eba8aSchristos expr : expr '*' expr . (9) 426*e86eba8aSchristos expr : expr . '/' expr (10) 427*e86eba8aSchristos expr : expr . '%' expr (11) 428*e86eba8aSchristos expr : expr . '&' expr (12) 429*e86eba8aSchristos expr : expr . '|' expr (13) 430*e86eba8aSchristos 431*e86eba8aSchristos . reduce 9 432*e86eba8aSchristos 433*e86eba8aSchristos 434*e86eba8aSchristosstate 31 435*e86eba8aSchristos expr : expr . '+' expr (7) 436*e86eba8aSchristos expr : expr . '-' expr (8) 437*e86eba8aSchristos expr : expr . '*' expr (9) 438*e86eba8aSchristos expr : expr . '/' expr (10) 439*e86eba8aSchristos expr : expr '/' expr . (10) 440*e86eba8aSchristos expr : expr . '%' expr (11) 441*e86eba8aSchristos expr : expr . '&' expr (12) 442*e86eba8aSchristos expr : expr . '|' expr (13) 443*e86eba8aSchristos 444*e86eba8aSchristos . reduce 10 445*e86eba8aSchristos 446*e86eba8aSchristos 447*e86eba8aSchristosstate 32 448*e86eba8aSchristos expr : expr . '+' expr (7) 449*e86eba8aSchristos expr : expr . '-' expr (8) 450*e86eba8aSchristos expr : expr . '*' expr (9) 451*e86eba8aSchristos expr : expr . '/' expr (10) 452*e86eba8aSchristos expr : expr . '%' expr (11) 453*e86eba8aSchristos expr : expr '%' expr . (11) 454*e86eba8aSchristos expr : expr . '&' expr (12) 455*e86eba8aSchristos expr : expr . '|' expr (13) 456*e86eba8aSchristos 457*e86eba8aSchristos . reduce 11 458*e86eba8aSchristos 459*e86eba8aSchristos 460*e86eba8aSchristos16 terminals, 5 nonterminals 461*e86eba8aSchristos19 grammar rules, 33 states 462