summaryrefslogtreecommitdiff
path: root/src/GF/Canon/GFCC/ParGFCC.hs
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2006-10-07 14:08:58 +0000
committeraarne <aarne@cs.chalmers.se>2006-10-07 14:08:58 +0000
commitf9cc79eba6f12a5306987478ec99c4d1dae72863 (patch)
tree2efab0251feeaf7afa6029e3636df1747af30588 /src/GF/Canon/GFCC/ParGFCC.hs
parent2f284deb1ce3071b86efcabb5e57028cc5d2c52f (diff)
slight change in gfcc syntax and evaluation
Diffstat (limited to 'src/GF/Canon/GFCC/ParGFCC.hs')
-rw-r--r--src/GF/Canon/GFCC/ParGFCC.hs180
1 files changed, 98 insertions, 82 deletions
diff --git a/src/GF/Canon/GFCC/ParGFCC.hs b/src/GF/Canon/GFCC/ParGFCC.hs
index 99c734ffa..aab1c3162 100644
--- a/src/GF/Canon/GFCC/ParGFCC.hs
+++ b/src/GF/Canon/GFCC/ParGFCC.hs
@@ -166,21 +166,21 @@ happyOutTok x = unsafeCoerce# x
{-# INLINE happyOutTok #-}
happyActOffsets :: HappyAddr
-happyActOffsets = HappyA# "\x12\x01\x12\x01\x13\x01\x0b\x01\x3a\x00\x30\x00\x00\x00\x25\x00\x60\x00\x1e\x00\x55\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x00\x00\x00\x00\x00\x09\x01\x0c\x01\x00\x00\x06\x01\x64\x00\x08\x01\x9d\x00\xff\xff\x00\x00\x00\x00\x00\x00\xbb\x00\x00\x00\x08\x01\x1e\x00\x06\x00\x0a\x01\x1e\x00\x00\x00\x00\x00\xb5\x00\x2b\x00\x2a\x00\xb2\x00\x05\x01\x05\x01\x07\x01\x4e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x00\x00\x00\x00\x04\x01\x00\x00\x60\x00\x04\x01\x38\x00\x03\x01\x02\x01\x01\x01\xfb\x00\x00\x01\xff\x00\xfe\x00\xfd\x00\xfa\x00\xfc\x00\xf9\x00\xf8\x00\xf5\x00\xf6\x00\xf4\x00\xf3\x00\x00\x00\xef\x00\xf7\x00\x00\x00\xf2\x00\x1e\x00\x00\x00\xec\x00\x00\x00\x1e\x00\x00\x00\xf1\x00\xf0\x00\xed\x00\xee\x00\x00\x00\xea\x00\xeb\x00\xba\x00\xe9\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\xe7\x00\x00\x00\x00\x00\x1e\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\xab\x00\x0b\x00\x00\x00\xe5\x00\xe4\x00\xe3\x00\xe2\x00\x00\x00\x29\x00\x00\x00\xe8\x00\x00\x00\x07\x00\xe6\x00\x28\x00\x00\x00\x25\x00\x00\x00\x00\x00\x00\x00\x23\x00\xb9\x00\x80\x00\x00\x00\x00\x00\xe1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\xdc\x00\x00\x00\x00\x00"#
+happyActOffsets = HappyA# "\x0c\x01\x0c\x01\x0d\x01\x0b\x01\x32\x00\xfa\xff\x04\x01\x28\x00\x51\x00\x1a\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x01\x1a\x00\x00\x00\x00\x00\x01\x01\x05\x01\x00\x00\x09\x01\xab\x00\xfe\x00\xb2\x00\xff\xff\x00\x00\x00\x00\x00\x00\x07\x01\x00\x00\xfc\x00\x1a\x00\x00\x00\x06\x00\xff\x00\x1a\x00\x00\x00\x00\x00\x02\x01\xfa\x00\x29\x00\x0f\x00\xed\xff\xfa\x00\xfa\x00\xfd\x00\xf9\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf9\x00\x00\x00\x00\x00\xf9\x00\x00\x00\x51\x00\xf9\x00\xfb\x00\xf8\x00\xf6\x00\xf7\x00\xf5\x00\xf4\x00\xf3\x00\xf2\x00\xef\x00\xea\x00\xf0\x00\xe9\x00\xe6\x00\xe5\x00\xf1\x00\xe3\x00\xee\x00\x00\x00\xed\x00\xe8\x00\xe2\x00\xe7\x00\x1a\x00\xda\x00\x00\x00\x00\x00\xec\x00\xeb\x00\xe4\x00\xd7\x00\xd8\x00\x00\x00\xdf\x00\xd5\x00\x23\x00\xe0\x00\x1a\x00\x00\x00\x00\x00\x00\x00\xaa\x00\x00\x00\xd1\x00\x00\x00\x00\x00\x1a\x00\x1a\x00\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x24\x00\x00\x00\x00\x00\xd1\x00\xdd\x00\xce\x00\x00\x00\x07\x00\xcd\x00\xe1\x00\x00\x00\xde\x00\x00\x00\x05\x00\x00\x00\x28\x00\x00\x00\x00\x00\xaa\x00\xdc\x00\xdb\x00\xd9\x00\x00\x00\x00\x00\x00\x00\xd4\x00\x00\x00\x00\x00\x00\x00\xc7\x00\xcc\x00\x00\x00\x00\x00"#
happyGotoOffsets :: HappyAddr
-happyGotoOffsets = HappyA# "\x8c\x00\xdf\x00\xe0\x00\xde\x00\xc9\x00\x31\x00\x74\x00\xad\x00\xbe\x00\x98\x00\x04\x00\x53\x00\xdb\x00\xd2\x00\xd0\x00\xce\x00\x63\x00\xcb\x00\xc8\x00\xac\x00\x00\x00\x00\x00\x00\x00\xdd\x00\x00\x00\xdd\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x00\x4d\x00\xda\x00\x49\x00\x00\x00\x00\x00\xd9\x00\x03\x00\xa1\x00\xd8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x00\x00\xd7\x00\x00\x00\x00\x00\xd6\x00\x00\x00\x00\x00\xd5\x00\x00\x00\xd4\x00\x00\x00\x00\x00\x00\x00\xd3\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xc2\x00\x00\x00\x00\x00\x6a\x00\x00\x00\x89\x00\x00\x00\xc5\x00\xbf\x00\x85\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x94\x00\x7e\x00\x00\x00\x9a\x00\x00\x00\x00\x00\x81\x00\x72\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9a\x00\x00\x00\xa0\x00\x00\x00\x00\x00\x6c\x00\x00\x00\x68\x00\x46\x00\xa1\x00\x17\x00\x00\x00\xf7\xff\x08\x00\x00\x00\x03\x00\x00\x00\x9c\x00\x00\x00\x00\x00\x00\x00\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
+happyGotoOffsets = HappyA# "\x01\x00\xd6\x00\xd3\x00\xcf\x00\xc5\x00\xa9\x00\x6b\x00\xa8\x00\xb9\x00\x93\x00\x04\x00\xf8\xff\xca\x00\xc6\x00\xc1\x00\x74\x00\x66\x00\xc0\x00\xbe\x00\xb3\x00\x00\x00\x00\x00\x00\x00\xd2\x00\x00\x00\xd2\x00\xa4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x62\x00\x00\x00\x50\x00\xd0\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x92\x00\x4f\x00\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb5\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x00\x00\x00\x00\xc9\x00\x00\x00\xbd\x00\x00\x00\x00\x00\x00\x00\xae\x00\x00\x00\x00\x00\xa7\x00\x00\x00\x9d\x00\x00\x00\x00\x00\x55\x00\x00\x00\x8f\x00\x9c\x00\x89\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x6f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x00\x00\x00\x00\x72\x00\xb0\x00\x00\x00\x54\x00\x00\x00\x00\x00\x80\x00\x7c\x00\x78\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x00\xa4\x00\x00\x00\x00\x00\x3b\x00\x00\x00\x39\x00\x1d\x00\x4f\x00\x5e\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x92\x00\x00\x00\x97\x00\x00\x00\x00\x00\x75\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00"#
happyDefActions :: HappyAddr
-happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc4\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbd\xff\xca\xff\xc8\xff\xc6\xff\xc4\xff\xc2\xff\xbf\xff\xbd\xff\xbd\xff\x00\x00\xeb\xff\xba\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcd\xff\xd2\xff\xd1\xff\xc1\xff\xd4\xff\x00\x00\xc2\xff\xc2\xff\x00\x00\xc2\xff\xea\xff\xe8\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\xff\xda\xff\xd9\xff\xdc\xff\x00\x00\xd8\xff\xe9\xff\x00\x00\xdd\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\xff\x00\x00\x00\x00\xc4\xff\x00\x00\x00\x00\xc3\xff\x00\x00\xbf\xff\x00\x00\xbd\xff\x00\x00\x00\x00\x00\x00\x00\x00\xd3\xff\x00\x00\xcd\xff\xc1\xff\x00\x00\xc2\xff\xbe\xff\xbc\xff\xbd\xff\xbb\xff\xb9\xff\xcb\xff\xc0\xff\xd5\xff\x00\x00\x00\x00\xd7\xff\xd0\xff\xc5\xff\xc7\xff\xc9\xff\x00\x00\x00\x00\x00\x00\xdf\xff\xe1\xff\x00\x00\x00\x00\x00\x00\xc6\xff\x00\x00\xc4\xff\x00\x00\xca\xff\x00\x00\x00\x00\x00\x00\xe2\xff\x00\x00\xe0\xff\xde\xff\xd6\xff\xbb\xff\x00\x00\x00\x00\xce\xff\xcf\xff\x00\x00\xe3\xff\xe4\xff\xe5\xff\xe6\xff\x00\x00\xe7\xff\x00\x00\xcc\xff"#
+happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc3\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbb\xff\xc9\xff\xc7\xff\xc5\xff\xc3\xff\xc0\xff\xbd\xff\xbb\xff\xbb\xff\x00\x00\xeb\xff\xb8\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcc\xff\xd2\xff\xd1\xff\xbf\xff\xd4\xff\x00\x00\xc0\xff\xcd\xff\xc0\xff\x00\x00\xc0\xff\xea\xff\xe8\xff\xc2\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\xff\xda\xff\xd9\xff\xdc\xff\x00\x00\xd8\xff\xe9\xff\x00\x00\xdd\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\xff\x00\x00\x00\x00\xc3\xff\x00\x00\x00\x00\x00\x00\xbd\xff\xbb\xff\x00\x00\x00\x00\x00\x00\xc3\xff\x00\x00\xd3\xff\x00\x00\xcc\xff\xbf\xff\x00\x00\xc0\xff\xbc\xff\xba\xff\xbb\xff\xb9\xff\xb7\xff\xca\xff\xbe\xff\xd5\xff\x00\x00\x00\x00\x00\x00\xd7\xff\xd0\xff\xc1\xff\xc4\xff\xc6\xff\xc8\xff\x00\x00\x00\x00\xdf\xff\xe1\xff\x00\x00\x00\x00\x00\x00\xc5\xff\x00\x00\xc3\xff\x00\x00\xc9\xff\x00\x00\xe5\xff\x00\x00\xe2\xff\x00\x00\xe0\xff\xde\xff\xb9\xff\x00\x00\x00\x00\x00\x00\xd6\xff\xce\xff\xcf\xff\x00\x00\xe3\xff\xe4\xff\xe6\xff\xe7\xff\x00\x00\xcb\xff"#
happyCheck :: HappyAddr
-happyCheck = HappyA# "\xff\xff\x02\x00\x00\x00\x01\x00\x00\x00\x03\x00\x03\x00\x10\x00\x02\x00\x0a\x00\x03\x00\x03\x00\x09\x00\x02\x00\x03\x00\x0d\x00\x0e\x00\x0b\x00\x0e\x00\x0d\x00\x0e\x00\x0a\x00\x14\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x07\x00\x1d\x00\x17\x00\x18\x00\x19\x00\x02\x00\x1b\x00\x1b\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x02\x00\x01\x00\x0b\x00\x13\x00\x0d\x00\x0e\x00\x05\x00\x05\x00\x0a\x00\x08\x00\x08\x00\x08\x00\x08\x00\x03\x00\x12\x00\x18\x00\x19\x00\x08\x00\x1b\x00\x09\x00\x18\x00\x15\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x09\x00\x08\x00\x1b\x00\x1b\x00\x1b\x00\x1b\x00\x1d\x00\x1d\x00\x00\x00\x01\x00\x1b\x00\x03\x00\x00\x00\x01\x00\x0b\x00\x03\x00\x00\x00\x01\x00\x1b\x00\x03\x00\x1b\x00\x0d\x00\x0e\x00\x12\x00\x0b\x00\x0d\x00\x0e\x00\x18\x00\x14\x00\x0d\x00\x0e\x00\x0b\x00\x14\x00\x0f\x00\x00\x00\x01\x00\x14\x00\x03\x00\x0f\x00\x00\x00\x16\x00\x0a\x00\x1d\x00\x00\x00\x18\x00\x16\x00\x17\x00\x0d\x00\x0e\x00\x00\x00\x01\x00\x0a\x00\x03\x00\x12\x00\x14\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x18\x00\x13\x00\x0a\x00\x0d\x00\x0e\x00\x00\x00\x01\x00\x03\x00\x03\x00\x00\x00\x01\x00\x13\x00\x03\x00\x00\x00\x01\x00\x0b\x00\x03\x00\x0f\x00\x0d\x00\x0e\x00\x04\x00\x05\x00\x0d\x00\x0e\x00\x16\x00\x17\x00\x0d\x00\x0e\x00\x00\x00\x01\x00\x00\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x03\x00\x0d\x00\x0e\x00\x0b\x00\x0c\x00\x08\x00\x16\x00\x0b\x00\x0c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x18\x00\x0b\x00\x0c\x00\x0b\x00\x0c\x00\x1d\x00\x0f\x00\x03\x00\x0c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x16\x00\x17\x00\x0b\x00\x0b\x00\x0b\x00\x15\x00\x03\x00\x16\x00\x0c\x00\x11\x00\x03\x00\x13\x00\x13\x00\x1d\x00\x1b\x00\x08\x00\x1d\x00\x11\x00\x15\x00\x06\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x01\x00\x03\x00\x00\x00\x16\x00\x07\x00\x15\x00\x13\x00\x12\x00\x11\x00\x05\x00\x07\x00\x06\x00\x01\x00\x0c\x00\x01\x00\x07\x00\x10\x00\x03\x00\x0c\x00\x01\x00\xff\xff\x0b\x00\x01\x00\x01\x00\x04\x00\xff\xff\x02\x00\x0c\x00\x01\x00\xff\xff\x07\x00\x18\x00\x10\x00\x18\x00\x0f\x00\x07\x00\x18\x00\x04\x00\x06\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1b\x00\x14\x00\xff\xff\x07\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1d\x00\x1b\x00\xff\xff\xff\xff\x1d\x00\x1d\x00\x1b\x00\x13\x00\x1b\x00\x1d\x00\x1b\x00\x1d\x00\x17\x00\x1d\x00\x15\x00\x1d\x00\x1d\x00\x19\x00\x18\x00\x1d\x00\x1d\x00\x14\x00\x16\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
+happyCheck = HappyA# "\xff\xff\x02\x00\x08\x00\x16\x00\x00\x00\x04\x00\x05\x00\x0f\x00\x02\x00\x0a\x00\x05\x00\x1e\x00\x05\x00\x08\x00\x16\x00\x08\x00\x0a\x00\x0b\x00\x0e\x00\x07\x00\x0e\x00\x0f\x00\x1c\x00\x08\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x02\x00\x1e\x00\x18\x00\x19\x00\x1a\x00\x1c\x00\x1c\x00\x1c\x00\x0a\x00\x0b\x00\x02\x00\x03\x00\x0e\x00\x0f\x00\x02\x00\x1c\x00\x10\x00\x1e\x00\x0a\x00\x12\x00\x0d\x00\x08\x00\x0a\x00\x19\x00\x1a\x00\x12\x00\x1c\x00\x14\x00\x0b\x00\x00\x00\x08\x00\x00\x00\x0b\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1c\x00\x19\x00\x1e\x00\x00\x00\x01\x00\x19\x00\x03\x00\x00\x00\x01\x00\x1c\x00\x03\x00\x00\x00\x01\x00\x03\x00\x03\x00\x00\x00\x0d\x00\x0e\x00\x08\x00\x03\x00\x0d\x00\x0e\x00\x0a\x00\x14\x00\x0d\x00\x0e\x00\x0a\x00\x14\x00\x03\x00\x00\x00\x01\x00\x14\x00\x03\x00\x00\x00\x01\x00\x13\x00\x03\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x03\x00\x0d\x00\x0e\x00\x13\x00\x03\x00\x0d\x00\x0e\x00\x0a\x00\x14\x00\x03\x00\x00\x00\x01\x00\x14\x00\x03\x00\x00\x00\x01\x00\x13\x00\x03\x00\x00\x00\x01\x00\x13\x00\x03\x00\x0f\x00\x0d\x00\x0e\x00\x13\x00\x16\x00\x0d\x00\x0e\x00\x16\x00\x17\x00\x0d\x00\x0e\x00\x00\x00\x01\x00\x16\x00\x03\x00\x00\x00\x01\x00\x03\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x09\x00\x0d\x00\x0e\x00\x15\x00\x03\x00\x0d\x00\x0e\x00\x0b\x00\x0c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x03\x00\x06\x00\x11\x00\x0b\x00\x0c\x00\x03\x00\x09\x00\x0b\x00\x0c\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x13\x00\x13\x00\x0f\x00\x03\x00\x0c\x00\x0f\x00\x19\x00\x19\x00\x0c\x00\x16\x00\x17\x00\x03\x00\x16\x00\x17\x00\x19\x00\x03\x00\x08\x00\x03\x00\x07\x00\x1e\x00\x01\x00\x00\x00\x12\x00\x16\x00\x15\x00\x07\x00\x11\x00\x0c\x00\x06\x00\x10\x00\x05\x00\x03\x00\x16\x00\x03\x00\x03\x00\x0c\x00\x03\x00\x01\x00\x03\x00\x07\x00\x01\x00\x11\x00\x19\x00\x10\x00\x1c\x00\x19\x00\x0c\x00\x01\x00\x01\x00\x07\x00\x07\x00\x02\x00\x04\x00\x01\x00\x1c\x00\x04\x00\xff\xff\x1c\x00\xff\xff\x15\x00\xff\xff\xff\xff\x06\x00\xff\xff\xff\xff\x1c\x00\x07\x00\xff\xff\xff\xff\x1c\x00\x1e\x00\x09\x00\xff\xff\xff\xff\x1e\x00\x1e\x00\xff\xff\xff\xff\x1c\x00\xff\xff\xff\xff\xff\xff\x1c\x00\x1e\x00\xff\xff\x1e\x00\x1c\x00\x1e\x00\x18\x00\x14\x00\x1e\x00\x1e\x00\x1a\x00\x1e\x00\x14\x00\x1e\x00\x14\x00\x19\x00\x1e\x00\x1c\x00\x16\x00\x15\x00\x17\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
happyTable :: HappyAddr
-happyTable = HappyA# "\x00\x00\x39\x00\x1b\x00\x1c\x00\x1b\x00\x1d\x00\x3b\x00\x8e\x00\x22\x00\x35\x00\x8e\x00\x51\x00\x58\x00\x39\x00\x83\x00\x1e\x00\x1f\x00\x23\x00\x2c\x00\x24\x00\x25\x00\x35\x00\x66\x00\x16\x00\x26\x00\x36\x00\x27\x00\x56\x00\xff\xff\x56\x00\x16\x00\x26\x00\x22\x00\x27\x00\x27\x00\x16\x00\x26\x00\x36\x00\x27\x00\x39\x00\x90\x00\x23\x00\x7c\x00\x24\x00\x25\x00\x8c\x00\x7e\x00\x35\x00\x3e\x00\x41\x00\x41\x00\x3e\x00\x3b\x00\xbd\xff\x16\x00\x26\x00\x3e\x00\x27\x00\x3c\x00\xbd\xff\x43\x00\x16\x00\x26\x00\x36\x00\x27\x00\x53\x00\x41\x00\x27\x00\x27\x00\x27\x00\x27\x00\xff\xff\xff\xff\x1b\x00\x1c\x00\x27\x00\x1d\x00\x1b\x00\x1c\x00\x85\x00\x1d\x00\x5c\x00\x1c\x00\x27\x00\x1d\x00\x27\x00\x1e\x00\x1f\x00\x7e\x00\x55\x00\x1e\x00\x1f\x00\x16\x00\x59\x00\x5d\x00\x1f\x00\x2e\x00\x5b\x00\x2b\x00\x1b\x00\x1c\x00\x5e\x00\x1d\x00\x16\x00\x7f\x00\x17\x00\x35\x00\xff\xff\x81\x00\x16\x00\x17\x00\x89\x00\x1e\x00\x1f\x00\x1b\x00\x1c\x00\x75\x00\x1d\x00\x63\x00\x20\x00\x16\x00\x26\x00\x36\x00\x27\x00\x16\x00\x3a\x00\x39\x00\x85\x00\x1f\x00\x1b\x00\x1c\x00\x88\x00\x1d\x00\x1b\x00\x1c\x00\x3a\x00\x1d\x00\x1b\x00\x1c\x00\x55\x00\x1d\x00\x16\x00\x86\x00\x1f\x00\x47\x00\x48\x00\x70\x00\x1f\x00\x17\x00\x64\x00\x73\x00\x1f\x00\x1b\x00\x1c\x00\x61\x00\x1d\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x3e\x00\x2e\x00\x1f\x00\x8a\x00\x37\x00\x57\x00\x65\x00\x60\x00\x37\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x16\x00\x55\x00\x84\x00\x36\x00\x37\x00\xff\xff\x16\x00\x89\x00\x53\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x17\x00\x18\x00\x55\x00\x55\x00\x55\x00\x43\x00\x72\x00\x6f\x00\x33\x00\x69\x00\x3e\x00\x60\x00\x60\x00\xff\xff\x27\x00\x3f\x00\xff\xff\x78\x00\x71\x00\x7a\x00\x4a\x00\x4c\x00\x4d\x00\x4f\x00\x51\x00\x5a\x00\x51\x00\x61\x00\x19\x00\x56\x00\x1a\x00\x27\x00\x28\x00\x29\x00\x45\x00\x41\x00\x43\x00\x8d\x00\x92\x00\x7c\x00\x81\x00\x2a\x00\x68\x00\x91\x00\x6d\x00\x00\x00\x55\x00\x6e\x00\x6f\x00\x78\x00\x00\x00\x7a\x00\x6b\x00\x4a\x00\x00\x00\x75\x00\x16\x00\x6a\x00\x16\x00\x6c\x00\x77\x00\x16\x00\x4c\x00\x4f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x45\x00\x00\x00\x51\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\x27\x00\x00\x00\x00\x00\xff\xff\xff\xff\x27\x00\x64\x00\x27\x00\xff\xff\x27\x00\xff\xff\x56\x00\xff\xff\x43\x00\xff\xff\xff\xff\x26\x00\x16\x00\xff\xff\xbb\xff\x45\x00\x47\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
+happyTable = HappyA# "\x00\x00\x3b\x00\x40\x00\x45\x00\x1b\x00\x49\x00\x4a\x00\x2d\x00\x22\x00\x37\x00\x8f\x00\xff\xff\x80\x00\x40\x00\x17\x00\x43\x00\x23\x00\x24\x00\x2e\x00\x56\x00\x25\x00\x26\x00\x28\x00\x43\x00\x16\x00\x27\x00\x38\x00\x28\x00\x22\x00\xff\xff\x56\x00\x16\x00\x27\x00\x28\x00\x28\x00\x28\x00\x23\x00\x24\x00\x3b\x00\x85\x00\x25\x00\x26\x00\x3b\x00\x28\x00\x90\x00\xff\xff\x37\x00\x80\x00\x6a\x00\x40\x00\x37\x00\x16\x00\x27\x00\x6b\x00\x28\x00\x61\x00\x86\x00\x81\x00\x43\x00\x83\x00\x30\x00\x16\x00\x27\x00\x38\x00\x28\x00\x16\x00\x27\x00\x38\x00\x28\x00\x28\x00\x16\x00\xff\xff\x1b\x00\x1c\x00\x16\x00\x1d\x00\x1b\x00\x1c\x00\x28\x00\x1d\x00\x1b\x00\x1c\x00\x40\x00\x1d\x00\x62\x00\x1e\x00\x1f\x00\x57\x00\x28\x00\x1e\x00\x1f\x00\x37\x00\x67\x00\x1e\x00\x1f\x00\x77\x00\x5a\x00\x28\x00\x5d\x00\x1c\x00\x5c\x00\x1d\x00\x1b\x00\x1c\x00\x3c\x00\x1d\x00\x16\x00\x27\x00\x38\x00\x28\x00\x28\x00\x5e\x00\x1f\x00\x7e\x00\x28\x00\x1e\x00\x1f\x00\x3b\x00\x5f\x00\x28\x00\x1b\x00\x1c\x00\x20\x00\x1d\x00\x1b\x00\x1c\x00\x3c\x00\x1d\x00\x1b\x00\x1c\x00\x6e\x00\x1d\x00\x16\x00\x86\x00\x1f\x00\x29\x00\x66\x00\x87\x00\x1f\x00\x17\x00\x8c\x00\x88\x00\x1f\x00\x1b\x00\x1c\x00\x72\x00\x1d\x00\x1b\x00\x1c\x00\x3d\x00\x1d\x00\x31\x00\x32\x00\x33\x00\x34\x00\x58\x00\x75\x00\x1f\x00\x73\x00\x74\x00\x30\x00\x1f\x00\x8d\x00\x39\x00\x31\x00\x32\x00\x33\x00\x34\x00\x31\x00\x32\x00\x33\x00\x34\x00\x3d\x00\x7c\x00\x7a\x00\x61\x00\x39\x00\x4c\x00\x3e\x00\x38\x00\x39\x00\x31\x00\x32\x00\x33\x00\x34\x00\x31\x00\x32\x00\x33\x00\x34\x00\xbb\xff\x64\x00\x16\x00\x4e\x00\x54\x00\x16\x00\xbb\xff\x16\x00\x35\x00\x17\x00\x65\x00\x40\x00\x17\x00\x18\x00\x16\x00\x4f\x00\x41\x00\x51\x00\x56\x00\xff\xff\x5b\x00\x62\x00\x2a\x00\x19\x00\x1a\x00\x43\x00\x2b\x00\x93\x00\x45\x00\x2c\x00\x47\x00\x8a\x00\x45\x00\x8b\x00\x8c\x00\x92\x00\x90\x00\x7e\x00\x69\x00\x83\x00\x70\x00\x6c\x00\x16\x00\x6e\x00\x28\x00\x16\x00\x6d\x00\x71\x00\x72\x00\x77\x00\x79\x00\x7c\x00\x7a\x00\x4c\x00\x28\x00\x4e\x00\x00\x00\x28\x00\x00\x00\x47\x00\x00\x00\x00\x00\x51\x00\x00\x00\x00\x00\x28\x00\x53\x00\x00\x00\x00\x00\x28\x00\xff\xff\x54\x00\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x28\x00\xff\xff\x00\x00\xff\xff\x28\x00\xff\xff\x56\x00\x5a\x00\xff\xff\xff\xff\x27\x00\xff\xff\x61\x00\xff\xff\x65\x00\x16\x00\xb9\xff\x28\x00\x45\x00\x47\x00\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
-happyReduceArr = array (20, 70) [
+happyReduceArr = array (20, 72) [
(20 , happyReduce_20),
(21 , happyReduce_21),
(22 , happyReduce_22),
@@ -231,10 +231,12 @@ happyReduceArr = array (20, 70) [
(67 , happyReduce_67),
(68 , happyReduce_68),
(69 , happyReduce_69),
- (70 , happyReduce_70)
+ (70 , happyReduce_70),
+ (71 , happyReduce_71),
+ (72 , happyReduce_72)
]
-happy_n_terms = 30 :: Int
+happy_n_terms = 31 :: Int
happy_n_nonterms = 24 :: Int
happyReduce_20 = happySpecReduce_1 0# happyReduction_20
@@ -265,9 +267,8 @@ happyReduction_23 happy_x_1
(CId (happy_var_1)
)}
-happyReduce_24 = happyReduce 6# 4# happyReduction_24
-happyReduction_24 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
+happyReduce_24 = happyReduce 5# 4# happyReduction_24
+happyReduction_24 (happy_x_5 `HappyStk`
happy_x_4 `HappyStk`
happy_x_3 `HappyStk`
happy_x_2 `HappyStk`
@@ -290,12 +291,11 @@ happyReduction_25 (happy_x_5 `HappyStk`
= case happyOut26 happy_x_2 of { happy_var_2 ->
case happyOut42 happy_x_4 of { happy_var_4 ->
happyIn28
- (Hdr happy_var_2 (reverse happy_var_4)
+ (Hdr happy_var_2 happy_var_4
) `HappyStk` happyRest}}
-happyReduce_26 = happyReduce 5# 6# happyReduction_26
-happyReduction_26 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
+happyReduce_26 = happyReduce 4# 6# happyReduction_26
+happyReduction_26 (happy_x_4 `HappyStk`
happy_x_3 `HappyStk`
happy_x_2 `HappyStk`
happy_x_1 `HappyStk`
@@ -373,7 +373,7 @@ happyReduction_32 happy_x_3
= case happyOut42 happy_x_1 of { happy_var_1 ->
case happyOut26 happy_x_3 of { happy_var_3 ->
happyIn33
- (Typ (reverse happy_var_1) happy_var_3
+ (Typ happy_var_1 happy_var_3
)}}
happyReduce_33 = happyReduce 4# 11# happyReduction_33
@@ -438,16 +438,17 @@ happyReduction_40 happy_x_3
(R happy_var_2
)}
-happyReduce_41 = happyReduce 4# 13# happyReduction_41
-happyReduction_41 (happy_x_4 `HappyStk`
+happyReduce_41 = happyReduce 5# 13# happyReduction_41
+happyReduction_41 (happy_x_5 `HappyStk`
+ happy_x_4 `HappyStk`
happy_x_3 `HappyStk`
happy_x_2 `HappyStk`
happy_x_1 `HappyStk`
happyRest)
- = case happyOut36 happy_x_1 of { happy_var_1 ->
- case happyOut36 happy_x_3 of { happy_var_3 ->
+ = case happyOut36 happy_x_2 of { happy_var_2 ->
+ case happyOut36 happy_x_4 of { happy_var_4 ->
happyIn36
- (P happy_var_1 happy_var_3
+ (P happy_var_2 happy_var_4
) `HappyStk` happyRest}}
happyReduce_42 = happySpecReduce_3 13# happyReduction_42
@@ -523,15 +524,21 @@ happyReduction_49 (happy_x_5 `HappyStk`
(RP happy_var_2 happy_var_4
) `HappyStk` happyRest}}
-happyReduce_50 = happySpecReduce_1 14# happyReduction_50
+happyReduce_50 = happySpecReduce_1 13# happyReduction_50
happyReduction_50 happy_x_1
+ = happyIn36
+ (TM
+ )
+
+happyReduce_51 = happySpecReduce_1 14# happyReduction_51
+happyReduction_51 happy_x_1
= case happyOut23 happy_x_1 of { happy_var_1 ->
happyIn37
(KS happy_var_1
)}
-happyReduce_51 = happyReduce 7# 14# happyReduction_51
-happyReduction_51 (happy_x_7 `HappyStk`
+happyReduce_52 = happyReduce 7# 14# happyReduction_52
+happyReduction_52 (happy_x_7 `HappyStk`
happy_x_6 `HappyStk`
happy_x_5 `HappyStk`
happy_x_4 `HappyStk`
@@ -545,8 +552,8 @@ happyReduction_51 (happy_x_7 `HappyStk`
(KP (reverse happy_var_3) happy_var_5
) `HappyStk` happyRest}}
-happyReduce_52 = happySpecReduce_3 15# happyReduction_52
-happyReduction_52 happy_x_3
+happyReduce_53 = happySpecReduce_3 15# happyReduction_53
+happyReduction_53 happy_x_3
happy_x_2
happy_x_1
= case happyOut45 happy_x_1 of { happy_var_1 ->
@@ -555,13 +562,13 @@ happyReduction_52 happy_x_3
(Var (reverse happy_var_1) (reverse happy_var_3)
)}}
-happyReduce_53 = happySpecReduce_0 16# happyReduction_53
-happyReduction_53 = happyIn39
+happyReduce_54 = happySpecReduce_0 16# happyReduction_54
+happyReduction_54 = happyIn39
([]
)
-happyReduce_54 = happySpecReduce_3 16# happyReduction_54
-happyReduction_54 happy_x_3
+happyReduce_55 = happySpecReduce_3 16# happyReduction_55
+happyReduction_55 happy_x_3
happy_x_2
happy_x_1
= case happyOut39 happy_x_1 of { happy_var_1 ->
@@ -570,13 +577,13 @@ happyReduction_54 happy_x_3
(flip (:) happy_var_1 happy_var_2
)}}
-happyReduce_55 = happySpecReduce_0 17# happyReduction_55
-happyReduction_55 = happyIn40
+happyReduce_56 = happySpecReduce_0 17# happyReduction_56
+happyReduction_56 = happyIn40
([]
)
-happyReduce_56 = happySpecReduce_3 17# happyReduction_56
-happyReduction_56 happy_x_3
+happyReduce_57 = happySpecReduce_3 17# happyReduction_57
+happyReduction_57 happy_x_3
happy_x_2
happy_x_1
= case happyOut40 happy_x_1 of { happy_var_1 ->
@@ -585,13 +592,13 @@ happyReduction_56 happy_x_3
(flip (:) happy_var_1 happy_var_2
)}}
-happyReduce_57 = happySpecReduce_0 18# happyReduction_57
-happyReduction_57 = happyIn41
+happyReduce_58 = happySpecReduce_0 18# happyReduction_58
+happyReduction_58 = happyIn41
([]
)
-happyReduce_58 = happySpecReduce_3 18# happyReduction_58
-happyReduction_58 happy_x_3
+happyReduce_59 = happySpecReduce_3 18# happyReduction_59
+happyReduction_59 happy_x_3
happy_x_2
happy_x_1
= case happyOut41 happy_x_1 of { happy_var_1 ->
@@ -600,34 +607,42 @@ happyReduction_58 happy_x_3
(flip (:) happy_var_1 happy_var_2
)}}
-happyReduce_59 = happySpecReduce_0 19# happyReduction_59
-happyReduction_59 = happyIn42
+happyReduce_60 = happySpecReduce_0 19# happyReduction_60
+happyReduction_60 = happyIn42
([]
)
-happyReduce_60 = happySpecReduce_2 19# happyReduction_60
-happyReduction_60 happy_x_2
+happyReduce_61 = happySpecReduce_1 19# happyReduction_61
+happyReduction_61 happy_x_1
+ = case happyOut26 happy_x_1 of { happy_var_1 ->
+ happyIn42
+ ((:[]) happy_var_1
+ )}
+
+happyReduce_62 = happySpecReduce_3 19# happyReduction_62
+happyReduction_62 happy_x_3
+ happy_x_2
happy_x_1
- = case happyOut42 happy_x_1 of { happy_var_1 ->
- case happyOut26 happy_x_2 of { happy_var_2 ->
+ = case happyOut26 happy_x_1 of { happy_var_1 ->
+ case happyOut42 happy_x_3 of { happy_var_3 ->
happyIn42
- (flip (:) happy_var_1 happy_var_2
+ ((:) happy_var_1 happy_var_3
)}}
-happyReduce_61 = happySpecReduce_0 20# happyReduction_61
-happyReduction_61 = happyIn43
+happyReduce_63 = happySpecReduce_0 20# happyReduction_63
+happyReduction_63 = happyIn43
([]
)
-happyReduce_62 = happySpecReduce_1 20# happyReduction_62
-happyReduction_62 happy_x_1
+happyReduce_64 = happySpecReduce_1 20# happyReduction_64
+happyReduction_64 happy_x_1
= case happyOut36 happy_x_1 of { happy_var_1 ->
happyIn43
((:[]) happy_var_1
)}
-happyReduce_63 = happySpecReduce_3 20# happyReduction_63
-happyReduction_63 happy_x_3
+happyReduce_65 = happySpecReduce_3 20# happyReduction_65
+happyReduction_65 happy_x_3
happy_x_2
happy_x_1
= case happyOut36 happy_x_1 of { happy_var_1 ->
@@ -636,13 +651,13 @@ happyReduction_63 happy_x_3
((:) happy_var_1 happy_var_3
)}}
-happyReduce_64 = happySpecReduce_0 21# happyReduction_64
-happyReduction_64 = happyIn44
+happyReduce_66 = happySpecReduce_0 21# happyReduction_66
+happyReduction_66 = happyIn44
([]
)
-happyReduce_65 = happySpecReduce_2 21# happyReduction_65
-happyReduction_65 happy_x_2
+happyReduce_67 = happySpecReduce_2 21# happyReduction_67
+happyReduction_67 happy_x_2
happy_x_1
= case happyOut44 happy_x_1 of { happy_var_1 ->
case happyOut34 happy_x_2 of { happy_var_2 ->
@@ -650,13 +665,13 @@ happyReduction_65 happy_x_2
(flip (:) happy_var_1 happy_var_2
)}}
-happyReduce_66 = happySpecReduce_0 22# happyReduction_66
-happyReduction_66 = happyIn45
+happyReduce_68 = happySpecReduce_0 22# happyReduction_68
+happyReduction_68 = happyIn45
([]
)
-happyReduce_67 = happySpecReduce_2 22# happyReduction_67
-happyReduction_67 happy_x_2
+happyReduce_69 = happySpecReduce_2 22# happyReduction_69
+happyReduction_69 happy_x_2
happy_x_1
= case happyOut45 happy_x_1 of { happy_var_1 ->
case happyOut23 happy_x_2 of { happy_var_2 ->
@@ -664,20 +679,20 @@ happyReduction_67 happy_x_2
(flip (:) happy_var_1 happy_var_2
)}}
-happyReduce_68 = happySpecReduce_0 23# happyReduction_68
-happyReduction_68 = happyIn46
+happyReduce_70 = happySpecReduce_0 23# happyReduction_70
+happyReduction_70 = happyIn46
([]
)
-happyReduce_69 = happySpecReduce_1 23# happyReduction_69
-happyReduction_69 happy_x_1
+happyReduce_71 = happySpecReduce_1 23# happyReduction_71
+happyReduction_71 happy_x_1
= case happyOut38 happy_x_1 of { happy_var_1 ->
happyIn46
((:[]) happy_var_1
)}
-happyReduce_70 = happySpecReduce_3 23# happyReduction_70
-happyReduction_70 happy_x_3
+happyReduce_72 = happySpecReduce_3 23# happyReduction_72
+happyReduction_72 happy_x_3
happy_x_2
happy_x_1
= case happyOut38 happy_x_1 of { happy_var_1 ->
@@ -687,7 +702,7 @@ happyReduction_70 happy_x_3
)}}
happyNewToken action sts stk [] =
- happyDoAction 29# (error "reading EOF!") action sts stk []
+ happyDoAction 30# (error "reading EOF!") action sts stk []
happyNewToken action sts stk (tk:tks) =
let cont i = happyDoAction i tk action sts stk tks in
@@ -704,22 +719,23 @@ happyNewToken action sts stk (tk:tks) =
PT _ (TS "?") -> cont 10#;
PT _ (TS "[") -> cont 11#;
PT _ (TS "]") -> cont 12#;
- PT _ (TS "$") -> cont 13#;
- PT _ (TS "[|") -> cont 14#;
- PT _ (TS "|]") -> cont 15#;
- PT _ (TS "+") -> cont 16#;
- PT _ (TS "@") -> cont 17#;
- PT _ (TS "/") -> cont 18#;
- PT _ (TS ",") -> cont 19#;
- PT _ (TS "abstract") -> cont 20#;
- PT _ (TS "concrete") -> cont 21#;
- PT _ (TS "grammar") -> cont 22#;
- PT _ (TS "pre") -> cont 23#;
- PT _ (TL happy_dollar_dollar) -> cont 24#;
- PT _ (TI happy_dollar_dollar) -> cont 25#;
- PT _ (TD happy_dollar_dollar) -> cont 26#;
- PT _ (T_CId happy_dollar_dollar) -> cont 27#;
- _ -> cont 28#;
+ PT _ (TS "!") -> cont 13#;
+ PT _ (TS "$") -> cont 14#;
+ PT _ (TS "[|") -> cont 15#;
+ PT _ (TS "|]") -> cont 16#;
+ PT _ (TS "+") -> cont 17#;
+ PT _ (TS "@") -> cont 18#;
+ PT _ (TS "/") -> cont 19#;
+ PT _ (TS ",") -> cont 20#;
+ PT _ (TS "abstract") -> cont 21#;
+ PT _ (TS "concrete") -> cont 22#;
+ PT _ (TS "grammar") -> cont 23#;
+ PT _ (TS "pre") -> cont 24#;
+ PT _ (TL happy_dollar_dollar) -> cont 25#;
+ PT _ (TI happy_dollar_dollar) -> cont 26#;
+ PT _ (TD happy_dollar_dollar) -> cont 27#;
+ PT _ (T_CId happy_dollar_dollar) -> cont 28#;
+ _ -> cont 29#;
_ -> happyError' (tk:tks)
}