-- parser produced by Happy Version 1.9 module Parser where import Lex data HappyAbsSyn t6 t7 t8 t9 t10 t11 t12 t13 = HappyTerminal Token | HappyErrorToken Int | HappyAbsSyn6 t6 | HappyAbsSyn7 t7 | HappyAbsSyn8 t8 | HappyAbsSyn9 t9 | HappyAbsSyn10 t10 | HappyAbsSyn11 t11 | HappyAbsSyn12 t12 | HappyAbsSyn13 t13 action_0 (15) = happyShift action_4 action_0 (16) = happyShift action_26 action_0 (17) = happyShift action_13 action_0 (21) = happyShift action_14 action_0 (23) = happyShift action_27 action_0 (28) = happyShift action_16 action_0 (29) = happyShift action_17 action_0 (30) = happyShift action_18 action_0 (31) = happyShift action_19 action_0 (36) = happyShift action_20 action_0 (37) = happyShift action_21 action_0 (6) = happyGoto action_25 action_0 _ = happyFail action_1 (15) = happyShift action_4 action_1 (16) = happyShift action_12 action_1 (17) = happyShift action_13 action_1 (21) = happyShift action_14 action_1 (23) = happyShift action_15 action_1 (28) = happyShift action_16 action_1 (29) = happyShift action_17 action_1 (30) = happyShift action_18 action_1 (31) = happyShift action_19 action_1 (36) = happyShift action_20 action_1 (37) = happyShift action_21 action_1 (39) = happyShift action_22 action_1 (43) = happyShift action_23 action_1 (44) = happyShift action_24 action_1 (6) = happyGoto action_8 action_1 (9) = happyGoto action_9 action_1 (10) = happyGoto action_10 action_1 (11) = happyGoto action_11 action_1 _ = happyFail action_2 (16) = happyShift action_7 action_2 (12) = happyGoto action_5 action_2 (13) = happyGoto action_6 action_2 _ = happyReduce_38 action_3 (15) = happyShift action_4 action_3 _ = happyFail action_4 _ = happyReduce_3 action_5 (16) = happyShift action_7 action_5 (12) = happyGoto action_5 action_5 (13) = happyGoto action_53 action_5 _ = happyReduce_38 action_6 (45) = happyAccept action_6 _ = happyFail action_7 (18) = happyShift action_52 action_7 _ = happyFail action_8 (15) = happyShift action_4 action_8 (16) = happyShift action_26 action_8 (17) = happyShift action_13 action_8 (21) = happyShift action_14 action_8 (23) = happyShift action_27 action_8 (26) = happyShift action_30 action_8 (27) = happyShift action_31 action_8 (28) = happyShift action_16 action_8 (29) = happyShift action_17 action_8 (30) = happyShift action_18 action_8 (31) = happyShift action_19 action_8 (33) = happyShift action_50 action_8 (34) = happyShift action_51 action_8 (36) = happyShift action_20 action_8 (37) = happyShift action_21 action_8 (6) = happyGoto action_29 action_8 _ = happyFail action_9 (40) = happyShift action_47 action_9 (41) = happyShift action_48 action_9 (42) = happyShift action_49 action_9 (45) = happyAccept action_9 _ = happyFail action_10 _ = happyReduce_26 action_11 _ = happyReduce_27 action_12 (19) = happyReduce_23 action_12 (20) = happyReduce_23 action_12 (23) = happyShift action_46 action_12 (24) = happyReduce_6 action_12 (40) = happyReduce_23 action_12 (41) = happyReduce_23 action_12 (42) = happyReduce_23 action_12 (45) = happyReduce_23 action_12 _ = happyReduce_6 action_13 (16) = happyShift action_45 action_13 _ = happyFail action_14 (15) = happyShift action_4 action_14 (16) = happyShift action_26 action_14 (17) = happyShift action_13 action_14 (21) = happyShift action_14 action_14 (23) = happyShift action_27 action_14 (28) = happyShift action_16 action_14 (29) = happyShift action_17 action_14 (30) = happyShift action_18 action_14 (31) = happyShift action_19 action_14 (36) = happyShift action_20 action_14 (37) = happyShift action_21 action_14 (6) = happyGoto action_42 action_14 (7) = happyGoto action_43 action_14 (8) = happyGoto action_44 action_14 _ = happyReduce_18 action_15 (15) = happyShift action_4 action_15 (16) = happyShift action_12 action_15 (17) = happyShift action_13 action_15 (21) = happyShift action_14 action_15 (23) = happyShift action_15 action_15 (28) = happyShift action_16 action_15 (29) = happyShift action_17 action_15 (30) = happyShift action_18 action_15 (31) = happyShift action_19 action_15 (36) = happyShift action_20 action_15 (37) = happyShift action_21 action_15 (39) = happyShift action_22 action_15 (43) = happyShift action_23 action_15 (44) = happyShift action_24 action_15 (6) = happyGoto action_40 action_15 (9) = happyGoto action_41 action_15 (10) = happyGoto action_10 action_15 (11) = happyGoto action_11 action_15 _ = happyFail action_16 (16) = happyShift action_39 action_16 _ = happyFail action_17 (15) = happyShift action_38 action_17 _ = happyFail action_18 (15) = happyShift action_37 action_18 _ = happyFail action_19 (15) = happyShift action_4 action_19 (16) = happyShift action_26 action_19 (17) = happyShift action_13 action_19 (21) = happyShift action_14 action_19 (23) = happyShift action_27 action_19 (28) = happyShift action_16 action_19 (29) = happyShift action_17 action_19 (30) = happyShift action_18 action_19 (31) = happyShift action_19 action_19 (36) = happyShift action_20 action_19 (37) = happyShift action_21 action_19 (6) = happyGoto action_36 action_19 _ = happyFail action_20 (15) = happyShift action_4 action_20 (16) = happyShift action_26 action_20 (17) = happyShift action_13 action_20 (21) = happyShift action_14 action_20 (23) = happyShift action_27 action_20 (28) = happyShift action_16 action_20 (29) = happyShift action_17 action_20 (30) = happyShift action_18 action_20 (31) = happyShift action_19 action_20 (36) = happyShift action_20 action_20 (37) = happyShift action_21 action_20 (6) = happyGoto action_35 action_20 _ = happyFail action_21 (15) = happyShift action_4 action_21 (16) = happyShift action_26 action_21 (17) = happyShift action_13 action_21 (21) = happyShift action_14 action_21 (23) = happyShift action_27 action_21 (28) = happyShift action_16 action_21 (29) = happyShift action_17 action_21 (30) = happyShift action_18 action_21 (31) = happyShift action_19 action_21 (36) = happyShift action_20 action_21 (37) = happyShift action_21 action_21 (6) = happyGoto action_34 action_21 _ = happyFail action_22 _ = happyReduce_22 action_23 (16) = happyShift action_33 action_23 _ = happyFail action_24 (16) = happyShift action_32 action_24 _ = happyFail action_25 (15) = happyShift action_4 action_25 (16) = happyShift action_26 action_25 (17) = happyShift action_13 action_25 (21) = happyShift action_14 action_25 (23) = happyShift action_27 action_25 (26) = happyShift action_30 action_25 (27) = happyShift action_31 action_25 (28) = happyShift action_16 action_25 (29) = happyShift action_17 action_25 (30) = happyShift action_18 action_25 (31) = happyShift action_19 action_25 (36) = happyShift action_20 action_25 (37) = happyShift action_21 action_25 (45) = happyAccept action_25 (6) = happyGoto action_29 action_25 _ = happyFail action_26 _ = happyReduce_6 action_27 (15) = happyShift action_4 action_27 (16) = happyShift action_26 action_27 (17) = happyShift action_13 action_27 (21) = happyShift action_14 action_27 (23) = happyShift action_27 action_27 (28) = happyShift action_16 action_27 (29) = happyShift action_17 action_27 (30) = happyShift action_18 action_27 (31) = happyShift action_19 action_27 (36) = happyShift action_20 action_27 (37) = happyShift action_21 action_27 (6) = happyGoto action_28 action_27 _ = happyFail action_28 (15) = happyShift action_4 action_28 (16) = happyShift action_26 action_28 (17) = happyShift action_13 action_28 (21) = happyShift action_14 action_28 (23) = happyShift action_27 action_28 (24) = happyShift action_67 action_28 (26) = happyShift action_30 action_28 (27) = happyShift action_31 action_28 (28) = happyShift action_16 action_28 (29) = happyShift action_17 action_28 (30) = happyShift action_18 action_28 (31) = happyShift action_19 action_28 (36) = happyShift action_20 action_28 (37) = happyShift action_21 action_28 (6) = happyGoto action_29 action_28 _ = happyFail action_29 (26) = happyShift action_30 action_29 (27) = happyShift action_31 action_29 (6) = happyGoto action_29 action_29 _ = happyReduce_8 action_30 _ = happyReduce_4 action_31 (15) = happyShift action_4 action_31 (16) = happyShift action_26 action_31 (17) = happyShift action_13 action_31 (21) = happyShift action_14 action_31 (23) = happyShift action_27 action_31 (28) = happyShift action_16 action_31 (29) = happyShift action_17 action_31 (30) = happyShift action_18 action_31 (31) = happyShift action_19 action_31 (36) = happyShift action_20 action_31 (37) = happyShift action_21 action_31 (6) = happyGoto action_77 action_31 _ = happyFail action_32 (20) = happyShift action_76 action_32 _ = happyFail action_33 (20) = happyShift action_75 action_33 _ = happyFail action_34 (15) = happyShift action_4 action_34 (16) = happyShift action_26 action_34 (17) = happyShift action_13 action_34 (21) = happyShift action_14 action_34 (23) = happyShift action_27 action_34 (26) = happyShift action_30 action_34 (27) = happyShift action_31 action_34 (28) = happyShift action_16 action_34 (29) = happyShift action_17 action_34 (30) = happyShift action_18 action_34 (31) = happyShift action_19 action_34 (36) = happyShift action_20 action_34 (37) = happyShift action_21 action_34 (40) = happyShift action_74 action_34 (6) = happyGoto action_29 action_34 _ = happyFail action_35 (15) = happyShift action_4 action_35 (16) = happyShift action_26 action_35 (17) = happyShift action_13 action_35 (21) = happyShift action_14 action_35 (23) = happyShift action_27 action_35 (26) = happyShift action_30 action_35 (27) = happyShift action_31 action_35 (28) = happyShift action_16 action_35 (29) = happyShift action_17 action_35 (30) = happyShift action_18 action_35 (31) = happyShift action_19 action_35 (36) = happyShift action_20 action_35 (37) = happyShift action_21 action_35 (40) = happyShift action_73 action_35 (6) = happyGoto action_29 action_35 _ = happyFail action_36 (15) = happyShift action_4 action_36 (16) = happyShift action_26 action_36 (17) = happyShift action_13 action_36 (21) = happyShift action_14 action_36 (23) = happyShift action_27 action_36 (26) = happyShift action_30 action_36 (27) = happyShift action_31 action_36 (28) = happyShift action_16 action_36 (29) = happyShift action_17 action_36 (30) = happyShift action_18 action_36 (31) = happyShift action_19 action_36 (36) = happyShift action_20 action_36 (37) = happyShift action_21 action_36 (38) = happyShift action_71 action_36 (40) = happyShift action_72 action_36 (6) = happyGoto action_29 action_36 _ = happyFail action_37 (15) = happyShift action_4 action_37 (16) = happyShift action_26 action_37 (17) = happyShift action_13 action_37 (21) = happyShift action_14 action_37 (23) = happyShift action_27 action_37 (28) = happyShift action_16 action_37 (29) = happyShift action_17 action_37 (30) = happyShift action_18 action_37 (31) = happyShift action_19 action_37 (36) = happyShift action_20 action_37 (37) = happyShift action_21 action_37 (6) = happyGoto action_70 action_37 _ = happyFail action_38 (15) = happyShift action_4 action_38 (16) = happyShift action_26 action_38 (17) = happyShift action_13 action_38 (21) = happyShift action_14 action_38 (23) = happyShift action_27 action_38 (28) = happyShift action_16 action_38 (29) = happyShift action_17 action_38 (30) = happyShift action_18 action_38 (31) = happyShift action_19 action_38 (36) = happyShift action_20 action_38 (37) = happyShift action_21 action_38 (6) = happyGoto action_69 action_38 _ = happyFail action_39 (18) = happyShift action_68 action_39 _ = happyFail action_40 (15) = happyShift action_4 action_40 (16) = happyShift action_26 action_40 (17) = happyShift action_13 action_40 (21) = happyShift action_14 action_40 (23) = happyShift action_27 action_40 (24) = happyShift action_67 action_40 (26) = happyShift action_30 action_40 (27) = happyShift action_31 action_40 (28) = happyShift action_16 action_40 (29) = happyShift action_17 action_40 (30) = happyShift action_18 action_40 (31) = happyShift action_19 action_40 (33) = happyShift action_50 action_40 (34) = happyShift action_51 action_40 (36) = happyShift action_20 action_40 (37) = happyShift action_21 action_40 (6) = happyGoto action_29 action_40 _ = happyFail action_41 (24) = happyShift action_66 action_41 (40) = happyShift action_47 action_41 (41) = happyShift action_48 action_41 (42) = happyShift action_49 action_41 _ = happyFail action_42 (15) = happyShift action_4 action_42 (16) = happyShift action_26 action_42 (17) = happyShift action_13 action_42 (21) = happyShift action_14 action_42 (23) = happyShift action_27 action_42 (25) = happyShift action_65 action_42 (26) = happyShift action_30 action_42 (27) = happyShift action_31 action_42 (28) = happyShift action_16 action_42 (29) = happyShift action_17 action_42 (30) = happyShift action_18 action_42 (31) = happyShift action_19 action_42 (36) = happyShift action_20 action_42 (37) = happyShift action_21 action_42 (6) = happyGoto action_29 action_42 _ = happyReduce_20 action_43 (22) = happyShift action_64 action_43 _ = happyFail action_44 _ = happyReduce_19 action_45 (18) = happyShift action_63 action_45 _ = happyFail action_46 (15) = happyShift action_4 action_46 (16) = happyShift action_26 action_46 (17) = happyShift action_13 action_46 (21) = happyShift action_14 action_46 (23) = happyShift action_27 action_46 (28) = happyShift action_16 action_46 (29) = happyShift action_17 action_46 (30) = happyShift action_18 action_46 (31) = happyShift action_19 action_46 (36) = happyShift action_20 action_46 (37) = happyShift action_21 action_46 (6) = happyGoto action_42 action_46 (7) = happyGoto action_62 action_46 (8) = happyGoto action_44 action_46 _ = happyReduce_18 action_47 (15) = happyShift action_4 action_47 (16) = happyShift action_12 action_47 (17) = happyShift action_13 action_47 (21) = happyShift action_14 action_47 (23) = happyShift action_15 action_47 (28) = happyShift action_16 action_47 (29) = happyShift action_17 action_47 (30) = happyShift action_18 action_47 (31) = happyShift action_19 action_47 (36) = happyShift action_20 action_47 (37) = happyShift action_21 action_47 (39) = happyShift action_22 action_47 (43) = happyShift action_23 action_47 (44) = happyShift action_24 action_47 (6) = happyGoto action_8 action_47 (9) = happyGoto action_61 action_47 (10) = happyGoto action_10 action_47 (11) = happyGoto action_11 action_47 _ = happyFail action_48 (15) = happyShift action_4 action_48 (16) = happyShift action_12 action_48 (17) = happyShift action_13 action_48 (21) = happyShift action_14 action_48 (23) = happyShift action_15 action_48 (28) = happyShift action_16 action_48 (29) = happyShift action_17 action_48 (30) = happyShift action_18 action_48 (31) = happyShift action_19 action_48 (36) = happyShift action_20 action_48 (37) = happyShift action_21 action_48 (39) = happyShift action_22 action_48 (43) = happyShift action_23 action_48 (44) = happyShift action_24 action_48 (6) = happyGoto action_8 action_48 (9) = happyGoto action_59 action_48 (10) = happyGoto action_60 action_48 (11) = happyGoto action_11 action_48 _ = happyFail action_49 (15) = happyShift action_4 action_49 (16) = happyShift action_12 action_49 (17) = happyShift action_13 action_49 (21) = happyShift action_14 action_49 (23) = happyShift action_15 action_49 (28) = happyShift action_16 action_49 (29) = happyShift action_17 action_49 (30) = happyShift action_18 action_49 (31) = happyShift action_19 action_49 (36) = happyShift action_20 action_49 (37) = happyShift action_21 action_49 (39) = happyShift action_22 action_49 (43) = happyShift action_23 action_49 (44) = happyShift action_24 action_49 (6) = happyGoto action_8 action_49 (9) = happyGoto action_57 action_49 (10) = happyGoto action_10 action_49 (11) = happyGoto action_58 action_49 _ = happyFail action_50 (15) = happyShift action_4 action_50 (16) = happyShift action_26 action_50 (17) = happyShift action_13 action_50 (21) = happyShift action_14 action_50 (23) = happyShift action_27 action_50 (28) = happyShift action_16 action_50 (29) = happyShift action_17 action_50 (30) = happyShift action_18 action_50 (31) = happyShift action_19 action_50 (36) = happyShift action_20 action_50 (37) = happyShift action_21 action_50 (6) = happyGoto action_56 action_50 _ = happyFail action_51 (15) = happyShift action_4 action_51 (16) = happyShift action_26 action_51 (17) = happyShift action_13 action_51 (21) = happyShift action_14 action_51 (23) = happyShift action_27 action_51 (28) = happyShift action_16 action_51 (29) = happyShift action_17 action_51 (30) = happyShift action_18 action_51 (31) = happyShift action_19 action_51 (36) = happyShift action_20 action_51 (37) = happyShift action_21 action_51 (6) = happyGoto action_55 action_51 _ = happyFail action_52 (15) = happyShift action_4 action_52 (16) = happyShift action_12 action_52 (17) = happyShift action_13 action_52 (21) = happyShift action_14 action_52 (23) = happyShift action_15 action_52 (28) = happyShift action_16 action_52 (29) = happyShift action_17 action_52 (30) = happyShift action_18 action_52 (31) = happyShift action_19 action_52 (36) = happyShift action_20 action_52 (37) = happyShift action_21 action_52 (39) = happyShift action_22 action_52 (43) = happyShift action_23 action_52 (44) = happyShift action_24 action_52 (6) = happyGoto action_8 action_52 (9) = happyGoto action_54 action_52 (10) = happyGoto action_10 action_52 (11) = happyGoto action_11 action_52 _ = happyFail action_53 _ = happyReduce_39 action_54 (19) = happyShift action_88 action_54 (40) = happyShift action_47 action_54 (41) = happyShift action_48 action_54 (42) = happyShift action_49 action_54 _ = happyFail action_55 (15) = happyShift action_4 action_55 (16) = happyShift action_26 action_55 (17) = happyShift action_13 action_55 (21) = happyShift action_14 action_55 (23) = happyShift action_27 action_55 (26) = happyShift action_30 action_55 (27) = happyShift action_31 action_55 (28) = happyShift action_16 action_55 (29) = happyShift action_17 action_55 (30) = happyShift action_18 action_55 (31) = happyShift action_19 action_55 (36) = happyShift action_20 action_55 (37) = happyShift action_21 action_55 (6) = happyGoto action_29 action_55 _ = happyReduce_31 action_56 (15) = happyShift action_4 action_56 (16) = happyShift action_26 action_56 (17) = happyShift action_13 action_56 (21) = happyShift action_14 action_56 (23) = happyShift action_27 action_56 (26) = happyShift action_30 action_56 (27) = happyShift action_31 action_56 (28) = happyShift action_16 action_56 (29) = happyShift action_17 action_56 (30) = happyShift action_18 action_56 (31) = happyShift action_19 action_56 (36) = happyShift action_20 action_56 (37) = happyShift action_21 action_56 (6) = happyGoto action_29 action_56 _ = happyReduce_30 action_57 (41) = happyShift action_48 action_57 (42) = happyShift action_49 action_57 _ = happyReduce_36 action_58 _ = happyReduce_35 action_59 (41) = happyShift action_48 action_59 _ = happyReduce_34 action_60 _ = happyReduce_33 action_61 (40) = happyShift action_47 action_61 (41) = happyShift action_48 action_61 (42) = happyShift action_49 action_61 _ = happyReduce_25 action_62 (24) = happyShift action_87 action_62 _ = happyFail action_63 (15) = happyShift action_4 action_63 (16) = happyShift action_12 action_63 (17) = happyShift action_13 action_63 (21) = happyShift action_14 action_63 (23) = happyShift action_15 action_63 (28) = happyShift action_16 action_63 (29) = happyShift action_17 action_63 (30) = happyShift action_18 action_63 (31) = happyShift action_19 action_63 (36) = happyShift action_20 action_63 (37) = happyShift action_21 action_63 (39) = happyShift action_22 action_63 (43) = happyShift action_23 action_63 (44) = happyShift action_24 action_63 (6) = happyGoto action_8 action_63 (9) = happyGoto action_86 action_63 (10) = happyGoto action_10 action_63 (11) = happyGoto action_11 action_63 _ = happyFail action_64 _ = happyReduce_11 action_65 (15) = happyShift action_4 action_65 (16) = happyShift action_26 action_65 (17) = happyShift action_13 action_65 (21) = happyShift action_14 action_65 (23) = happyShift action_27 action_65 (28) = happyShift action_16 action_65 (29) = happyShift action_17 action_65 (30) = happyShift action_18 action_65 (31) = happyShift action_19 action_65 (36) = happyShift action_20 action_65 (37) = happyShift action_21 action_65 (6) = happyGoto action_42 action_65 (7) = happyGoto action_85 action_65 (8) = happyGoto action_44 action_65 _ = happyReduce_18 action_66 _ = happyReduce_32 action_67 _ = happyReduce_9 action_68 (15) = happyShift action_4 action_68 (16) = happyShift action_12 action_68 (17) = happyShift action_13 action_68 (21) = happyShift action_14 action_68 (23) = happyShift action_15 action_68 (28) = happyShift action_16 action_68 (29) = happyShift action_17 action_68 (30) = happyShift action_18 action_68 (31) = happyShift action_19 action_68 (36) = happyShift action_20 action_68 (37) = happyShift action_21 action_68 (39) = happyShift action_22 action_68 (43) = happyShift action_23 action_68 (44) = happyShift action_24 action_68 (6) = happyGoto action_8 action_68 (9) = happyGoto action_84 action_68 (10) = happyGoto action_10 action_68 (11) = happyGoto action_11 action_68 _ = happyFail action_69 (15) = happyShift action_4 action_69 (16) = happyShift action_26 action_69 (17) = happyShift action_13 action_69 (21) = happyShift action_14 action_69 (23) = happyShift action_27 action_69 (26) = happyShift action_30 action_69 (27) = happyShift action_31 action_69 (28) = happyShift action_16 action_69 (29) = happyShift action_17 action_69 (30) = happyShift action_18 action_69 (31) = happyShift action_19 action_69 (36) = happyShift action_20 action_69 (37) = happyShift action_21 action_69 (6) = happyGoto action_29 action_69 _ = happyReduce_12 action_70 (15) = happyShift action_4 action_70 (16) = happyShift action_26 action_70 (17) = happyShift action_13 action_70 (21) = happyShift action_14 action_70 (23) = happyShift action_27 action_70 (26) = happyShift action_30 action_70 (27) = happyShift action_31 action_70 (28) = happyShift action_16 action_70 (29) = happyShift action_17 action_70 (30) = happyShift action_18 action_70 (31) = happyShift action_19 action_70 (36) = happyShift action_20 action_70 (37) = happyShift action_21 action_70 (6) = happyGoto action_29 action_70 _ = happyReduce_13 action_71 (14) = happyShift action_83 action_71 _ = happyFail action_72 (23) = happyShift action_82 action_72 _ = happyFail action_73 (15) = happyShift action_4 action_73 (16) = happyShift action_26 action_73 (17) = happyShift action_13 action_73 (21) = happyShift action_14 action_73 (23) = happyShift action_27 action_73 (28) = happyShift action_16 action_73 (29) = happyShift action_17 action_73 (30) = happyShift action_18 action_73 (31) = happyShift action_19 action_73 (36) = happyShift action_20 action_73 (37) = happyShift action_21 action_73 (6) = happyGoto action_81 action_73 _ = happyFail action_74 (15) = happyShift action_4 action_74 (16) = happyShift action_26 action_74 (17) = happyShift action_13 action_74 (21) = happyShift action_14 action_74 (23) = happyShift action_27 action_74 (28) = happyShift action_16 action_74 (29) = happyShift action_17 action_74 (30) = happyShift action_18 action_74 (31) = happyShift action_19 action_74 (36) = happyShift action_20 action_74 (37) = happyShift action_21 action_74 (6) = happyGoto action_80 action_74 _ = happyFail action_75 (15) = happyShift action_4 action_75 (16) = happyShift action_12 action_75 (17) = happyShift action_13 action_75 (21) = happyShift action_14 action_75 (23) = happyShift action_15 action_75 (28) = happyShift action_16 action_75 (29) = happyShift action_17 action_75 (30) = happyShift action_18 action_75 (31) = happyShift action_19 action_75 (36) = happyShift action_20 action_75 (37) = happyShift action_21 action_75 (39) = happyShift action_22 action_75 (43) = happyShift action_23 action_75 (44) = happyShift action_24 action_75 (6) = happyGoto action_8 action_75 (9) = happyGoto action_79 action_75 (10) = happyGoto action_10 action_75 (11) = happyGoto action_11 action_75 _ = happyFail action_76 (15) = happyShift action_4 action_76 (16) = happyShift action_12 action_76 (17) = happyShift action_13 action_76 (21) = happyShift action_14 action_76 (23) = happyShift action_15 action_76 (28) = happyShift action_16 action_76 (29) = happyShift action_17 action_76 (30) = happyShift action_18 action_76 (31) = happyShift action_19 action_76 (36) = happyShift action_20 action_76 (37) = happyShift action_21 action_76 (39) = happyShift action_22 action_76 (43) = happyShift action_23 action_76 (44) = happyShift action_24 action_76 (6) = happyGoto action_8 action_76 (9) = happyGoto action_78 action_76 (10) = happyGoto action_10 action_76 (11) = happyGoto action_11 action_76 _ = happyFail action_77 (26) = happyShift action_30 action_77 (6) = happyGoto action_29 action_77 _ = happyReduce_5 action_78 (40) = happyShift action_47 action_78 (41) = happyShift action_48 action_78 (42) = happyShift action_49 action_78 _ = happyReduce_29 action_79 (40) = happyShift action_47 action_79 (41) = happyShift action_48 action_79 (42) = happyShift action_49 action_79 _ = happyReduce_28 action_80 (26) = happyShift action_30 action_80 (27) = happyShift action_31 action_80 (6) = happyGoto action_29 action_80 _ = happyReduce_16 action_81 (26) = happyShift action_30 action_81 (27) = happyShift action_31 action_81 (6) = happyGoto action_29 action_81 _ = happyReduce_15 action_82 (15) = happyShift action_4 action_82 (16) = happyShift action_26 action_82 (17) = happyShift action_13 action_82 (21) = happyShift action_14 action_82 (23) = happyShift action_27 action_82 (28) = happyShift action_16 action_82 (29) = happyShift action_17 action_82 (30) = happyShift action_18 action_82 (31) = happyShift action_19 action_82 (36) = happyShift action_20 action_82 (37) = happyShift action_21 action_82 (6) = happyGoto action_42 action_82 (7) = happyGoto action_92 action_82 (8) = happyGoto action_44 action_82 _ = happyReduce_18 action_83 (40) = happyShift action_91 action_83 _ = happyFail action_84 (20) = happyShift action_90 action_84 (40) = happyShift action_47 action_84 (41) = happyShift action_48 action_84 (42) = happyShift action_49 action_84 _ = happyFail action_85 _ = happyReduce_21 action_86 (20) = happyShift action_89 action_86 (40) = happyShift action_47 action_86 (41) = happyShift action_48 action_86 (42) = happyShift action_49 action_86 _ = happyFail action_87 _ = happyReduce_24 action_88 _ = happyReduce_37 action_89 (15) = happyShift action_4 action_89 (16) = happyShift action_26 action_89 (17) = happyShift action_13 action_89 (21) = happyShift action_14 action_89 (23) = happyShift action_27 action_89 (28) = happyShift action_16 action_89 (29) = happyShift action_17 action_89 (30) = happyShift action_18 action_89 (31) = happyShift action_19 action_89 (36) = happyShift action_20 action_89 (37) = happyShift action_21 action_89 (6) = happyGoto action_96 action_89 _ = happyFail action_90 (15) = happyShift action_4 action_90 (16) = happyShift action_26 action_90 (17) = happyShift action_13 action_90 (21) = happyShift action_14 action_90 (23) = happyShift action_27 action_90 (28) = happyShift action_16 action_90 (29) = happyShift action_17 action_90 (30) = happyShift action_18 action_90 (31) = happyShift action_19 action_90 (36) = happyShift action_20 action_90 (37) = happyShift action_21 action_90 (6) = happyGoto action_95 action_90 _ = happyFail action_91 (15) = happyShift action_4 action_91 (16) = happyShift action_26 action_91 (17) = happyShift action_13 action_91 (21) = happyShift action_14 action_91 (23) = happyShift action_27 action_91 (28) = happyShift action_16 action_91 (29) = happyShift action_17 action_91 (30) = happyShift action_18 action_91 (31) = happyShift action_19 action_91 (36) = happyShift action_20 action_91 (37) = happyShift action_21 action_91 (6) = happyGoto action_94 action_91 _ = happyFail action_92 (24) = happyShift action_93 action_92 _ = happyFail action_93 _ = happyReduce_14 action_94 (15) = happyShift action_4 action_94 (16) = happyShift action_26 action_94 (17) = happyShift action_13 action_94 (21) = happyShift action_14 action_94 (23) = happyShift action_27 action_94 (26) = happyShift action_30 action_94 (27) = happyShift action_31 action_94 (28) = happyShift action_16 action_94 (29) = happyShift action_17 action_94 (30) = happyShift action_18 action_94 (31) = happyShift action_19 action_94 (36) = happyShift action_20 action_94 (37) = happyShift action_21 action_94 (42) = happyShift action_97 action_94 (6) = happyGoto action_29 action_94 _ = happyFail action_95 (15) = happyShift action_4 action_95 (16) = happyShift action_26 action_95 (17) = happyShift action_13 action_95 (21) = happyShift action_14 action_95 (23) = happyShift action_27 action_95 (26) = happyShift action_30 action_95 (27) = happyShift action_31 action_95 (28) = happyShift action_16 action_95 (29) = happyShift action_17 action_95 (30) = happyShift action_18 action_95 (31) = happyShift action_19 action_95 (36) = happyShift action_20 action_95 (37) = happyShift action_21 action_95 (6) = happyGoto action_29 action_95 _ = happyReduce_10 action_96 (15) = happyShift action_4 action_96 (16) = happyShift action_26 action_96 (17) = happyShift action_13 action_96 (21) = happyShift action_14 action_96 (23) = happyShift action_27 action_96 (26) = happyShift action_30 action_96 (27) = happyShift action_31 action_96 (28) = happyShift action_16 action_96 (29) = happyShift action_17 action_96 (30) = happyShift action_18 action_96 (31) = happyShift action_19 action_96 (36) = happyShift action_20 action_96 (37) = happyShift action_21 action_96 (6) = happyGoto action_29 action_96 _ = happyReduce_7 action_97 (16) = happyShift action_98 action_97 _ = happyFail action_98 (26) = happyShift action_99 action_98 _ = happyFail action_99 (40) = happyShift action_100 action_99 _ = happyFail action_100 (15) = happyShift action_4 action_100 (16) = happyShift action_26 action_100 (17) = happyShift action_13 action_100 (21) = happyShift action_14 action_100 (23) = happyShift action_27 action_100 (28) = happyShift action_16 action_100 (29) = happyShift action_17 action_100 (30) = happyShift action_18 action_100 (31) = happyShift action_19 action_100 (36) = happyShift action_20 action_100 (37) = happyShift action_21 action_100 (6) = happyGoto action_101 action_100 _ = happyFail action_101 (26) = happyShift action_30 action_101 (27) = happyShift action_31 action_101 (6) = happyGoto action_29 action_101 _ = happyReduce_17 happyReduce_3 = happySpecReduce_1 6 happyReduction_3 happyReduction_3 (HappyTerminal (TokenNum happy_var_1)) = HappyAbsSyn6 (numToTerm happy_var_1 ) happyReduction_3 _ = notHappyAtAll happyReduce_4 = happySpecReduce_2 6 happyReduction_4 happyReduction_4 _ (HappyAbsSyn6 happy_var_1) = HappyAbsSyn6 (Succ happy_var_1 ) happyReduction_4 _ _ = notHappyAtAll happyReduce_5 = happySpecReduce_3 6 happyReduction_5 happyReduction_5 (HappyAbsSyn6 happy_var_3) _ (HappyAbsSyn6 happy_var_1) = HappyAbsSyn6 (Plus happy_var_1 happy_var_3 ) happyReduction_5 _ _ _ = notHappyAtAll happyReduce_6 = happySpecReduce_1 6 happyReduction_6 happyReduction_6 (HappyTerminal (TokenVar happy_var_1)) = HappyAbsSyn6 (Var happy_var_1 ) happyReduction_6 _ = notHappyAtAll happyReduce_7 = happyReduce 6 6 happyReduction_7 happyReduction_7 ((HappyAbsSyn6 happy_var_6) : _ : (HappyAbsSyn9 happy_var_4) : _ : (HappyTerminal (TokenVar happy_var_2)) : _ : happyRest) = HappyAbsSyn6 (Abs happy_var_2 happy_var_4 happy_var_6 ) : happyRest happyReduction_7 _ = notHappyAtAll happyReduce_8 = happySpecReduce_2 6 happyReduction_8 happyReduction_8 (HappyAbsSyn6 happy_var_2) (HappyAbsSyn6 happy_var_1) = HappyAbsSyn6 (App happy_var_1 happy_var_2 ) happyReduction_8 _ _ = notHappyAtAll happyReduce_9 = happySpecReduce_3 6 happyReduction_9 happyReduction_9 _ (HappyAbsSyn6 happy_var_2) _ = HappyAbsSyn6 (happy_var_2 ) happyReduction_9 _ _ _ = notHappyAtAll happyReduce_10 = happyReduce 6 6 happyReduction_10 happyReduction_10 ((HappyAbsSyn6 happy_var_6) : _ : (HappyAbsSyn9 happy_var_4) : _ : (HappyTerminal (TokenVar happy_var_2)) : _ : happyRest) = HappyAbsSyn6 (Fix happy_var_2 happy_var_4 happy_var_6 ) : happyRest happyReduction_10 _ = notHappyAtAll happyReduce_11 = happySpecReduce_3 6 happyReduction_11 happyReduction_11 _ (HappyAbsSyn7 happy_var_2) _ = HappyAbsSyn6 (PSum happy_var_2 ) happyReduction_11 _ _ _ = notHappyAtAll happyReduce_12 = happySpecReduce_3 6 happyReduction_12 happyReduction_12 (HappyAbsSyn6 happy_var_3) (HappyTerminal (TokenNum happy_var_2)) _ = HappyAbsSyn6 (Proj happy_var_2 happy_var_3 ) happyReduction_12 _ _ _ = notHappyAtAll happyReduce_13 = happySpecReduce_3 6 happyReduction_13 happyReduction_13 (HappyAbsSyn6 happy_var_3) (HappyTerminal (TokenNum happy_var_2)) _ = HappyAbsSyn6 (Inj happy_var_2 happy_var_3 ) happyReduction_13 _ _ _ = notHappyAtAll happyReduce_14 = happyReduce 6 6 happyReduction_14 happyReduction_14 (_ : (HappyAbsSyn7 happy_var_5) : _ : _ : (HappyAbsSyn6 happy_var_2) : _ : happyRest) = HappyAbsSyn6 (Case happy_var_2 happy_var_5 ) : happyRest happyReduction_14 _ = notHappyAtAll happyReduce_15 = happyReduce 4 6 happyReduction_15 happyReduction_15 ((HappyAbsSyn6 happy_var_4) : _ : (HappyAbsSyn6 happy_var_2) : _ : happyRest) = HappyAbsSyn6 (Inx happy_var_2 happy_var_4 ) : happyRest happyReduction_15 _ = notHappyAtAll happyReduce_16 = happyReduce 4 6 happyReduction_16 happyReduction_16 ((HappyAbsSyn6 happy_var_4) : _ : (HappyAbsSyn6 happy_var_2) : _ : happyRest) = HappyAbsSyn6 (Casx happy_var_2 happy_var_4 ) : happyRest happyReduction_16 _ = notHappyAtAll happyReduce_17 = happyReduce 11 6 happyReduction_17 happyReduction_17 ((HappyAbsSyn6 happy_var_11) : _ : _ : (HappyTerminal (TokenVar happy_var_8)) : _ : (HappyAbsSyn6 happy_var_6) : _ : _ : _ : (HappyAbsSyn6 happy_var_2) : _ : happyRest) = HappyAbsSyn6 (Casz happy_var_2 happy_var_6 happy_var_8 happy_var_11 ) : happyRest happyReduction_17 _ = notHappyAtAll happyReduce_18 = happySpecReduce_0 7 happyReduction_18 happyReduction_18 = HappyAbsSyn7 ([] ) happyReduce_19 = happySpecReduce_1 7 happyReduction_19 happyReduction_19 (HappyAbsSyn8 happy_var_1) = HappyAbsSyn7 (happy_var_1 ) happyReduction_19 _ = notHappyAtAll happyReduce_20 = happySpecReduce_1 8 happyReduction_20 happyReduction_20 (HappyAbsSyn6 happy_var_1) = HappyAbsSyn8 ([happy_var_1] ) happyReduction_20 _ = notHappyAtAll happyReduce_21 = happySpecReduce_3 8 happyReduction_21 happyReduction_21 (HappyAbsSyn7 happy_var_3) _ (HappyAbsSyn6 happy_var_1) = HappyAbsSyn8 (happy_var_1:happy_var_3 ) happyReduction_21 _ _ _ = notHappyAtAll happyReduce_22 = happySpecReduce_1 9 happyReduction_22 happyReduction_22 _ = HappyAbsSyn9 (Nat ) happyReduce_23 = happySpecReduce_1 9 happyReduction_23 happyReduction_23 (HappyTerminal (TokenVar happy_var_1)) = HappyAbsSyn9 (TypeVar happy_var_1 ) happyReduction_23 _ = notHappyAtAll happyReduce_24 = happyReduce 4 9 happyReduction_24 happyReduction_24 (_ : (HappyAbsSyn7 happy_var_3) : _ : (HappyTerminal (TokenVar happy_var_1)) : happyRest) = HappyAbsSyn9 (Pred happy_var_1 happy_var_3 ) : happyRest happyReduction_24 _ = notHappyAtAll happyReduce_25 = happySpecReduce_3 9 happyReduction_25 happyReduction_25 (HappyAbsSyn9 happy_var_3) _ (HappyAbsSyn9 happy_var_1) = HappyAbsSyn9 (TArrow happy_var_1 happy_var_3 ) happyReduction_25 _ _ _ = notHappyAtAll happyReduce_26 = happySpecReduce_1 9 happyReduction_26 happyReduction_26 (HappyAbsSyn10 happy_var_1) = HappyAbsSyn9 (T_And happy_var_1 ) happyReduction_26 _ = notHappyAtAll happyReduce_27 = happySpecReduce_1 9 happyReduction_27 happyReduction_27 (HappyAbsSyn11 happy_var_1) = HappyAbsSyn9 (T_Or happy_var_1 ) happyReduction_27 _ = notHappyAtAll happyReduce_28 = happyReduce 4 9 happyReduction_28 happyReduction_28 ((HappyAbsSyn9 happy_var_4) : _ : (HappyTerminal (TokenVar happy_var_2)) : _ : happyRest) = HappyAbsSyn9 (TUniv happy_var_2 happy_var_4 ) : happyRest happyReduction_28 _ = notHappyAtAll happyReduce_29 = happyReduce 4 9 happyReduction_29 happyReduction_29 ((HappyAbsSyn9 happy_var_4) : _ : (HappyTerminal (TokenVar happy_var_2)) : _ : happyRest) = HappyAbsSyn9 (TExist happy_var_2 happy_var_4 ) : happyRest happyReduction_29 _ = notHappyAtAll happyReduce_30 = happySpecReduce_3 9 happyReduction_30 happyReduction_30 (HappyAbsSyn6 happy_var_3) _ (HappyAbsSyn6 happy_var_1) = HappyAbsSyn9 (T_Equal happy_var_1 happy_var_3 ) happyReduction_30 _ _ _ = notHappyAtAll happyReduce_31 = happySpecReduce_3 9 happyReduction_31 happyReduction_31 (HappyAbsSyn6 happy_var_3) _ (HappyAbsSyn6 happy_var_1) = HappyAbsSyn9 (T_Less happy_var_1 happy_var_3 ) happyReduction_31 _ _ _ = notHappyAtAll happyReduce_32 = happySpecReduce_3 9 happyReduction_32 happyReduction_32 _ (HappyAbsSyn9 happy_var_2) _ = HappyAbsSyn9 (happy_var_2 ) happyReduction_32 _ _ _ = notHappyAtAll happyReduce_33 = happySpecReduce_3 10 happyReduction_33 happyReduction_33 (HappyAbsSyn10 happy_var_3) _ (HappyAbsSyn9 happy_var_1) = HappyAbsSyn10 (happy_var_1:happy_var_3 ) happyReduction_33 _ _ _ = notHappyAtAll happyReduce_34 = happySpecReduce_3 10 happyReduction_34 happyReduction_34 (HappyAbsSyn9 happy_var_3) _ (HappyAbsSyn9 happy_var_1) = HappyAbsSyn10 ([happy_var_1,happy_var_3] ) happyReduction_34 _ _ _ = notHappyAtAll happyReduce_35 = happySpecReduce_3 11 happyReduction_35 happyReduction_35 (HappyAbsSyn11 happy_var_3) _ (HappyAbsSyn9 happy_var_1) = HappyAbsSyn11 (happy_var_1:happy_var_3 ) happyReduction_35 _ _ _ = notHappyAtAll happyReduce_36 = happySpecReduce_3 11 happyReduction_36 happyReduction_36 (HappyAbsSyn9 happy_var_3) _ (HappyAbsSyn9 happy_var_1) = HappyAbsSyn11 ([happy_var_1,happy_var_3] ) happyReduction_36 _ _ _ = notHappyAtAll happyReduce_37 = happyReduce 4 12 happyReduction_37 happyReduction_37 (_ : (HappyAbsSyn9 happy_var_3) : _ : (HappyTerminal (TokenVar happy_var_1)) : happyRest) = HappyAbsSyn12 (Axiom happy_var_1 happy_var_3 ) : happyRest happyReduction_37 _ = notHappyAtAll happyReduce_38 = happySpecReduce_0 13 happyReduction_38 happyReduction_38 = HappyAbsSyn13 ([] ) happyReduce_39 = happySpecReduce_2 13 happyReduction_39 happyReduction_39 (HappyAbsSyn13 happy_var_2) (HappyAbsSyn12 happy_var_1) = HappyAbsSyn13 (happy_var_1:happy_var_2 ) happyReduction_39 _ _ = notHappyAtAll happyNewToken action sts stk [] = action 45 45 (error "reading EOF!") (HappyState action) sts stk [] happyNewToken action sts stk (tk:tks) = let cont i = action i i tk (HappyState action) sts stk tks in case tk of { TokenZero -> cont 14; TokenNum happy_dollar_dollar -> cont 15; TokenVar happy_dollar_dollar -> cont 16; TokenLam -> cont 17; TokenCol -> cont 18; TokenSemicol -> cont 19; TokenDot -> cont 20; TokenCBOpen -> cont 21; TokenCBClose -> cont 22; TokenPAROpen -> cont 23; TokenPARClose -> cont 24; TokenCom -> cont 25; TokenPrime -> cont 26; TokenPlus -> cont 27; TokenFix -> cont 28; TokenProj -> cont 29; TokenInj -> cont 30; TokenCase -> cont 31; TokenIf -> cont 32; TokenEqual -> cont 33; TokenLess -> cont 34; TokenElse -> cont 35; TokenInx -> cont 36; TokenCasx -> cont 37; TokenOf -> cont 38; TokenNat -> cont 39; TokenArrow -> cont 40; TokenAnd -> cont 41; TokenOr -> cont 42; TokenUnivQ -> cont 43; TokenExistQ -> cont 44; } happyThen = \m k -> k m happyReturn = \a -> a happyThen1 = happyThen happyReturn1 = \a tks -> a getProg tks = happyThen (happyParse action_0 tks) (\x -> case x of {HappyAbsSyn6 z -> happyReturn z; _other -> notHappyAtAll }) getType tks = happyThen (happyParse action_1 tks) (\x -> case x of {HappyAbsSyn9 z -> happyReturn z; _other -> notHappyAtAll }) getAx tks = happyThen (happyParse action_2 tks) (\x -> case x of {HappyAbsSyn13 z -> happyReturn z; _other -> notHappyAtAll }) happyError :: [Token] -> a happyError _ = error "Happy Parse Error!" data Prog = Zero | Succ Prog | Var String | Abs String Type Prog | App Prog Prog | Fix String Type Prog | If String Int Prog Prog | PSum [Prog] | Proj Int Prog | Inj Int Prog | Case Prog [Prog] | Inx Prog Prog | Casx Prog Prog | Casz Prog Prog String Prog | Plus Prog Prog | Axiom String Type deriving Show data Type = Nat | TypeVar String | Pred String [Prog] | TArrow Type Type | T_And [Type] | T_Or [Type] | TUniv String Type | TExist String Type | T_Equal Prog Prog | T_Less Prog Prog deriving Show numToTerm :: Int -> Prog numToTerm n = if n==0 then Zero else (Succ (numToTerm (n-1))) {-# LINE 1 "GenericTemplate.hs" -} {-# LINE 1 "GenericTemplate.hs" -} -- $Id: Parser,v 1.1 2001/05/02 19:57:14 carsten Exp $ {-# LINE 15 "GenericTemplate.hs" -} ----------------------------------------------------------------------------- -- starting the parse happyParse start_state = happyNewToken start_state [] [] ----------------------------------------------------------------------------- -- Accepting the parse happyAccept j tk st sts [ ans ] = happyReturn1 ans happyAccept j tk st sts _ = notHappyAtAll ----------------------------------------------------------------------------- -- Arrays only: do the next action {-# LINE 127 "GenericTemplate.hs" -} ----------------------------------------------------------------------------- -- HappyState data type (not arrays) newtype HappyState b c = HappyState (Int -> -- token number Int -> -- token number (yes, again) b -> -- token semantic value HappyState b c -> -- current state [HappyState b c] -> -- state stack c) ----------------------------------------------------------------------------- -- Shifting a token happyShift new_state (1) tk st sts stk@(x : _) = let i = (case x of { HappyErrorToken (i) -> i }) in -- trace "shifting the error token" $ new_state i i tk (HappyState (new_state)) ((st):(sts)) (stk) happyShift new_state i tk st sts stk = happyNewToken new_state ((st):(sts)) ((HappyTerminal (tk)):stk) -- happyReduce is specialised for the common cases. happySpecReduce_0 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_0 nt fn j tk st@((HappyState (action))) sts stk = action nt j tk st ((st):(sts)) (fn : stk) happySpecReduce_1 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_1 nt fn j tk _ sts@(((st@(HappyState (action))):(_))) (v1:stk') = action nt j tk st sts (fn v1 : stk') happySpecReduce_1 _ _ _ _ _ _ _ = notHappyAtAll happySpecReduce_2 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_2 nt fn j tk _ ((_):(sts@(((st@(HappyState (action))):(_))))) (v1:v2:stk') = action nt j tk st sts (fn v1 v2 : stk') happySpecReduce_2 _ _ _ _ _ _ _ = notHappyAtAll happySpecReduce_3 i fn (1) tk st sts stk = happyFail (1) tk st sts stk happySpecReduce_3 nt fn j tk _ ((_):(((_):(sts@(((st@(HappyState (action))):(_))))))) (v1:v2:v3:stk') = action nt j tk st sts (fn v1 v2 v3 : stk') happySpecReduce_3 _ _ _ _ _ _ _ = notHappyAtAll happyReduce k i fn (1) tk st sts stk = happyFail (1) tk st sts stk happyReduce k nt fn j tk st sts stk = action nt j tk st1 sts1 (fn stk) where sts1@(((st1@(HappyState (action))):(_))) = happyDrop k ((st):(sts)) happyMonadReduce k nt fn (1) tk st sts stk = happyFail (1) tk st sts stk happyMonadReduce k nt fn j tk st sts stk = happyThen1 (fn stk) (\r -> action nt j tk st1 sts1 (r : drop_stk)) where sts1@(((st1@(HappyState (action))):(_))) = happyDrop k ((st):(sts)) drop_stk = drop (k) stk happyDrop (0) l = l happyDrop n ((_):(t)) = happyDrop (n - (1)) t ----------------------------------------------------------------------------- -- Moving to a new state after a reduction happyGoto action j tk st = action j j tk (HappyState action) ----------------------------------------------------------------------------- -- Error recovery ((1) is the error token) -- parse error if we are in recovery and we fail again happyFail (1) tk old_st _ stk = -- trace "failing" $ happyError {- We don't need state discarding for our restricted implementation of "error". In fact, it can cause some bogus parses, so I've disabled it for now --SDM -- discard a state happyFail (1) tk old_st (((HappyState (action))):(sts)) (saved_tok : _ : stk) = -- trace ("discarding state, depth " ++ show (length stk)) $ action (1) (1) tk (HappyState (action)) sts ((saved_tok:stk)) -} -- Enter error recovery: generate an error token, -- save the old token and carry on. happyFail i tk (HappyState (action)) sts stk = -- trace "entering error recovery" $ action (1) (1) tk (HappyState (action)) sts ( (HappyErrorToken (i)) : stk) -- Internal happy errors: notHappyAtAll = error "Internal Happy error\n" ----------------------------------------------------------------------------- -- Hack to get the typechecker to accept our action functions ----------------------------------------------------------------------------- -- Don't inline any functions from the template. GHC has a nasty habit -- of deciding to inline happyGoto everywhere, which increases the size of -- the generated parser quite a bit. {-# NOINLINE happyShift #-} {-# NOINLINE happySpecReduce_0 #-} {-# NOINLINE happySpecReduce_1 #-} {-# NOINLINE happySpecReduce_2 #-} {-# NOINLINE happySpecReduce_3 #-} {-# NOINLINE happyReduce #-} {-# NOINLINE happyMonadReduce #-} {-# NOINLINE happyGoto #-} {-# NOINLINE happyFail #-} -- end of Happy Template.