summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2008-04-22 08:33:23 +0000
committerkrasimir <krasimir@chalmers.se>2008-04-22 08:33:23 +0000
commit92917e6e5e17a9c2bee27d33835755516a8b1178 (patch)
tree6556633e247b13745ebe14f2d31229bb4ac06aaf /src
parent4c73735de917e2811f1ce75561397dc875365f94 (diff)
Use Happy grammar for imports extraction instead of hand made shallow crapy grammar
Diffstat (limited to 'src')
-rw-r--r--src/GF/Canon/GetGFC.hs1
-rw-r--r--src/GF/Compile/GetGrammar.hs15
-rw-r--r--src/GF/Compile/PGrammar.hs2
-rw-r--r--src/GF/Devel/GetGrammar.hs7
-rw-r--r--src/GF/Devel/ReadFiles.hs109
-rw-r--r--src/GF/Source/GF.cf14
-rw-r--r--src/GF/Source/ParGF.hs11362
-rw-r--r--src/GF/Source/ParGF.y147
8 files changed, 7996 insertions, 3661 deletions
diff --git a/src/GF/Canon/GetGFC.hs b/src/GF/Canon/GetGFC.hs
index a61228cb9..049f75efe 100644
--- a/src/GF/Canon/GetGFC.hs
+++ b/src/GF/Canon/GetGFC.hs
@@ -19,7 +19,6 @@ import GF.Canon.ParGFC
import GF.Canon.GFC
import GF.Canon.MkGFC
import GF.Infra.Modules
-import GF.Compile.GetGrammar (err2err) ---
import GF.Infra.UseIO
import System.IO
diff --git a/src/GF/Compile/GetGrammar.hs b/src/GF/Compile/GetGrammar.hs
index 62826746c..f0cf5d197 100644
--- a/src/GF/Compile/GetGrammar.hs
+++ b/src/GF/Compile/GetGrammar.hs
@@ -14,8 +14,7 @@
module GF.Compile.GetGrammar (
getSourceModule, getSourceGrammar,
- getOldGrammar, getCFGrammar, getEBNFGrammar,
- err2err
+ getOldGrammar, getCFGrammar, getEBNFGrammar
) where
import GF.Data.Operations
@@ -63,14 +62,14 @@ getSourceModule opts file0 = do
Just "utf8" -> decodeUTF8 string0
_ -> string0
let tokens = myLexer (BS.pack string)
- mo1 <- ioeErr $ err2err $ pModDef tokens
+ mo1 <- ioeErr $ pModDef tokens
ioeErr $ transModDef mo1
getSourceGrammar :: Options -> FilePath -> IOE SourceGrammar
getSourceGrammar opts file = do
string <- readFileIOE file
let tokens = myLexer (BS.pack string)
- gr1 <- ioeErr $ err2err $ pGrammar tokens
+ gr1 <- ioeErr $ pGrammar tokens
ioeErr $ transGrammar gr1
@@ -102,18 +101,12 @@ parseOldGrammar :: FilePath -> IOE ([FilePath],[A.TopDef])
parseOldGrammar file = do
putStrLnE $ "reading old file" +++ file
s <- ioeIO $ readFileIf file
- A.OldGr incl topdefs <- ioeErr $ err2err $ pOldGrammar $ oldLexer $ fixNewlines s
+ A.OldGr incl topdefs <- ioeErr $ pOldGrammar $ oldLexer $ fixNewlines s
includes <- ioeErr $ transInclude incl
return (includes, topdefs)
----
-err2err :: E.Err a -> Err a
-err2err (E.Ok v) = Ok v
-err2err (E.Bad s) = Bad s
-
-ioeEErr = ioeErr . err2err
-
-- | To resolve the new reserved words:
-- change them by turning the final letter to upper case.
--- There is a risk of clash.
diff --git a/src/GF/Compile/PGrammar.hs b/src/GF/Compile/PGrammar.hs
index e4e60d623..521f616b5 100644
--- a/src/GF/Compile/PGrammar.hs
+++ b/src/GF/Compile/PGrammar.hs
@@ -33,7 +33,7 @@ import qualified Data.ByteString.Char8 as BS
pTerm :: String -> Err Term
pTerm s = do
- e <- err2err $ pExp $ myLexer (BS.pack s)
+ e <- pExp $ myLexer (BS.pack s)
transExp e
pTrm :: String -> Term
diff --git a/src/GF/Devel/GetGrammar.hs b/src/GF/Devel/GetGrammar.hs
index e8136b1dd..cdd275ace 100644
--- a/src/GF/Devel/GetGrammar.hs
+++ b/src/GF/Devel/GetGrammar.hs
@@ -50,10 +50,5 @@ getSourceModule opts file0 = do
_ -> return file0
string <- readFileIOE file
let tokens = myLexer string
- mo1 <- ioeErr $ err2err $ pModDef tokens
+ mo1 <- ioeErr $ pModDef tokens
ioeErr $ transModDef mo1
-
-err2err :: E.Err a -> Err a
-err2err (E.Ok v) = Ok v
-err2err (E.Bad s) = Bad s
-
diff --git a/src/GF/Devel/ReadFiles.hs b/src/GF/Devel/ReadFiles.hs
index 0a1d69d2a..af13a0478 100644
--- a/src/GF/Devel/ReadFiles.hs
+++ b/src/GF/Devel/ReadFiles.hs
@@ -36,6 +36,8 @@ import Control.Monad
import Data.List
import System.Directory
import qualified Data.ByteString.Char8 as BS
+import GF.Source.AbsGF hiding (FileName)
+import GF.Source.ParGF
type ModName = String
@@ -204,7 +206,7 @@ getImports ps = get [] where
get ds file0 = do
let name = justModuleName file0 ---- fileBody file0
(p,s) <- tryRead name
- let ((typ,mname),imps) = importsOfFile (BS.unpack s)
+ ((typ,mname),imps) <- ioeErr (importsOfFile s)
let namebody = justFileName name
ioeErr $ testErr (mname == namebody) $
"module name" +++ mname +++ "differs from file name" +++ namebody
@@ -243,62 +245,47 @@ data ModTyp =
type ModuleHeader = ((ModTyp,ModName),[(ModName,ModUse)])
-importsOfFile :: String -> ModuleHeader
-importsOfFile =
- getModuleHeader . -- analyse into mod header
- filter (not . spec) . -- ignore keywords and special symbols
- unqual . -- take away qualifiers
- unrestr . -- take away union restrictions
- takeWhile (not . term) . -- read until curly or semic
- lexs . -- analyse into lexical tokens
- unComm -- ignore comments before the headed line
- where
- term = flip elem ["{",";"]
- spec = flip elem ["of", "open","in",":", "->","=", "-","(", ")",",","**","union"]
- unqual ws = case ws of
- "(":q:ws' -> unqual ws'
- w:ws' -> w:unqual ws'
- _ -> ws
- unrestr ws = case ws of
- "[":ws' -> unrestr $ tail $ dropWhile (/="]") ws'
- w:ws' -> w:unrestr ws'
- _ -> ws
-
-getModuleHeader :: [String] -> ModuleHeader -- with, reuse
-getModuleHeader ws = case ws of
- "incomplete":ws2 -> let ((ty,name),us) = getModuleHeader ws2 in
- case ty of
- MTyResource -> ((MTyIncResource,name),us)
- _ -> ((MTyIncomplete,name),us)
- "interface":ws2 -> let ((_,name),us) = getModuleHeader ("resource":ws2) in
- ((MTyIncResource,name),us)
-
- "resource":name:ws2 -> case ws2 of
- "reuse":m:_ -> ((MTyResource,name),[(m,MUReuse)])
- m:"with":ms -> ((MTyResource,name),(m,MUOther):[(n,MUComplete) | n <- ms])
- ms -> ((MTyResource,name),[(n,MUOther) | n <- ms])
-
- "instance":name:m:ws2 -> case ws2 of
- "reuse":n:_ -> ((MTyResource,name),(m,MUInstance):[(n,MUReuse)])
- n:"with":ms ->
- ((MTyResource,name),(m,MUInstance):(n,MUComplete):[(n,MUOther) | n <- ms])
- ms -> ((MTyResource,name),(m,MUInstance):[(n,MUOther) | n <- ms])
-
- "concrete":name:a:ws2 -> case span (/= "with") ws2 of
-
- (es,_:ms) -> ((MTyOther,name),
- [(m,MUOther) | m <- es] ++
- [(n,MUComplete) | n <- ms])
- --- m:"with":ms -> ((MTyOther,name),(m,MUOther):[(n,MUComplete) | n <- ms])
- (ms,[]) -> ((MTyOther,name),[(n,MUOther) | n <- a:ms])
-
- _:name:ws2 -> case ws2 of
- "reuse":m:_ -> ((MTyOther,name),[(m,MUReuse)])
- ---- m:n:"with":ms ->
- ---- ((MTyOther,name),(m,MUInstance):(n,MUOther):[(n,MUComplete) | n <- ms])
- m:"with":ms -> ((MTyOther,name),(m,MUOther):[(n,MUComplete) | n <- ms])
- ms -> ((MTyOther,name),[(n,MUOther) | n <- ms])
- _ -> error "the file is empty"
+importsOfFile :: BS.ByteString -> Err ModuleHeader
+importsOfFile bs = do
+ (MModule compl typ body) <- (pModHeader . myLexer) bs
+ return $
+ case (compl,modType typ (modBody body [])) of
+ (CMIncompl, ((MTyResource,m),xs)) -> ((MTyIncResource,m),xs)
+ (CMIncompl, ((t,m),xs)) -> ((MTyIncomplete,m),xs)
+ (CMCompl, v) -> v
+ where
+ modType (MTAbstract m) xs = ((MTyOther,modName m),xs)
+ modType (MTResource m) xs = ((MTyResource,modName m),xs)
+ modType (MTInterface m) xs = ((MTyIncResource,modName m),xs)
+ modType (MTConcrete m m2) xs = ((MTyOther,modName m),(modName m2,MUOther):xs)
+ modType (MTInstance m m2) xs = ((MTyResource,modName m),(modName m2,MUInstance):xs)
+ modType (MTTransfer m o1 o2) xs = ((MTyOther,modName m),open o1 (open o2 xs))
+
+ modBody (MBody e o _) xs = extend e (opens o xs)
+ modBody (MNoBody is) xs = foldr include xs is
+ modBody (MWith i os) xs = include i (foldr open xs os)
+ modBody (MWithBody i os o _) xs = include i (foldr open (opens o xs) os)
+ modBody (MWithE is i os) xs = foldr include (include i (foldr open xs os)) is
+ modBody (MWithEBody is i os o _) xs = foldr include (include i (foldr open (opens o xs) os)) is
+ modBody (MReuse m) xs = (modName m,MUReuse):xs
+ modBody (MUnion is) xs = foldr include xs is
+
+ include (IAll m) xs = (modName m,MUOther):xs
+ include (ISome m _) xs = (modName m,MUOther):xs
+ include (IMinus m _) xs = (modName m,MUOther):xs
+
+ open (OName n) xs = (modName n,MUComplete):xs
+ open (OQualQO _ n) xs = (modName n,MUComplete):xs
+ open (OQual _ _ n) xs = (modName n,MUComplete):xs
+
+ extend NoExt xs = xs
+ extend (Ext is) xs = foldr include xs is
+
+ opens NoOpens xs = xs
+ opens (OpenIn os) xs = foldr open xs os
+
+ modName (PIdent (_,s)) = s
+
unComm s = case s of
'-':'-':cs -> unComm $ dropWhile (/='\n') cs
@@ -310,17 +297,13 @@ dpComm s = case s of
'-':'}':cs -> unComm cs
c:cs -> dpComm cs
_ -> s
-
-lexs s = x:xs where
- (x,y) = head $ lex s
- xs = if null y then [] else lexs y
-- | options can be passed to the compiler by comments in @--#@, in the main file
getOptionsFromFile :: FilePath -> IO Options
getOptionsFromFile file = do
s <- readFileIfStrict file
- let ls = filter (isPrefixOf "--#") $ lines (BS.unpack s)
- return $ fst $ getOptions "-" $ map (unwords . words . drop 3) ls
+ let ls = filter (BS.isPrefixOf (BS.pack "--#")) $ BS.lines s
+ return $ fst $ getOptions "-" $ map (BS.unpack . BS.unwords . BS.words . BS.drop 3) ls
-- | check if old GF file
isOldFile :: FilePath -> IO Bool
diff --git a/src/GF/Source/GF.cf b/src/GF/Source/GF.cf
index a580f25e0..364550e6f 100644
--- a/src/GF/Source/GF.cf
+++ b/src/GF/Source/GF.cf
@@ -32,6 +32,20 @@ separator Transfer "" ;--%
TransferIn. Transfer ::= "(" "transfer" "in" Open ")" ; --%
TransferOut. Transfer ::= "(" "transfer" "out" Open ")" ; --%
+-- the module header
+
+MModule2. ModHeader ::= ComplMod ModType "=" ModHeaderBody ;
+
+MBody2. ModHeaderBody ::= Extend Opens ;
+MNoBody2. ModHeaderBody ::= [Included] ;
+MWith2. ModHeaderBody ::= Included "with" [Open] ;
+MWithBody2. ModHeaderBody ::= Included "with" [Open] "**" Opens ;
+MWithE2. ModHeaderBody ::= [Included] "**" Included "with" [Open] ;
+MWithEBody2. ModHeaderBody ::= [Included] "**" Included "with" [Open] "**" Opens ;
+
+MReuse2. ModHeaderBody ::= "reuse" PIdent ; --%
+MUnion2. ModHeaderBody ::= "union" [Included] ;--%
+
-- the individual modules
MModule. ModDef ::= ComplMod ModType "=" ModBody ;
diff --git a/src/GF/Source/ParGF.hs b/src/GF/Source/ParGF.hs
index ae3e4b642..30f83eef6 100644
--- a/src/GF/Source/ParGF.hs
+++ b/src/GF/Source/ParGF.hs
@@ -1,3517 +1,7845 @@
-{-# OPTIONS -fglasgow-exts -cpp #-}
-{-# OPTIONS -fno-warn-incomplete-patterns -fno-warn-overlapping-patterns #-}
-module GF.Source.ParGF where
-import GF.Source.AbsGF
-import GF.Source.LexGF
-import GF.Source.ErrM
-#if __GLASGOW_HASKELL__ >= 503
-import Data.Array
-#else
-import Array
-#endif
-#if __GLASGOW_HASKELL__ >= 503
-import GHC.Exts
-#else
-import GlaExts
-#endif
-
--- parser produced by Happy Version 1.16
-
-newtype HappyAbsSyn = HappyAbsSyn (() -> ())
-happyIn7 :: (Integer) -> (HappyAbsSyn )
-happyIn7 x = unsafeCoerce# x
-{-# INLINE happyIn7 #-}
-happyOut7 :: (HappyAbsSyn ) -> (Integer)
-happyOut7 x = unsafeCoerce# x
-{-# INLINE happyOut7 #-}
-happyIn8 :: (String) -> (HappyAbsSyn )
-happyIn8 x = unsafeCoerce# x
-{-# INLINE happyIn8 #-}
-happyOut8 :: (HappyAbsSyn ) -> (String)
-happyOut8 x = unsafeCoerce# x
-{-# INLINE happyOut8 #-}
-happyIn9 :: (Double) -> (HappyAbsSyn )
-happyIn9 x = unsafeCoerce# x
-{-# INLINE happyIn9 #-}
-happyOut9 :: (HappyAbsSyn ) -> (Double)
-happyOut9 x = unsafeCoerce# x
-{-# INLINE happyOut9 #-}
-happyIn10 :: (LString) -> (HappyAbsSyn )
-happyIn10 x = unsafeCoerce# x
-{-# INLINE happyIn10 #-}
-happyOut10 :: (HappyAbsSyn ) -> (LString)
-happyOut10 x = unsafeCoerce# x
-{-# INLINE happyOut10 #-}
-happyIn11 :: (PIdent) -> (HappyAbsSyn )
-happyIn11 x = unsafeCoerce# x
-{-# INLINE happyIn11 #-}
-happyOut11 :: (HappyAbsSyn ) -> (PIdent)
-happyOut11 x = unsafeCoerce# x
-{-# INLINE happyOut11 #-}
-happyIn12 :: (Grammar) -> (HappyAbsSyn )
-happyIn12 x = unsafeCoerce# x
-{-# INLINE happyIn12 #-}
-happyOut12 :: (HappyAbsSyn ) -> (Grammar)
-happyOut12 x = unsafeCoerce# x
-{-# INLINE happyOut12 #-}
-happyIn13 :: ([ModDef]) -> (HappyAbsSyn )
-happyIn13 x = unsafeCoerce# x
-{-# INLINE happyIn13 #-}
-happyOut13 :: (HappyAbsSyn ) -> ([ModDef])
-happyOut13 x = unsafeCoerce# x
-{-# INLINE happyOut13 #-}
-happyIn14 :: (ModDef) -> (HappyAbsSyn )
-happyIn14 x = unsafeCoerce# x
-{-# INLINE happyIn14 #-}
-happyOut14 :: (HappyAbsSyn ) -> (ModDef)
-happyOut14 x = unsafeCoerce# x
-{-# INLINE happyOut14 #-}
-happyIn15 :: (ConcSpec) -> (HappyAbsSyn )
-happyIn15 x = unsafeCoerce# x
-{-# INLINE happyIn15 #-}
-happyOut15 :: (HappyAbsSyn ) -> (ConcSpec)
-happyOut15 x = unsafeCoerce# x
-{-# INLINE happyOut15 #-}
-happyIn16 :: ([ConcSpec]) -> (HappyAbsSyn )
-happyIn16 x = unsafeCoerce# x
-{-# INLINE happyIn16 #-}
-happyOut16 :: (HappyAbsSyn ) -> ([ConcSpec])
-happyOut16 x = unsafeCoerce# x
-{-# INLINE happyOut16 #-}
-happyIn17 :: (ConcExp) -> (HappyAbsSyn )
-happyIn17 x = unsafeCoerce# x
-{-# INLINE happyIn17 #-}
-happyOut17 :: (HappyAbsSyn ) -> (ConcExp)
-happyOut17 x = unsafeCoerce# x
-{-# INLINE happyOut17 #-}
-happyIn18 :: ([Transfer]) -> (HappyAbsSyn )
-happyIn18 x = unsafeCoerce# x
-{-# INLINE happyIn18 #-}
-happyOut18 :: (HappyAbsSyn ) -> ([Transfer])
-happyOut18 x = unsafeCoerce# x
-{-# INLINE happyOut18 #-}
-happyIn19 :: (Transfer) -> (HappyAbsSyn )
-happyIn19 x = unsafeCoerce# x
-{-# INLINE happyIn19 #-}
-happyOut19 :: (HappyAbsSyn ) -> (Transfer)
-happyOut19 x = unsafeCoerce# x
-{-# INLINE happyOut19 #-}
-happyIn20 :: (ModType) -> (HappyAbsSyn )
-happyIn20 x = unsafeCoerce# x
-{-# INLINE happyIn20 #-}
-happyOut20 :: (HappyAbsSyn ) -> (ModType)
-happyOut20 x = unsafeCoerce# x
-{-# INLINE happyOut20 #-}
-happyIn21 :: (ModBody) -> (HappyAbsSyn )
-happyIn21 x = unsafeCoerce# x
-{-# INLINE happyIn21 #-}
-happyOut21 :: (HappyAbsSyn ) -> (ModBody)
-happyOut21 x = unsafeCoerce# x
-{-# INLINE happyOut21 #-}
-happyIn22 :: ([TopDef]) -> (HappyAbsSyn )
-happyIn22 x = unsafeCoerce# x
-{-# INLINE happyIn22 #-}
-happyOut22 :: (HappyAbsSyn ) -> ([TopDef])
-happyOut22 x = unsafeCoerce# x
-{-# INLINE happyOut22 #-}
-happyIn23 :: (Extend) -> (HappyAbsSyn )
-happyIn23 x = unsafeCoerce# x
-{-# INLINE happyIn23 #-}
-happyOut23 :: (HappyAbsSyn ) -> (Extend)
-happyOut23 x = unsafeCoerce# x
-{-# INLINE happyOut23 #-}
-happyIn24 :: ([Open]) -> (HappyAbsSyn )
-happyIn24 x = unsafeCoerce# x
-{-# INLINE happyIn24 #-}
-happyOut24 :: (HappyAbsSyn ) -> ([Open])
-happyOut24 x = unsafeCoerce# x
-{-# INLINE happyOut24 #-}
-happyIn25 :: (Opens) -> (HappyAbsSyn )
-happyIn25 x = unsafeCoerce# x
-{-# INLINE happyIn25 #-}
-happyOut25 :: (HappyAbsSyn ) -> (Opens)
-happyOut25 x = unsafeCoerce# x
-{-# INLINE happyOut25 #-}
-happyIn26 :: (Open) -> (HappyAbsSyn )
-happyIn26 x = unsafeCoerce# x
-{-# INLINE happyIn26 #-}
-happyOut26 :: (HappyAbsSyn ) -> (Open)
-happyOut26 x = unsafeCoerce# x
-{-# INLINE happyOut26 #-}
-happyIn27 :: (ComplMod) -> (HappyAbsSyn )
-happyIn27 x = unsafeCoerce# x
-{-# INLINE happyIn27 #-}
-happyOut27 :: (HappyAbsSyn ) -> (ComplMod)
-happyOut27 x = unsafeCoerce# x
-{-# INLINE happyOut27 #-}
-happyIn28 :: (QualOpen) -> (HappyAbsSyn )
-happyIn28 x = unsafeCoerce# x
-{-# INLINE happyIn28 #-}
-happyOut28 :: (HappyAbsSyn ) -> (QualOpen)
-happyOut28 x = unsafeCoerce# x
-{-# INLINE happyOut28 #-}
-happyIn29 :: ([Included]) -> (HappyAbsSyn )
-happyIn29 x = unsafeCoerce# x
-{-# INLINE happyIn29 #-}
-happyOut29 :: (HappyAbsSyn ) -> ([Included])
-happyOut29 x = unsafeCoerce# x
-{-# INLINE happyOut29 #-}
-happyIn30 :: (Included) -> (HappyAbsSyn )
-happyIn30 x = unsafeCoerce# x
-{-# INLINE happyIn30 #-}
-happyOut30 :: (HappyAbsSyn ) -> (Included)
-happyOut30 x = unsafeCoerce# x
-{-# INLINE happyOut30 #-}
-happyIn31 :: (Def) -> (HappyAbsSyn )
-happyIn31 x = unsafeCoerce# x
-{-# INLINE happyIn31 #-}
-happyOut31 :: (HappyAbsSyn ) -> (Def)
-happyOut31 x = unsafeCoerce# x
-{-# INLINE happyOut31 #-}
-happyIn32 :: (TopDef) -> (HappyAbsSyn )
-happyIn32 x = unsafeCoerce# x
-{-# INLINE happyIn32 #-}
-happyOut32 :: (HappyAbsSyn ) -> (TopDef)
-happyOut32 x = unsafeCoerce# x
-{-# INLINE happyOut32 #-}
-happyIn33 :: (CatDef) -> (HappyAbsSyn )
-happyIn33 x = unsafeCoerce# x
-{-# INLINE happyIn33 #-}
-happyOut33 :: (HappyAbsSyn ) -> (CatDef)
-happyOut33 x = unsafeCoerce# x
-{-# INLINE happyOut33 #-}
-happyIn34 :: (FunDef) -> (HappyAbsSyn )
-happyIn34 x = unsafeCoerce# x
-{-# INLINE happyIn34 #-}
-happyOut34 :: (HappyAbsSyn ) -> (FunDef)
-happyOut34 x = unsafeCoerce# x
-{-# INLINE happyOut34 #-}
-happyIn35 :: (DataDef) -> (HappyAbsSyn )
-happyIn35 x = unsafeCoerce# x
-{-# INLINE happyIn35 #-}
-happyOut35 :: (HappyAbsSyn ) -> (DataDef)
-happyOut35 x = unsafeCoerce# x
-{-# INLINE happyOut35 #-}
-happyIn36 :: (DataConstr) -> (HappyAbsSyn )
-happyIn36 x = unsafeCoerce# x
-{-# INLINE happyIn36 #-}
-happyOut36 :: (HappyAbsSyn ) -> (DataConstr)
-happyOut36 x = unsafeCoerce# x
-{-# INLINE happyOut36 #-}
-happyIn37 :: ([DataConstr]) -> (HappyAbsSyn )
-happyIn37 x = unsafeCoerce# x
-{-# INLINE happyIn37 #-}
-happyOut37 :: (HappyAbsSyn ) -> ([DataConstr])
-happyOut37 x = unsafeCoerce# x
-{-# INLINE happyOut37 #-}
-happyIn38 :: (ParDef) -> (HappyAbsSyn )
-happyIn38 x = unsafeCoerce# x
-{-# INLINE happyIn38 #-}
-happyOut38 :: (HappyAbsSyn ) -> (ParDef)
-happyOut38 x = unsafeCoerce# x
-{-# INLINE happyOut38 #-}
-happyIn39 :: (ParConstr) -> (HappyAbsSyn )
-happyIn39 x = unsafeCoerce# x
-{-# INLINE happyIn39 #-}
-happyOut39 :: (HappyAbsSyn ) -> (ParConstr)
-happyOut39 x = unsafeCoerce# x
-{-# INLINE happyOut39 #-}
-happyIn40 :: (PrintDef) -> (HappyAbsSyn )
-happyIn40 x = unsafeCoerce# x
-{-# INLINE happyIn40 #-}
-happyOut40 :: (HappyAbsSyn ) -> (PrintDef)
-happyOut40 x = unsafeCoerce# x
-{-# INLINE happyOut40 #-}
-happyIn41 :: (FlagDef) -> (HappyAbsSyn )
-happyIn41 x = unsafeCoerce# x
-{-# INLINE happyIn41 #-}
-happyOut41 :: (HappyAbsSyn ) -> (FlagDef)
-happyOut41 x = unsafeCoerce# x
-{-# INLINE happyOut41 #-}
-happyIn42 :: ([Def]) -> (HappyAbsSyn )
-happyIn42 x = unsafeCoerce# x
-{-# INLINE happyIn42 #-}
-happyOut42 :: (HappyAbsSyn ) -> ([Def])
-happyOut42 x = unsafeCoerce# x
-{-# INLINE happyOut42 #-}
-happyIn43 :: ([CatDef]) -> (HappyAbsSyn )
-happyIn43 x = unsafeCoerce# x
-{-# INLINE happyIn43 #-}
-happyOut43 :: (HappyAbsSyn ) -> ([CatDef])
-happyOut43 x = unsafeCoerce# x
-{-# INLINE happyOut43 #-}
-happyIn44 :: ([FunDef]) -> (HappyAbsSyn )
-happyIn44 x = unsafeCoerce# x
-{-# INLINE happyIn44 #-}
-happyOut44 :: (HappyAbsSyn ) -> ([FunDef])
-happyOut44 x = unsafeCoerce# x
-{-# INLINE happyOut44 #-}
-happyIn45 :: ([DataDef]) -> (HappyAbsSyn )
-happyIn45 x = unsafeCoerce# x
-{-# INLINE happyIn45 #-}
-happyOut45 :: (HappyAbsSyn ) -> ([DataDef])
-happyOut45 x = unsafeCoerce# x
-{-# INLINE happyOut45 #-}
-happyIn46 :: ([ParDef]) -> (HappyAbsSyn )
-happyIn46 x = unsafeCoerce# x
-{-# INLINE happyIn46 #-}
-happyOut46 :: (HappyAbsSyn ) -> ([ParDef])
-happyOut46 x = unsafeCoerce# x
-{-# INLINE happyOut46 #-}
-happyIn47 :: ([PrintDef]) -> (HappyAbsSyn )
-happyIn47 x = unsafeCoerce# x
-{-# INLINE happyIn47 #-}
-happyOut47 :: (HappyAbsSyn ) -> ([PrintDef])
-happyOut47 x = unsafeCoerce# x
-{-# INLINE happyOut47 #-}
-happyIn48 :: ([FlagDef]) -> (HappyAbsSyn )
-happyIn48 x = unsafeCoerce# x
-{-# INLINE happyIn48 #-}
-happyOut48 :: (HappyAbsSyn ) -> ([FlagDef])
-happyOut48 x = unsafeCoerce# x
-{-# INLINE happyOut48 #-}
-happyIn49 :: ([ParConstr]) -> (HappyAbsSyn )
-happyIn49 x = unsafeCoerce# x
-{-# INLINE happyIn49 #-}
-happyOut49 :: (HappyAbsSyn ) -> ([ParConstr])
-happyOut49 x = unsafeCoerce# x
-{-# INLINE happyOut49 #-}
-happyIn50 :: ([PIdent]) -> (HappyAbsSyn )
-happyIn50 x = unsafeCoerce# x
-{-# INLINE happyIn50 #-}
-happyOut50 :: (HappyAbsSyn ) -> ([PIdent])
-happyOut50 x = unsafeCoerce# x
-{-# INLINE happyOut50 #-}
-happyIn51 :: (Name) -> (HappyAbsSyn )
-happyIn51 x = unsafeCoerce# x
-{-# INLINE happyIn51 #-}
-happyOut51 :: (HappyAbsSyn ) -> (Name)
-happyOut51 x = unsafeCoerce# x
-{-# INLINE happyOut51 #-}
-happyIn52 :: ([Name]) -> (HappyAbsSyn )
-happyIn52 x = unsafeCoerce# x
-{-# INLINE happyIn52 #-}
-happyOut52 :: (HappyAbsSyn ) -> ([Name])
-happyOut52 x = unsafeCoerce# x
-{-# INLINE happyOut52 #-}
-happyIn53 :: (LocDef) -> (HappyAbsSyn )
-happyIn53 x = unsafeCoerce# x
-{-# INLINE happyIn53 #-}
-happyOut53 :: (HappyAbsSyn ) -> (LocDef)
-happyOut53 x = unsafeCoerce# x
-{-# INLINE happyOut53 #-}
-happyIn54 :: ([LocDef]) -> (HappyAbsSyn )
-happyIn54 x = unsafeCoerce# x
-{-# INLINE happyIn54 #-}
-happyOut54 :: (HappyAbsSyn ) -> ([LocDef])
-happyOut54 x = unsafeCoerce# x
-{-# INLINE happyOut54 #-}
-happyIn55 :: (Exp) -> (HappyAbsSyn )
-happyIn55 x = unsafeCoerce# x
-{-# INLINE happyIn55 #-}
-happyOut55 :: (HappyAbsSyn ) -> (Exp)
-happyOut55 x = unsafeCoerce# x
-{-# INLINE happyOut55 #-}
-happyIn56 :: (Exp) -> (HappyAbsSyn )
-happyIn56 x = unsafeCoerce# x
-{-# INLINE happyIn56 #-}
-happyOut56 :: (HappyAbsSyn ) -> (Exp)
-happyOut56 x = unsafeCoerce# x
-{-# INLINE happyOut56 #-}
-happyIn57 :: (Exp) -> (HappyAbsSyn )
-happyIn57 x = unsafeCoerce# x
-{-# INLINE happyIn57 #-}
-happyOut57 :: (HappyAbsSyn ) -> (Exp)
-happyOut57 x = unsafeCoerce# x
-{-# INLINE happyOut57 #-}
-happyIn58 :: (Exp) -> (HappyAbsSyn )
-happyIn58 x = unsafeCoerce# x
-{-# INLINE happyIn58 #-}
-happyOut58 :: (HappyAbsSyn ) -> (Exp)
-happyOut58 x = unsafeCoerce# x
-{-# INLINE happyOut58 #-}
-happyIn59 :: (Exp) -> (HappyAbsSyn )
-happyIn59 x = unsafeCoerce# x
-{-# INLINE happyIn59 #-}
-happyOut59 :: (HappyAbsSyn ) -> (Exp)
-happyOut59 x = unsafeCoerce# x
-{-# INLINE happyOut59 #-}
-happyIn60 :: (Exp) -> (HappyAbsSyn )
-happyIn60 x = unsafeCoerce# x
-{-# INLINE happyIn60 #-}
-happyOut60 :: (HappyAbsSyn ) -> (Exp)
-happyOut60 x = unsafeCoerce# x
-{-# INLINE happyOut60 #-}
-happyIn61 :: (Exp) -> (HappyAbsSyn )
-happyIn61 x = unsafeCoerce# x
-{-# INLINE happyIn61 #-}
-happyOut61 :: (HappyAbsSyn ) -> (Exp)
-happyOut61 x = unsafeCoerce# x
-{-# INLINE happyOut61 #-}
-happyIn62 :: ([Exp]) -> (HappyAbsSyn )
-happyIn62 x = unsafeCoerce# x
-{-# INLINE happyIn62 #-}
-happyOut62 :: (HappyAbsSyn ) -> ([Exp])
-happyOut62 x = unsafeCoerce# x
-{-# INLINE happyOut62 #-}
-happyIn63 :: (Exps) -> (HappyAbsSyn )
-happyIn63 x = unsafeCoerce# x
-{-# INLINE happyIn63 #-}
-happyOut63 :: (HappyAbsSyn ) -> (Exps)
-happyOut63 x = unsafeCoerce# x
-{-# INLINE happyOut63 #-}
-happyIn64 :: (Patt) -> (HappyAbsSyn )
-happyIn64 x = unsafeCoerce# x
-{-# INLINE happyIn64 #-}
-happyOut64 :: (HappyAbsSyn ) -> (Patt)
-happyOut64 x = unsafeCoerce# x
-{-# INLINE happyOut64 #-}
-happyIn65 :: (Patt) -> (HappyAbsSyn )
-happyIn65 x = unsafeCoerce# x
-{-# INLINE happyIn65 #-}
-happyOut65 :: (HappyAbsSyn ) -> (Patt)
-happyOut65 x = unsafeCoerce# x
-{-# INLINE happyOut65 #-}
-happyIn66 :: (Patt) -> (HappyAbsSyn )
-happyIn66 x = unsafeCoerce# x
-{-# INLINE happyIn66 #-}
-happyOut66 :: (HappyAbsSyn ) -> (Patt)
-happyOut66 x = unsafeCoerce# x
-{-# INLINE happyOut66 #-}
-happyIn67 :: (PattAss) -> (HappyAbsSyn )
-happyIn67 x = unsafeCoerce# x
-{-# INLINE happyIn67 #-}
-happyOut67 :: (HappyAbsSyn ) -> (PattAss)
-happyOut67 x = unsafeCoerce# x
-{-# INLINE happyOut67 #-}
-happyIn68 :: (Label) -> (HappyAbsSyn )
-happyIn68 x = unsafeCoerce# x
-{-# INLINE happyIn68 #-}
-happyOut68 :: (HappyAbsSyn ) -> (Label)
-happyOut68 x = unsafeCoerce# x
-{-# INLINE happyOut68 #-}
-happyIn69 :: (Sort) -> (HappyAbsSyn )
-happyIn69 x = unsafeCoerce# x
-{-# INLINE happyIn69 #-}
-happyOut69 :: (HappyAbsSyn ) -> (Sort)
-happyOut69 x = unsafeCoerce# x
-{-# INLINE happyOut69 #-}
-happyIn70 :: ([PattAss]) -> (HappyAbsSyn )
-happyIn70 x = unsafeCoerce# x
-{-# INLINE happyIn70 #-}
-happyOut70 :: (HappyAbsSyn ) -> ([PattAss])
-happyOut70 x = unsafeCoerce# x
-{-# INLINE happyOut70 #-}
-happyIn71 :: ([Patt]) -> (HappyAbsSyn )
-happyIn71 x = unsafeCoerce# x
-{-# INLINE happyIn71 #-}
-happyOut71 :: (HappyAbsSyn ) -> ([Patt])
-happyOut71 x = unsafeCoerce# x
-{-# INLINE happyOut71 #-}
-happyIn72 :: (Bind) -> (HappyAbsSyn )
-happyIn72 x = unsafeCoerce# x
-{-# INLINE happyIn72 #-}
-happyOut72 :: (HappyAbsSyn ) -> (Bind)
-happyOut72 x = unsafeCoerce# x
-{-# INLINE happyOut72 #-}
-happyIn73 :: ([Bind]) -> (HappyAbsSyn )
-happyIn73 x = unsafeCoerce# x
-{-# INLINE happyIn73 #-}
-happyOut73 :: (HappyAbsSyn ) -> ([Bind])
-happyOut73 x = unsafeCoerce# x
-{-# INLINE happyOut73 #-}
-happyIn74 :: (Decl) -> (HappyAbsSyn )
-happyIn74 x = unsafeCoerce# x
-{-# INLINE happyIn74 #-}
-happyOut74 :: (HappyAbsSyn ) -> (Decl)
-happyOut74 x = unsafeCoerce# x
-{-# INLINE happyOut74 #-}
-happyIn75 :: (TupleComp) -> (HappyAbsSyn )
-happyIn75 x = unsafeCoerce# x
-{-# INLINE happyIn75 #-}
-happyOut75 :: (HappyAbsSyn ) -> (TupleComp)
-happyOut75 x = unsafeCoerce# x
-{-# INLINE happyOut75 #-}
-happyIn76 :: (PattTupleComp) -> (HappyAbsSyn )
-happyIn76 x = unsafeCoerce# x
-{-# INLINE happyIn76 #-}
-happyOut76 :: (HappyAbsSyn ) -> (PattTupleComp)
-happyOut76 x = unsafeCoerce# x
-{-# INLINE happyOut76 #-}
-happyIn77 :: ([TupleComp]) -> (HappyAbsSyn )
-happyIn77 x = unsafeCoerce# x
-{-# INLINE happyIn77 #-}
-happyOut77 :: (HappyAbsSyn ) -> ([TupleComp])
-happyOut77 x = unsafeCoerce# x
-{-# INLINE happyOut77 #-}
-happyIn78 :: ([PattTupleComp]) -> (HappyAbsSyn )
-happyIn78 x = unsafeCoerce# x
-{-# INLINE happyIn78 #-}
-happyOut78 :: (HappyAbsSyn ) -> ([PattTupleComp])
-happyOut78 x = unsafeCoerce# x
-{-# INLINE happyOut78 #-}
-happyIn79 :: (Case) -> (HappyAbsSyn )
-happyIn79 x = unsafeCoerce# x
-{-# INLINE happyIn79 #-}
-happyOut79 :: (HappyAbsSyn ) -> (Case)
-happyOut79 x = unsafeCoerce# x
-{-# INLINE happyOut79 #-}
-happyIn80 :: ([Case]) -> (HappyAbsSyn )
-happyIn80 x = unsafeCoerce# x
-{-# INLINE happyIn80 #-}
-happyOut80 :: (HappyAbsSyn ) -> ([Case])
-happyOut80 x = unsafeCoerce# x
-{-# INLINE happyOut80 #-}
-happyIn81 :: (Equation) -> (HappyAbsSyn )
-happyIn81 x = unsafeCoerce# x
-{-# INLINE happyIn81 #-}
-happyOut81 :: (HappyAbsSyn ) -> (Equation)
-happyOut81 x = unsafeCoerce# x
-{-# INLINE happyOut81 #-}
-happyIn82 :: ([Equation]) -> (HappyAbsSyn )
-happyIn82 x = unsafeCoerce# x
-{-# INLINE happyIn82 #-}
-happyOut82 :: (HappyAbsSyn ) -> ([Equation])
-happyOut82 x = unsafeCoerce# x
-{-# INLINE happyOut82 #-}
-happyIn83 :: (Altern) -> (HappyAbsSyn )
-happyIn83 x = unsafeCoerce# x
-{-# INLINE happyIn83 #-}
-happyOut83 :: (HappyAbsSyn ) -> (Altern)
-happyOut83 x = unsafeCoerce# x
-{-# INLINE happyOut83 #-}
-happyIn84 :: ([Altern]) -> (HappyAbsSyn )
-happyIn84 x = unsafeCoerce# x
-{-# INLINE happyIn84 #-}
-happyOut84 :: (HappyAbsSyn ) -> ([Altern])
-happyOut84 x = unsafeCoerce# x
-{-# INLINE happyOut84 #-}
-happyIn85 :: (DDecl) -> (HappyAbsSyn )
-happyIn85 x = unsafeCoerce# x
-{-# INLINE happyIn85 #-}
-happyOut85 :: (HappyAbsSyn ) -> (DDecl)
-happyOut85 x = unsafeCoerce# x
-{-# INLINE happyOut85 #-}
-happyIn86 :: ([DDecl]) -> (HappyAbsSyn )
-happyIn86 x = unsafeCoerce# x
-{-# INLINE happyIn86 #-}
-happyOut86 :: (HappyAbsSyn ) -> ([DDecl])
-happyOut86 x = unsafeCoerce# x
-{-# INLINE happyOut86 #-}
-happyIn87 :: (OldGrammar) -> (HappyAbsSyn )
-happyIn87 x = unsafeCoerce# x
-{-# INLINE happyIn87 #-}
-happyOut87 :: (HappyAbsSyn ) -> (OldGrammar)
-happyOut87 x = unsafeCoerce# x
-{-# INLINE happyOut87 #-}
-happyIn88 :: (Include) -> (HappyAbsSyn )
-happyIn88 x = unsafeCoerce# x
-{-# INLINE happyIn88 #-}
-happyOut88 :: (HappyAbsSyn ) -> (Include)
-happyOut88 x = unsafeCoerce# x
-{-# INLINE happyOut88 #-}
-happyIn89 :: (FileName) -> (HappyAbsSyn )
-happyIn89 x = unsafeCoerce# x
-{-# INLINE happyIn89 #-}
-happyOut89 :: (HappyAbsSyn ) -> (FileName)
-happyOut89 x = unsafeCoerce# x
-{-# INLINE happyOut89 #-}
-happyIn90 :: ([FileName]) -> (HappyAbsSyn )
-happyIn90 x = unsafeCoerce# x
-{-# INLINE happyIn90 #-}
-happyOut90 :: (HappyAbsSyn ) -> ([FileName])
-happyOut90 x = unsafeCoerce# x
-{-# INLINE happyOut90 #-}
-happyInTok :: Token -> (HappyAbsSyn )
-happyInTok x = unsafeCoerce# x
-{-# INLINE happyInTok #-}
-happyOutTok :: (HappyAbsSyn ) -> Token
-happyOutTok x = unsafeCoerce# x
-{-# INLINE happyOutTok #-}
-
-happyActOffsets :: HappyAddr
-happyActOffsets = HappyA# "\x00\x00\xb2\x00\xcf\x04\x0a\x01\xb1\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe9\x04\x00\x00\xee\x04\xdc\x01\x0b\x01\xd9\x04\x9e\x04\xd8\x04\x00\x00\xe7\x04\x8f\x04\x1d\x00\xf7\xff\x8f\x04\x00\x00\x0a\x01\x6d\x03\x31\x00\x8f\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x01\x00\x00\xea\x04\x2c\x03\xfe\xff\x2c\x03\xe6\x04\xe4\x04\xfa\x02\xe3\x04\x00\x00\x00\x00\x00\x00\x00\x00\x86\x04\x00\x00\x76\x00\x05\x00\x07\x06\x7e\x04\x00\x00\x6a\x04\x44\x01\xcd\x04\xc6\x04\xbc\x04\x75\x04\x75\x04\x75\x04\x75\x04\x75\x04\x75\x04\x00\x00\x00\x00\x76\x00\xbb\x04\x00\x00\x76\x00\x76\x00\x76\x00\x76\x08\x0a\x01\x00\x00\x1e\x00\x57\x03\xbb\x00\x69\x04\x6c\x00\x6c\x00\xa0\x04\xae\x04\x7f\x01\xab\x04\x77\x04\x61\x04\x10\x00\x6d\x03\x67\x04\x00\x00\x00\x00\x9a\x04\x96\x04\xf3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x04\x00\x00\x45\x04\x57\x03\x3a\x04\x00\x00\x57\x03\x41\x04\x00\x00\x80\x04\x79\x04\x6c\x04\x74\x02\x71\x04\xd8\x02\x00\x00\x90\x00\x76\x04\x6f\x04\xa6\x02\xff\x02\x6d\x04\x6c\x00\x40\x01\x6c\x00\x40\x01\x40\x01\x40\x01\x6c\x00\x51\x04\x5d\x04\x17\x00\x84\x02\x00\x00\x0f\x04\x00\x00\x00\x00\x02\x04\x01\x04\x00\x00\x52\x02\x52\x02\x52\x02\x00\x00\x52\x02\x54\x01\x00\x00\x00\x00\x00\x00\x00\x00\x01\x04\x01\x04\x48\x04\x6c\x00\x00\x00\x30\x02\x3c\x04\x00\x00\xf8\x03\x00\x00\x00\x00\x6c\x00\x6c\x00\x37\x04\x62\x01\x18\x04\x00\x00\xb9\x00\x1d\x04\x28\x04\x6d\x03\x1a\x04\x8d\x00\x79\x01\x23\x04\x13\x04\x14\x04\xc6\x03\xec\x03\x6c\x00\xf3\xff\x10\x04\x6d\x03\x0a\x04\x07\x04\x06\x04\x00\x00\x05\x04\x6c\x00\xb5\x03\x6c\x00\x6c\x00\x04\x04\x03\x04\xf7\x03\xe8\x03\x8f\x01\x50\x02\xf6\x03\xe2\x03\x57\x03\x6c\x00\xd2\x03\x00\x00\x28\x00\x84\x03\x25\x00\x84\x03\x84\x03\x25\x00\x25\x00\x25\x00\x25\x00\x25\x00\x84\x03\x84\x03\x25\x00\x58\x00\x84\x03\x25\x00\x25\x00\x00\x00\x00\x00\x00\x00\x76\x00\x00\x00\xcc\x03\x00\x00\x00\x00\xaa\x03\x9b\x03\x00\x00\x38\x00\xcf\x03\x9d\x03\xe7\x01\x00\x00\x92\x03\xb6\x03\x06\x00\x6f\x03\x6f\x03\x6f\x03\x6f\x03\x15\x00\x00\x00\x00\x00\xbc\x03\x00\x00\xa3\x00\x1e\x01\x61\x03\x00\x00\xb0\x03\xae\x03\x00\x00\xa6\x03\xac\x03\x25\x00\x25\x00\x00\x00\xa5\x03\xa2\x03\x00\x00\xa0\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x03\x00\x00\x9a\x03\x9c\x03\x99\x03\x00\x00\x00\x00\x8f\x00\x98\x03\x00\x00\x00\x00\x00\x00\x96\x03\x00\x00\x41\x03\x00\x00\x82\x03\x89\x03\x00\x00\x4e\x03\x4e\x03\x4e\x03\x6c\x00\x00\x00\x3b\x03\x6d\x03\x00\x00\x6c\x00\x6c\x00\x88\x03\x00\x00\x00\x00\x00\x00\x5c\x03\x00\x00\x6d\x03\x6c\x00\x00\x00\x4e\x03\x00\x00\x00\x00\x6c\x00\x00\x00\x00\x00\x37\x03\x4e\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x03\x00\x00\x37\x03\x6e\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6b\x03\x00\x00\x7c\x03\x00\x00\x73\x03\x00\x00\x30\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb9\x00\x00\x00\x00\x00\x71\x03\x00\x00\x00\x00\x6c\x00\x6c\x00\x58\x03\x66\x03\x70\x03\x00\x00\x00\x00\x6d\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x00\xfe\x01\x1a\x03\x1a\x03\x1a\x03\x1a\x03\x6c\x00\x1a\x03\x63\x03\x14\x03\x14\x00\x00\x00\x00\x00\x6c\x00\x18\x00\x18\x00\x00\x00\x55\x03\x6c\x00\x6c\x00\x5b\x03\x18\x00\x00\x00\x50\x03\x47\x00\x00\x00\x00\x00\x00\x00\x54\x03\x00\x00\x06\x03\x13\x00\x06\x03\x53\x03\x13\x00\x03\x03\x47\x03\x43\x03\xf3\x02\xf3\x02\x3a\x03\x13\x03\x39\x03\x00\x00\xf5\x02\x32\x03\x00\x00\xef\x02\x00\x00\x00\x00\x13\x00\x00\x00\x6c\x00\x38\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x03\x00\x00\x0a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x25\x03\x23\x03\x00\x00\x2e\x03\x00\x00\x00\x00\x00\x00\x1d\x00\x00\x00\xa9\x01\x00\x00\x00\x00\x6c\x00\x6c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x03\x26\x03\xdb\x02\xdb\x02\xad\x04\xdb\x02\xdb\x02\xfe\x01\x6c\x00\x00\x00\x00\x00\xbf\x01\xea\x02\x13\x00\x8c\x04\x13\x00\x00\x00\x00\x00\x16\x03\x1f\x03\xce\x02\x00\x00\x00\x00\x00\x00\x0c\x03\x10\x03\xc1\x02\x00\x00\x00\x00\x00\x00\x0b\x03\x0f\x03\x00\x00\x00\x00\x6c\x00\xbb\x02\xfc\x02\x09\x03\x00\x00\x00\x00\x01\x03\x00\x00\xb5\x02\x02\x03\xed\x02\xe9\x02\x00\x00\x9b\x02\x9b\x02\xe1\x02\x64\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x02\x43\x04\x00\x00\x00\x00\x95\x02\xe8\xff\x13\x00\x13\x00\xe0\x02\xdf\x02\x00\x00\x00\x00\x00\x00"#
-
-happyGotoOffsets :: HappyAddr
-happyGotoOffsets = HappyA# "\xcb\x01\x8e\x01\xc2\x00\x32\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\x01\xf7\x04\x1b\x00\xca\x02\x00\x00\x31\x04\x97\x02\x71\x00\xb7\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x08\x00\x00\x00\x00\x8e\x05\xba\x01\x55\x04\x00\x00\x00\x00\x1f\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbe\x02\x03\x00\x00\x00\xbf\x02\xb0\x02\x00\x00\x00\x00\xfa\x00\x00\x00\x00\x00\x00\x00\xaf\x02\xae\x02\xa8\x02\x96\x02\x8e\x02\x81\x02\x00\x00\x00\x00\x0d\x00\x00\x00\x00\x00\x09\x00\x08\x00\x07\x00\x6f\x02\x66\x05\x00\x00\x00\x00\xc3\x03\xfb\x07\x76\x02\x4a\x05\xdf\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x01\x68\x02\xc2\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf3\x00\x34\x03\x65\x02\x00\x00\xff\x03\x5d\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x05\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x04\x00\x00\x00\x00\xc4\x07\x4d\x08\xa8\x07\xc0\x02\x6c\x02\x18\x02\x8d\x07\x00\x00\x00\x00\x86\x00\xd4\x01\x00\x00\x19\x01\x00\x00\x00\x00\x34\x02\x12\x01\x00\x00\x78\x01\x78\x01\x78\x01\x00\x00\x78\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x00\x5c\x02\x00\x00\x71\x07\x00\x00\xd6\x02\x00\x00\x00\x00\x3a\x02\x00\x00\x00\x00\x0d\x04\x56\x07\x00\x00\x43\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x02\x00\x00\x3a\x07\x32\x00\x00\x00\x38\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x07\xbe\x00\x03\x07\xe8\x06\x00\x00\x00\x00\x00\x00\x00\x00\x06\x02\x00\x00\x00\x00\x00\x00\xe0\x03\x2e\x05\x00\x00\x00\x00\xc7\x02\x11\x04\x6f\x08\x13\x01\x92\x01\x6a\x08\xf1\x05\x59\x08\x3d\x08\xdd\x04\x2a\x02\xbb\x01\x46\x04\xa4\x04\x22\x02\xfe\x03\xcd\x03\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x04\x00\x00\x00\x00\x00\x00\x00\x00\x11\x02\x00\x00\x00\x00\x19\x02\xb8\x01\x12\x02\x0f\x02\xc1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x01\x00\x00\xf1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x04\xc7\x03\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\x9c\x01\x00\x00\x00\x00\xe2\x01\x00\x00\x00\x00\x00\x00\x00\x00\x8f\x03\x5b\x04\x94\x03\xcc\x06\x00\x00\xdf\x01\x5a\x02\x00\x00\x12\x05\xa9\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x01\xb1\x06\x00\x00\x9d\x00\x00\x00\x00\x00\x95\x06\x00\x00\x00\x00\xbd\x00\xde\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe9\x03\x00\x00\xc4\x01\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\x00\x00\x00\x00\x00\x7a\x06\x5e\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x01\x68\x01\x12\x00\x42\x01\x13\x02\xef\x00\xa1\x01\x43\x06\x0c\x01\x00\x00\xb4\x01\xf9\x00\x00\x00\x00\x00\x27\x06\xa6\x00\x8d\x02\x00\x00\x00\x00\x0c\x06\xf0\x05\x00\x00\xfe\x02\x00\x00\x00\x00\x9d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\x01\xac\x02\x21\x00\x00\x00\xab\x02\x9e\x00\x00\x00\x00\x00\x4f\x01\x23\x00\x00\x00\x00\x00\x00\x00\x90\x01\x00\x00\x00\x00\x00\x00\x3b\x01\x00\x00\x00\x00\x27\x00\x00\x00\xd5\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\x04\x00\x00\x12\x00\x00\x00\x00\x00\x83\x03\xb9\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\x02\x03\x01\xdd\x00\xea\x00\xcb\x00\x12\x00\x9e\x05\x00\x00\x00\x00\x00\x00\xd0\x00\x66\x02\xc0\x00\x54\x02\x00\x00\x00\x00\x00\x00\x00\x00\x82\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x82\x05\xb7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x00\x95\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2e\x02\xf4\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x26\x00\x00\x00\x00\x00\x3b\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
-
-happyDefActions :: HappyAddr
-happyDefActions = HappyA# "\xf5\xff\xcd\xff\x00\xff\x00\x00\x00\x00\xfb\xff\x78\xff\x79\xff\x77\xff\x6c\xff\x7d\xff\x68\xff\x5c\xff\x57\xff\x49\xff\x4a\xff\x00\x00\x55\xff\x7a\xff\x00\x00\x80\xff\x1d\xff\x00\x00\x00\x00\x76\xff\x16\xff\x00\x00\x1d\xff\x00\x00\x28\xff\x26\xff\x25\xff\x27\xff\x29\xff\x00\x00\x74\xff\x00\x00\x00\x00\x80\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\xff\xf9\xff\xf8\xff\xf7\xff\x00\x00\xd9\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcc\xff\x00\x00\xcd\xff\xf4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf3\xff\xfe\xfe\xfd\xfe\x00\x00\xff\xfe\x00\x00\x00\x00\x00\x00\x01\xff\x48\xff\x7d\xff\x00\x00\x80\xff\x00\x00\x00\x00\x48\xff\x00\x00\x5d\xff\x89\xff\x00\x00\x7f\xff\x00\x00\x80\xff\x00\x00\x0c\xff\x00\x00\x5b\xff\x1f\xff\x1c\xff\x00\x00\x1d\xff\x1e\xff\x3b\xff\x39\xff\x3a\xff\x3e\xff\x5e\xff\x24\xff\x00\x00\x00\x00\x43\xff\x13\xff\x00\x00\x3f\xff\x18\xff\x15\xff\x00\x00\x00\x00\x00\x00\x45\xff\x75\xff\x7d\xff\x00\x00\x00\x00\x00\x00\x89\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x67\xff\x00\x00\x00\x00\x5f\xff\x80\xff\x2b\xff\x6b\xff\x00\x00\x80\xff\x50\xff\x59\xff\x5a\xff\x58\xff\x54\xff\x57\xff\x49\xff\x56\xff\x51\xff\x71\xff\x7c\xff\x00\x00\x00\x00\x7d\xff\x00\x00\x6d\xff\x45\xff\x00\x00\x72\xff\x00\x00\x7b\xff\x70\xff\x16\xff\x00\x00\x41\xff\x3e\xff\x30\xff\x2d\xff\x17\xff\x12\xff\x00\x00\x00\x00\x00\x00\x00\x00\x89\xff\x00\x00\x23\xff\x00\x00\x00\x00\x00\x00\x00\x00\x1d\xff\x00\x00\x21\xff\x00\x00\x0b\xff\x00\x00\x4b\xff\x00\x00\x00\x00\x80\xff\x00\x00\x00\x00\x00\x00\x47\xff\x00\x00\x00\x00\x89\xff\x00\x00\x0f\xff\x00\x00\x00\x00\x48\xff\x00\x00\xd8\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\xfc\xfe\xfb\xfe\xfa\xfe\xf8\xfe\xf9\xfe\x00\x00\xe6\xff\xe5\xff\x00\x00\x00\x00\xe7\xff\xc8\xff\x00\x00\x00\x00\xc5\xff\xf1\xff\xd2\xff\xe0\xff\xc7\xff\x00\x00\xc8\xff\x00\x00\x00\x00\x00\x00\xf7\xfe\x87\xff\x00\x00\xac\xff\x85\xff\x00\x00\x00\x00\xb9\xff\x00\x00\x00\x00\xb0\xff\x85\xff\x00\x00\x00\x00\x00\x00\xae\xff\x9e\xff\x00\x00\xb8\xff\x00\x00\xb7\xff\xaf\xff\xb5\xff\xb6\xff\xb4\xff\x00\x00\xbd\xff\x00\x00\x00\x00\x00\x00\xb1\xff\xbb\xff\x89\xff\x00\x00\xbc\xff\xba\xff\x03\xff\x00\x00\xbe\xff\x00\x00\x62\xff\x00\x00\x00\x00\x66\xff\x00\x00\x00\x00\x00\x00\x00\x00\x35\xff\x00\x00\x00\x00\x60\xff\x48\xff\x08\xff\x83\xff\x82\xff\x7e\xff\x4e\xff\x00\x00\x4c\xff\x0c\xff\x00\x00\x20\xff\x00\x00\x1b\xff\x53\xff\x00\x00\x3c\xff\x38\xff\x24\xff\x00\x00\x3d\xff\x36\xff\x42\xff\x31\xff\x37\xff\x13\xff\x33\xff\x00\x00\x00\x00\x18\xff\x14\xff\x69\xff\x73\xff\x44\xff\x00\x00\x6f\xff\x00\x00\x88\xff\x00\x00\x2a\xff\x89\xff\x4d\xff\x6a\xff\x1a\xff\x6e\xff\x40\xff\x11\xff\x2c\xff\x22\xff\x52\xff\x00\x00\x0d\xff\x0a\xff\x00\x00\x00\x00\x00\x00\x07\xff\x00\x00\x46\xff\x32\xff\x3c\xff\x10\xff\x2e\xff\x2f\xff\x0e\xff\x65\xff\x64\xff\x03\xff\x98\xff\xaa\xff\x94\xff\xa3\xff\x8e\xff\x00\x00\x00\x00\x96\xff\x00\x00\x92\xff\x8c\xff\xb2\xff\xb3\xff\x00\x00\x00\x00\x90\xff\xab\xff\x00\x00\x00\x00\x00\x00\x00\x00\x9a\xff\xd0\xff\x00\x00\xcb\xff\xe3\xff\xe4\xff\xda\xff\xc7\xff\xdb\xff\xc8\xff\xd5\xff\xd7\xff\x00\x00\xd5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\xff\xd9\xff\x00\x00\xdf\xff\xc6\xff\x00\x00\xca\xff\xc9\xff\x00\x00\x99\xff\x00\x00\xc2\xff\xc1\xff\x86\xff\x8f\xff\x84\xff\x9c\xff\x03\xff\x8b\xff\xa0\xff\x00\x00\x91\xff\xd9\xff\x95\xff\xa7\xff\x9b\xff\x8d\xff\xa5\xff\xa2\xff\xa6\xff\x00\x00\x93\xff\x04\xff\x02\xff\x1d\xff\x97\xff\x00\x00\x34\xff\x61\xff\x08\xff\x00\x00\x81\xff\x4f\xff\x63\xff\x09\xff\x06\xff\xa9\xff\x00\x00\xa3\xff\x00\x00\x00\x00\x00\x00\x8c\xff\x9d\xff\x00\x00\xc0\xff\xe2\xff\x00\x00\xd2\xff\xd5\xff\x00\x00\xd5\xff\xd1\xff\xc4\xff\x00\x00\x00\x00\xef\xff\xc3\xff\xd3\xff\xe1\xff\xdd\xff\x00\x00\x00\x00\xcf\xff\xbf\xff\x8a\xff\x00\x00\x00\x00\xa4\xff\xa1\xff\x00\x00\x00\x00\x00\x00\x00\x00\xad\xff\x9f\xff\x00\x00\xd9\xff\xd2\xff\x00\x00\xee\xff\x00\x00\xf2\xff\xef\xff\x00\x00\x00\x00\x00\x00\xce\xff\x05\xff\xa8\xff\xde\xff\xd9\xff\xeb\xff\xf0\xff\xed\xff\xec\xff\x00\x00\xdc\xff\xea\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe9\xff\xe8\xff"#
-
-happyCheck :: HappyAddr
-happyCheck = HappyA# "\xff\xff\x03\x00\x01\x00\x0c\x00\x01\x00\x04\x00\x01\x00\x04\x00\x01\x00\x01\x00\x01\x00\x04\x00\x04\x00\x04\x00\x01\x00\x1c\x00\x0a\x00\x04\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x2f\x00\x05\x00\x05\x00\x05\x00\x19\x00\x01\x00\x04\x00\x0e\x00\x04\x00\x03\x00\x03\x00\x05\x00\x0b\x00\x3c\x00\x04\x00\x04\x00\x04\x00\x0b\x00\x0b\x00\x0b\x00\x04\x00\x13\x00\x10\x00\x11\x00\x12\x00\x0b\x00\x0b\x00\x15\x00\x0b\x00\x1d\x00\x13\x00\x04\x00\x1a\x00\x17\x00\x1c\x00\x13\x00\x03\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x30\x00\x26\x00\x51\x00\x4e\x00\x29\x00\x0c\x00\x51\x00\x2c\x00\x04\x00\x1a\x00\x2f\x00\x1c\x00\x2b\x00\x51\x00\x3e\x00\x34\x00\x4c\x00\x52\x00\x53\x00\x52\x00\x53\x00\x0f\x00\x53\x00\x52\x00\x52\x00\x52\x00\x3f\x00\x40\x00\x4e\x00\x52\x00\x4e\x00\x44\x00\x45\x00\x0b\x00\x51\x00\x51\x00\x51\x00\x4a\x00\x51\x00\x51\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x03\x00\x51\x00\x05\x00\x3a\x00\x41\x00\x42\x00\x04\x00\x51\x00\x0b\x00\x31\x00\x51\x00\x33\x00\x43\x00\x10\x00\x11\x00\x12\x00\x27\x00\x48\x00\x15\x00\x51\x00\x0d\x00\x0e\x00\x2d\x00\x1a\x00\x41\x00\x42\x00\x51\x00\x04\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x02\x00\x26\x00\x06\x00\x1e\x00\x29\x00\x19\x00\x07\x00\x2c\x00\x0a\x00\x0a\x00\x2f\x00\x0f\x00\x00\x00\x01\x00\x02\x00\x34\x00\x04\x00\x04\x00\x04\x00\x14\x00\x18\x00\x03\x00\x12\x00\x05\x00\x51\x00\x04\x00\x3f\x00\x40\x00\x0a\x00\x0b\x00\x0f\x00\x44\x00\x45\x00\x41\x00\x42\x00\x11\x00\x12\x00\x4a\x00\x00\x00\x15\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x03\x00\x1c\x00\x05\x00\x04\x00\x04\x00\x3d\x00\x4e\x00\x04\x00\x0b\x00\x51\x00\x0f\x00\x2b\x00\x2b\x00\x10\x00\x11\x00\x12\x00\x04\x00\x04\x00\x15\x00\x18\x00\x2c\x00\x2d\x00\x13\x00\x1a\x00\x39\x00\x3a\x00\x3b\x00\x19\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x2e\x00\x26\x00\x12\x00\x31\x00\x29\x00\x48\x00\x49\x00\x2c\x00\x2b\x00\x2b\x00\x2f\x00\x20\x00\x2e\x00\x2f\x00\x04\x00\x34\x00\x4d\x00\x4e\x00\x4f\x00\x04\x00\x51\x00\x2a\x00\x19\x00\x04\x00\x04\x00\x3c\x00\x3f\x00\x40\x00\x3f\x00\x04\x00\x0a\x00\x44\x00\x45\x00\x07\x00\x00\x00\x01\x00\x02\x00\x4a\x00\x04\x00\x04\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x03\x00\x14\x00\x05\x00\x04\x00\x22\x00\x50\x00\x51\x00\x09\x00\x0b\x00\x04\x00\x04\x00\x29\x00\x20\x00\x10\x00\x11\x00\x12\x00\x04\x00\x2b\x00\x15\x00\x02\x00\x16\x00\x17\x00\x2a\x00\x1a\x00\x07\x00\x1b\x00\x1b\x00\x4f\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x3c\x00\x26\x00\x25\x00\x3f\x00\x29\x00\x04\x00\x22\x00\x2c\x00\x2b\x00\x0f\x00\x2f\x00\x0a\x00\x39\x00\x29\x00\x2b\x00\x34\x00\x04\x00\x2e\x00\x2f\x00\x40\x00\x03\x00\x2b\x00\x05\x00\x04\x00\x2e\x00\x2f\x00\x3f\x00\x40\x00\x0b\x00\x4a\x00\x4b\x00\x44\x00\x45\x00\x10\x00\x11\x00\x12\x00\x04\x00\x4a\x00\x15\x00\x4b\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x04\x00\x09\x00\x1c\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x26\x00\x05\x00\x26\x00\x29\x00\x16\x00\x17\x00\x04\x00\x0b\x00\x16\x00\x17\x00\x0e\x00\x04\x00\x2e\x00\x11\x00\x12\x00\x31\x00\x14\x00\x15\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x1c\x00\x3f\x00\x40\x00\x02\x00\x1a\x00\x0a\x00\x44\x00\x45\x00\x07\x00\x00\x00\x01\x00\x02\x00\x4a\x00\x04\x00\x24\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x03\x00\x04\x00\x05\x00\x07\x00\x04\x00\x53\x00\x2b\x00\x0a\x00\x0b\x00\x2e\x00\x2f\x00\x0e\x00\x0f\x00\x0f\x00\x11\x00\x12\x00\x14\x00\x14\x00\x15\x00\x04\x00\x17\x00\x18\x00\x30\x00\x31\x00\x1b\x00\x1c\x00\x03\x00\x1b\x00\x05\x00\x4d\x00\x4e\x00\x4f\x00\x15\x00\x51\x00\x0b\x00\x0c\x00\x3e\x00\x25\x00\x04\x00\x10\x00\x11\x00\x12\x00\x04\x00\x2b\x00\x04\x00\x04\x00\x39\x00\x02\x00\x00\x00\x01\x00\x02\x00\x06\x00\x04\x00\x40\x00\x04\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x16\x00\x17\x00\x05\x00\x06\x00\x29\x00\x1f\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x4f\x00\x1f\x00\x27\x00\x4d\x00\x4e\x00\x4f\x00\x03\x00\x51\x00\x05\x00\x27\x00\x04\x00\x08\x00\x2b\x00\x04\x00\x0b\x00\x2e\x00\x2f\x00\x04\x00\x4f\x00\x10\x00\x11\x00\x12\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x0d\x00\x04\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x39\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x40\x00\x05\x00\x30\x00\x29\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x04\x00\x4a\x00\x4b\x00\x10\x00\x11\x00\x12\x00\x2b\x00\x3e\x00\x04\x00\x2e\x00\x2f\x00\x04\x00\x04\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x12\x00\x1d\x00\x1e\x00\x04\x00\x29\x00\x39\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x04\x00\x40\x00\x1d\x00\x1e\x00\x04\x00\x03\x00\x00\x00\x05\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x04\x00\x04\x00\x39\x00\x10\x00\x11\x00\x12\x00\x00\x00\x01\x00\x02\x00\x40\x00\x04\x00\x30\x00\x31\x00\x32\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x3e\x00\x05\x00\x04\x00\x29\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x0f\x00\x04\x00\x04\x00\x10\x00\x11\x00\x12\x00\x11\x00\x01\x00\x13\x00\x18\x00\x01\x00\x04\x00\x1b\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x39\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x11\x00\x40\x00\x13\x00\x04\x00\x29\x00\x39\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x0e\x00\x40\x00\x10\x00\x04\x00\x04\x00\x03\x00\x19\x00\x05\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x04\x00\x04\x00\x39\x00\x10\x00\x11\x00\x12\x00\x00\x00\x01\x00\x02\x00\x04\x00\x04\x00\x30\x00\x31\x00\x32\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x3e\x00\x05\x00\x04\x00\x29\x00\x21\x00\x04\x00\x04\x00\x0b\x00\x04\x00\x04\x00\x04\x00\x28\x00\x10\x00\x11\x00\x12\x00\x2c\x00\x2d\x00\x04\x00\x11\x00\x11\x00\x13\x00\x13\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x39\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x04\x00\x0d\x00\x0f\x00\x04\x00\x29\x00\x39\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x03\x00\x47\x00\x05\x00\x00\x00\x01\x00\x02\x00\x1a\x00\x04\x00\x0b\x00\x03\x00\x06\x00\x06\x00\x05\x00\x10\x00\x11\x00\x12\x00\x24\x00\x51\x00\x04\x00\x01\x00\x3a\x00\x30\x00\x31\x00\x32\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x3e\x00\x05\x00\x04\x00\x29\x00\x04\x00\x04\x00\x02\x00\x0b\x00\x30\x00\x06\x00\x4d\x00\x0a\x00\x10\x00\x11\x00\x12\x00\x0e\x00\x38\x00\x06\x00\x01\x00\x06\x00\x51\x00\x03\x00\x3e\x00\x09\x00\x18\x00\x39\x00\x3a\x00\x3b\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x51\x00\x01\x00\x23\x00\x0c\x00\x29\x00\x3a\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x2c\x00\x2d\x00\x51\x00\x07\x00\x03\x00\x03\x00\x02\x00\x05\x00\x0f\x00\x0e\x00\x00\x00\x01\x00\x02\x00\x0b\x00\x04\x00\x2f\x00\x02\x00\x09\x00\x10\x00\x11\x00\x12\x00\x0f\x00\x51\x00\x4c\x00\x2f\x00\x0a\x00\x51\x00\x02\x00\x0c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x03\x00\x0b\x00\x05\x00\x51\x00\x29\x00\x03\x00\x51\x00\x08\x00\x0b\x00\x03\x00\x0d\x00\x05\x00\x02\x00\x0a\x00\x11\x00\x12\x00\x0c\x00\x0b\x00\x15\x00\x0d\x00\x51\x00\x03\x00\x01\x00\x11\x00\x12\x00\x1c\x00\x51\x00\x15\x00\x39\x00\x3a\x00\x3b\x00\x03\x00\x06\x00\x05\x00\x1c\x00\x04\x00\x04\x00\x1e\x00\x04\x00\x0b\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x11\x00\x12\x00\x04\x00\x13\x00\x15\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x51\x00\x1c\x00\x02\x00\x2f\x00\x51\x00\x04\x00\x0c\x00\x00\x00\x01\x00\x02\x00\x51\x00\x04\x00\x00\x00\x01\x00\x02\x00\x01\x00\x04\x00\x01\x00\x01\x00\x4d\x00\x4e\x00\x4f\x00\x02\x00\x51\x00\x01\x00\x07\x00\x02\x00\x01\x00\x4d\x00\x4e\x00\x4f\x00\x02\x00\x51\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x02\x00\x01\x00\x0a\x00\x01\x00\x51\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x4d\x00\x4e\x00\x4f\x00\x01\x00\x51\x00\x09\x00\x51\x00\x3e\x00\x25\x00\x00\x00\x01\x00\x02\x00\x43\x00\x04\x00\x39\x00\x3a\x00\x3b\x00\x04\x00\x3a\x00\x39\x00\x3a\x00\x4c\x00\x4d\x00\x04\x00\x03\x00\x07\x00\x39\x00\x51\x00\x04\x00\x48\x00\x49\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x39\x00\x04\x00\x18\x00\x04\x00\x3e\x00\x21\x00\x00\x00\x01\x00\x02\x00\x43\x00\x04\x00\x2b\x00\x28\x00\x23\x00\x2e\x00\x2f\x00\x2c\x00\x2d\x00\x4c\x00\x4d\x00\x01\x00\x10\x00\x2c\x00\x2d\x00\x04\x00\x39\x00\x3a\x00\x3b\x00\x00\x00\x01\x00\x02\x00\x04\x00\x04\x00\x01\x00\x01\x00\x51\x00\x1b\x00\x01\x00\x04\x00\x04\x00\x48\x00\x49\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x08\x00\x03\x00\x01\x00\x04\x00\x18\x00\x51\x00\x04\x00\x39\x00\x3a\x00\x3b\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x23\x00\x39\x00\x3a\x00\x3b\x00\x02\x00\x0c\x00\x0a\x00\x48\x00\x49\x00\x2c\x00\x2d\x00\x1b\x00\x1c\x00\x45\x00\x17\x00\x47\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x25\x00\x26\x00\x39\x00\x3a\x00\x3b\x00\x13\x00\x2b\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x45\x00\x0e\x00\x47\x00\x04\x00\x0c\x00\x51\x00\x04\x00\x3e\x00\x30\x00\x31\x00\x06\x00\x4d\x00\x43\x00\x44\x00\x51\x00\x46\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x3e\x00\x00\x00\x01\x00\x02\x00\x18\x00\x04\x00\x51\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x04\x00\x23\x00\x27\x00\x0e\x00\x29\x00\x2a\x00\x2b\x00\x3e\x00\x2d\x00\x04\x00\x2c\x00\x2d\x00\x43\x00\x44\x00\x07\x00\x46\x00\x35\x00\x36\x00\x37\x00\x38\x00\x06\x00\x0c\x00\x3b\x00\x13\x00\x3d\x00\x3e\x00\x3f\x00\x0a\x00\x41\x00\x30\x00\x31\x00\x07\x00\x4e\x00\x46\x00\x47\x00\x27\x00\x49\x00\x29\x00\x2a\x00\x2b\x00\x04\x00\x2d\x00\x51\x00\x3e\x00\x39\x00\x3a\x00\x51\x00\x04\x00\x0e\x00\x35\x00\x36\x00\x37\x00\x38\x00\x04\x00\x08\x00\x3b\x00\x39\x00\x3d\x00\x3e\x00\x3f\x00\x0a\x00\x41\x00\x2f\x00\x0e\x00\x04\x00\x10\x00\x46\x00\x47\x00\x01\x00\x49\x00\x0e\x00\x16\x00\x17\x00\x04\x00\x51\x00\x27\x00\x21\x00\x29\x00\x2a\x00\x2b\x00\x0a\x00\x2d\x00\x51\x00\x28\x00\x01\x00\x53\x00\x02\x00\x2c\x00\x2d\x00\x35\x00\x36\x00\x37\x00\x38\x00\x21\x00\x51\x00\x3b\x00\x02\x00\x3d\x00\x3e\x00\x3f\x00\x28\x00\x41\x00\x01\x00\x51\x00\x2c\x00\x2d\x00\x46\x00\x47\x00\x27\x00\x49\x00\x29\x00\x2a\x00\x2b\x00\x53\x00\x2d\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x51\x00\x04\x00\x35\x00\x36\x00\x37\x00\x38\x00\x03\x00\x03\x00\x3b\x00\x03\x00\x3d\x00\x3e\x00\x3f\x00\x03\x00\x41\x00\x08\x00\x18\x00\x53\x00\x19\x00\x46\x00\x47\x00\x18\x00\x49\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x0e\x00\x14\x00\x4d\x00\x30\x00\x23\x00\xff\xff\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x2c\x00\x2d\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x30\x00\xff\xff\x3e\x00\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x38\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x30\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x30\x00\x31\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x30\x00\x31\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x04\x00\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x21\x00\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x28\x00\xff\xff\xff\xff\xff\xff\x2c\x00\x2d\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x25\x00\xff\xff\x3e\x00\x28\x00\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x32\x00\x33\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\x42\x00\x3e\x00\xff\xff\xff\xff\xff\xff\x47\x00\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\x04\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\xff\xff\xff\xff\x3e\x00\x18\x00\xff\xff\xff\xff\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\x04\x00\xff\xff\xff\xff\x23\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x2c\x00\x2d\x00\xff\xff\xff\xff\xff\xff\x04\x00\xff\xff\x3e\x00\x18\x00\xff\xff\x04\x00\xff\xff\x43\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x23\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x18\x00\x36\x00\xff\xff\x2c\x00\x2d\x00\x18\x00\xff\xff\xff\xff\xff\xff\x3e\x00\xff\xff\x23\x00\xff\xff\xff\xff\xff\xff\xff\xff\x23\x00\xff\xff\xff\xff\xff\xff\x2c\x00\x2d\x00\xff\xff\xff\xff\xff\xff\x2c\x00\x2d\x00\x27\x00\xff\xff\x29\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x35\x00\x36\x00\x37\x00\x38\x00\xff\xff\xff\xff\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\xff\xff\x41\x00\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\xff\xff\x49\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"#
-
-happyTable :: HappyAddr
-happyTable = HappyA# "\x00\x00\x59\x00\x43\x00\x75\x00\x43\x00\x44\x00\x43\x00\x44\x00\x43\x00\x43\x00\x43\x00\x44\x00\x44\x00\x44\x00\x43\x00\x62\x00\x8c\x01\x44\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x07\x02\x86\x01\xac\x01\x86\x01\xcc\x00\x72\x00\x83\x01\x85\x00\x73\x00\x15\x00\xca\x00\x16\x00\xfd\x00\x08\x02\xec\x00\x83\x01\x54\x00\x17\x00\xcb\x00\x1e\x01\x83\x01\x08\x02\x18\x00\x19\x00\x1a\x00\xfd\x00\x00\x02\x1b\x00\x1e\x01\x8b\x00\x09\x02\x5d\x00\x1c\x00\x99\x01\x62\x00\xcf\x01\xd6\xff\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\xb7\x01\x23\x00\x30\x00\x2d\x00\x24\x00\x03\x02\x30\x00\x25\x00\x5d\x00\x61\x00\x79\x00\x62\x00\xd7\x01\x30\x00\x12\x00\x27\x00\x8d\x01\x45\x00\xf6\x00\x45\x00\x46\x00\x01\x02\xff\xff\xde\x00\xdf\x00\xe0\x00\x28\x00\x29\x00\x2d\x00\xe2\x00\xb8\x01\x2a\x00\x2b\x00\xfd\x00\x30\x00\x30\x00\x30\x00\x2c\x00\x30\x00\x30\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x15\x00\x30\x00\x16\x00\xd6\xff\x5e\x00\x36\x01\x5d\x00\x30\x00\x17\x00\x9e\x01\x30\x00\x9f\x01\xf2\x00\x18\x00\x19\x00\x1a\x00\x04\x01\xf3\x00\x1b\x00\x30\x00\x48\x00\x49\x00\x05\x01\x1c\x00\x5e\x00\xb3\x00\x30\x00\x88\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x71\x01\x23\x00\x3f\x01\x4a\x00\x24\x00\xcc\x00\x1f\xff\x25\x00\x98\x00\x1f\xff\x26\x00\x24\x01\x62\x00\x63\x00\x64\x00\x27\x00\xa5\x00\x54\x00\x54\x00\x86\x00\x25\x01\x68\x00\xf6\x01\x69\x00\x30\x00\xf7\x00\x28\x00\x29\x00\x7c\x01\x6a\x00\xf7\x01\x2a\x00\x2b\x00\x5e\x00\x5f\x00\x6b\x00\x6c\x00\x2c\x00\xe9\x01\x6d\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x15\x00\x6e\x00\x16\x00\x54\x00\x54\x00\x89\x00\x2d\x00\x83\x01\x17\x00\x30\x00\x24\x01\x95\x01\x4e\x01\x18\x00\x19\x00\x1a\x00\xed\x01\xa8\x01\x1b\x00\x25\x01\x01\x01\xa6\x01\x84\x01\x1c\x00\xa6\x00\xa7\x00\xc6\x00\xcc\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x36\x00\x23\x00\xde\x01\x37\x00\x24\x00\xc7\x00\x5b\x01\x25\x00\xaf\x00\x55\x00\x79\x00\xa9\x01\x56\x00\x2e\x01\xe3\x01\x27\x00\x06\x00\x2d\x00\x2e\x00\x12\x01\x30\x00\xe2\x01\xcc\x00\xae\x00\xfd\x01\xb0\x00\x28\x00\x29\x00\x59\x01\xa8\x01\xfe\x01\x2a\x00\x2b\x00\x39\x00\x62\x00\x63\x00\x64\x00\x2c\x00\x65\x00\xe5\x01\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x15\x00\x34\x00\x16\x00\x54\x00\x13\x01\x30\x00\x31\x00\x7f\x00\x17\x00\x54\x00\x12\x01\xb1\x01\xa9\x01\x18\x00\x19\x00\x1a\x00\x51\x01\xaf\x00\x1b\x00\x80\x01\x80\x00\x81\x00\xaa\x01\x1c\x00\x81\x01\x82\x00\x0f\x01\xcc\x01\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\xb0\x00\x23\x00\xae\x01\xb1\x00\x24\x00\x97\x00\x13\x01\x25\x00\x11\x01\xc9\x01\x26\x00\x98\x00\xb7\x00\x14\x01\x55\x00\x27\x00\xd0\x01\x56\x00\x4f\x01\xb8\x00\x15\x00\x55\x00\x50\x00\xb5\x01\x56\x00\x7a\x00\x28\x00\x29\x00\x17\x00\xb9\x00\x5d\x01\x2a\x00\x2b\x00\x18\x00\x19\x00\x1a\x00\xd8\x01\x2c\x00\x1b\x00\x83\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xec\x00\x7f\x00\x17\x01\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x68\x00\x23\x00\x69\x00\xb6\x01\x24\x00\x80\x00\x81\x00\x1a\x01\x6a\x00\x9b\x01\x89\x01\x28\x01\x54\x00\x36\x00\x6b\x00\x6c\x00\x37\x00\x29\x01\x6d\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x3e\x01\x6e\x00\x28\x00\x29\x00\xc0\x00\x1b\x01\x98\x00\x2a\x00\x2b\x00\xc1\x00\x62\x00\x63\x00\x64\x00\x2c\x00\x65\x00\xba\x01\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x68\x00\x97\x00\x69\x00\x33\x00\x54\x00\xf6\xff\x55\x00\x98\x00\x6a\x00\x56\x00\xbc\x00\x28\x01\x3e\xff\xd3\x01\x6b\x00\x6c\x00\x34\x00\x29\x01\x6d\x00\xb0\x01\x3e\xff\x3e\xff\x0b\x00\x83\x00\x3e\xff\x6e\x00\x88\x00\x0f\x01\xba\x01\x06\x00\x2d\x00\x2e\x00\x9c\x01\x30\x00\x17\x00\xc6\x01\x12\x00\x10\x01\x06\x01\x51\x00\x19\x00\x1a\x00\xec\x00\x11\x01\x54\x00\x06\x01\xb7\x00\xe0\x01\x62\x00\x63\x00\x64\x00\xe1\x01\x65\x00\xbc\x01\x56\x01\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x88\x01\x89\x01\x37\x00\x38\x00\x24\x00\x07\x01\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\xbb\x01\x07\x01\xac\x01\x06\x00\x2d\x00\x2e\x00\x15\x00\x30\x00\x50\x00\x08\x01\x65\x01\x19\xff\x55\x00\x6c\x01\x17\x00\x56\x00\x57\x00\x79\x00\x6e\x01\x18\x00\x19\x00\x1a\x00\x62\x00\x63\x00\x64\x00\x91\x01\x65\x00\x92\x01\x7e\x01\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xb7\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x88\x00\xb8\x00\xba\x01\x86\x00\x24\x00\x62\x00\x63\x00\x64\x00\x17\x00\x65\x00\xb2\x01\xb9\x00\xba\x00\x51\x00\x19\x00\x1a\x00\x55\x00\x12\x00\x86\x01\x56\x00\x7a\x00\x87\x01\xb2\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x8a\x01\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x8e\x01\xb3\x01\xe6\x01\xfe\x00\x24\x00\xb7\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x09\x01\x81\x01\xb3\x01\xb4\x01\xf0\x01\x88\x00\x50\x01\x50\x00\xf1\x01\xff\x01\x62\x00\x63\x00\x64\x00\x17\x00\x65\x00\x39\x01\x48\x01\xb7\x00\x51\x00\x19\x00\x1a\x00\x62\x00\x63\x00\x64\x00\x26\x01\x65\x00\x0b\x00\x0c\x00\x8d\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x15\x00\x12\x00\x50\x00\x83\x01\x24\x00\x62\x00\x63\x00\x64\x00\x17\x00\x65\x00\x24\x01\x4d\x01\xa4\x00\x18\x00\x19\x00\x1a\x00\xdb\x01\xac\x00\x97\x01\x25\x01\xbb\x00\x83\x01\x26\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\xb7\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\xdd\x01\x34\x01\x97\x01\xc4\x00\x24\x00\xb7\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xa0\x00\x26\x01\xa1\x00\xe3\x00\xf0\x01\x88\x00\xcc\x00\x50\x00\xf1\x01\xf2\x01\x62\x00\x63\x00\x64\x00\x17\x00\x65\x00\xf7\x00\xe4\x00\x64\x01\x51\x00\x19\x00\x1a\x00\x62\x00\x63\x00\x64\x00\xe5\x00\x65\x00\x0b\x00\x0c\x00\x8e\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x15\x00\x12\x00\x50\x00\xe6\x00\x24\x00\xff\x00\x83\x01\x83\x01\x17\x00\xe7\x00\xe8\x00\x3a\x00\xa5\x01\x18\x00\x19\x00\x1a\x00\x01\x01\x02\x01\x5c\x00\x96\x01\x9a\x01\x97\x01\x97\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x40\x01\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x1a\x01\x3b\x00\x4a\x00\x71\x00\x24\x00\x66\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x88\x00\x06\x02\x50\x00\x62\x00\x63\x00\x64\x00\x1b\x01\xa5\x00\x17\x00\xfd\x01\x0b\x02\x0c\x02\x05\x02\x51\x00\x19\x00\x1a\x00\x1c\x01\x30\x00\xf4\x01\xf5\x01\x90\x01\x0b\x00\x0c\x00\x8f\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x4f\x00\x12\x00\x50\x00\xfb\x01\x24\x00\xf7\x00\x97\x00\xf6\x01\x17\x00\x9c\x00\xf9\x01\x06\x00\x98\x00\x51\x00\x19\x00\x1a\x00\x99\x00\x4a\x01\xfa\x01\xec\x01\xed\x01\x30\x00\xef\x01\x12\x00\xf0\x01\xf8\x00\xa6\x00\xa7\x00\x58\x01\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x30\x00\xda\x01\xa0\x01\xdb\x01\x24\x00\x90\x01\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xfa\x00\xfb\x00\x30\x00\xe8\x01\xe9\x01\x15\x00\x71\x01\x50\x00\xc8\x01\xc9\x01\x62\x00\x63\x00\x64\x00\x17\x00\xa5\x00\xcb\x01\xce\x01\xd2\x01\x18\x00\x19\x00\x1a\x00\xcc\x01\x30\x00\xd3\x01\xd6\x01\xd5\x01\x30\x00\x94\x01\xd7\x01\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x68\x00\x95\x01\x69\x00\x30\x00\x24\x00\x99\x01\x30\x00\xa0\x01\x6a\x00\x68\x00\xac\x00\x69\x00\xa2\x01\x8c\x01\x6b\x00\x6c\x00\xa5\x01\x6a\x00\x6d\x00\xac\x00\x30\x00\xae\x01\xbf\x01\x6b\x00\x6c\x00\x6e\x00\x30\x00\x6d\x00\xa6\x00\xa7\x00\xad\x00\x68\x00\x55\x01\x69\x00\x6e\x00\xbe\x01\xc3\x01\xc0\x01\x53\x01\x6a\x00\x06\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x6b\x00\x6c\x00\x54\x01\x56\x01\x6d\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x30\x00\x6e\x00\x60\x01\x5f\x01\x30\x00\x6b\x01\x6c\x01\x62\x00\x63\x00\x64\x00\x30\x00\xa5\x00\x62\x00\x63\x00\x64\x00\x6e\x01\xa5\x00\x70\x01\x72\x01\x06\x00\x2d\x00\x2e\x00\x73\x01\x30\x00\x75\x01\x74\x01\x76\x01\x77\x01\x06\x00\x2d\x00\x2e\x00\x78\x01\x30\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x7b\x01\x7d\x01\x7c\x01\x7e\x01\x30\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x60\x01\x11\x00\x06\x00\x2d\x00\x2e\x00\x83\x01\x30\x00\x8e\x01\x30\x00\x12\x00\x93\x01\x62\x00\x63\x00\x64\x00\x13\x00\xc5\x00\xa6\x00\xa7\x00\xc6\x00\xf7\x00\x90\x01\xa6\x00\x67\x01\x61\x01\xc4\x01\xf7\x00\xec\x00\xf6\x00\xf4\x00\x30\x00\x1f\x01\xc7\x00\x69\x01\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x60\x01\x11\x00\x62\x00\x63\x00\x64\x00\xf5\x00\xa5\x00\xf8\x00\x22\x01\x12\x00\xff\x00\x62\x00\x63\x00\x64\x00\x13\x00\xa5\x00\x55\x00\x78\x01\xf9\x00\x56\x00\x7a\x00\x01\x01\x02\x01\x61\x01\x62\x01\x23\x01\xa1\x00\xfa\x00\xfb\x00\x2a\x01\xa6\x00\xa7\x00\xc6\x00\x62\x00\x63\x00\x64\x00\xf7\x00\xa5\x00\x2b\x01\x2c\x01\x30\x00\x39\x01\x33\x01\x31\x01\x32\x01\xc7\x00\xc8\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x34\x01\x36\x01\x3c\x01\x16\x01\xf8\x00\x30\x00\x3b\x01\xa6\x00\xa7\x00\xc6\x00\x06\x00\x07\x00\x08\x00\x09\x00\x99\x00\xfd\x00\xa6\x00\xa7\x00\xa8\x00\x3d\x01\x40\x01\x43\x01\xc7\x00\x20\x01\xfa\x00\xfb\x00\x0f\x01\x17\x01\xa9\x00\x44\x01\x57\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x18\x01\x19\x01\xa6\x00\xa7\x00\xa8\x00\x42\x01\x11\x01\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x46\x01\x11\x00\xa9\x00\x45\x01\xaa\x00\x03\x02\x4a\x01\x30\x00\xf7\x00\x12\x00\x0b\x00\x59\x00\x4d\x01\x06\x00\x13\x00\x6f\x00\x30\x00\x47\x01\x8c\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x12\x00\x62\x00\x63\x00\x64\x00\xf8\x00\xa5\x00\x30\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x6e\x00\x11\x00\xfc\x01\x05\x01\xce\x00\x85\x00\xcf\x00\xd0\x00\xd1\x00\x12\x00\xd2\x00\x96\x00\xfa\x00\xfb\x00\x13\x00\x6f\x00\x9b\x00\x70\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\x9c\x00\x9f\x00\xd7\x00\xa2\x00\xd8\x00\xd9\x00\xda\x00\xa3\x00\xdb\x00\x0b\x00\x53\x00\xa4\x00\x2d\x00\xdc\x00\xdd\x00\xce\x00\xde\x00\xcf\x00\xd0\x00\xd1\x00\xdd\x01\xd2\x00\x30\x00\x12\x00\xa6\x00\x68\x01\x30\x00\xf7\x00\xb3\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xec\x00\xb5\x00\xd7\x00\xb7\x00\xd8\x00\xd9\x00\xda\x00\xb6\x00\xdb\x00\xbe\x00\xed\x00\xf7\x00\xee\x00\xdc\x00\xdd\x00\xbf\x00\xde\x00\x85\x00\xef\x00\xf0\x00\xe5\x01\x30\x00\xce\x00\xff\x00\xcf\x00\xd0\x00\xd1\x00\x98\x00\xd2\x00\x30\x00\x79\x01\xe2\x00\xff\xff\xea\x00\x01\x01\x02\x01\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xff\x00\x30\x00\xd7\x00\xeb\x00\xd8\x00\xd9\x00\xda\x00\x00\x01\xdb\x00\x43\x00\x30\x00\x01\x01\x02\x01\xdc\x00\xdd\x00\xce\x00\xde\x00\xcf\x00\xd0\x00\xd1\x00\xff\xff\xd2\x00\x06\x00\x07\x00\x08\x00\x09\x00\x75\x00\x30\x00\xf7\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\x4c\x00\x52\x00\xd7\x00\x53\x00\xd8\x00\xd9\x00\xda\x00\x5b\x00\xdb\x00\x7c\x00\x7d\x00\xff\xff\x7e\x00\xdc\x00\xdd\x00\xf8\x00\xde\x00\x06\x00\x07\x00\x08\x00\x09\x00\x75\x00\x85\x00\x86\x00\x06\x00\x33\x00\x0a\x01\x00\x00\x00\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x00\x00\xfa\x00\xfb\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x76\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x5e\x00\xc6\x01\x13\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x76\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x9c\x00\x00\x00\x12\x00\x00\x00\x00\x00\x5e\x00\x77\x00\x13\x00\x9d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc2\x00\x11\x00\x63\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x4d\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc2\x00\x11\x00\x1f\x01\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc2\x00\x11\x00\xc3\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc2\x00\x11\x00\xcb\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x06\x00\x07\x00\x08\x00\x09\x00\x4c\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xea\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x59\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xe1\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x83\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc3\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\xf7\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xce\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\xff\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x0d\x01\x00\x00\x00\x00\x00\x00\x01\x01\x02\x01\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xa2\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x3d\x00\x00\x00\x12\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x40\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xa3\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x41\x00\x12\x00\x00\x00\x00\x00\x00\x00\x42\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xa7\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xaf\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc0\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc1\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x5a\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x5c\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x66\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x2c\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x2d\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x2f\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x37\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x45\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x4b\x01\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x8c\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x90\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x94\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xc1\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x76\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\xf7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x5b\x00\x11\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x00\x00\x00\x00\x12\x00\xf8\x00\x00\x00\x00\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\xf7\x00\x00\x00\x00\x00\x0b\x01\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\xfa\x00\xfb\x00\x00\x00\x00\x00\x00\x00\xf7\x00\x00\x00\x12\x00\xf8\x00\x00\x00\xf7\x00\x00\x00\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x01\x0b\x00\x0c\x00\x91\x00\x92\x00\x93\x00\xf8\x00\x11\x00\x00\x00\xfa\x00\xfb\x00\xf8\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x0e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\xfa\x00\xfb\x00\x00\x00\x00\x00\x00\x00\xfa\x00\xfb\x00\xce\x00\x00\x00\xcf\x00\xd0\x00\xd1\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\x00\x00\x00\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\xda\x00\x00\x00\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdc\x00\xdd\x00\x00\x00\xde\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 (4, 264) [
- (4 , happyReduce_4),
- (5 , happyReduce_5),
- (6 , happyReduce_6),
- (7 , happyReduce_7),
- (8 , happyReduce_8),
- (9 , happyReduce_9),
- (10 , happyReduce_10),
- (11 , happyReduce_11),
- (12 , happyReduce_12),
- (13 , happyReduce_13),
- (14 , happyReduce_14),
- (15 , happyReduce_15),
- (16 , happyReduce_16),
- (17 , happyReduce_17),
- (18 , happyReduce_18),
- (19 , happyReduce_19),
- (20 , happyReduce_20),
- (21 , happyReduce_21),
- (22 , happyReduce_22),
- (23 , happyReduce_23),
- (24 , happyReduce_24),
- (25 , happyReduce_25),
- (26 , happyReduce_26),
- (27 , happyReduce_27),
- (28 , happyReduce_28),
- (29 , happyReduce_29),
- (30 , happyReduce_30),
- (31 , happyReduce_31),
- (32 , happyReduce_32),
- (33 , happyReduce_33),
- (34 , happyReduce_34),
- (35 , happyReduce_35),
- (36 , happyReduce_36),
- (37 , happyReduce_37),
- (38 , happyReduce_38),
- (39 , happyReduce_39),
- (40 , happyReduce_40),
- (41 , happyReduce_41),
- (42 , happyReduce_42),
- (43 , happyReduce_43),
- (44 , happyReduce_44),
- (45 , happyReduce_45),
- (46 , happyReduce_46),
- (47 , happyReduce_47),
- (48 , happyReduce_48),
- (49 , happyReduce_49),
- (50 , happyReduce_50),
- (51 , happyReduce_51),
- (52 , happyReduce_52),
- (53 , happyReduce_53),
- (54 , happyReduce_54),
- (55 , happyReduce_55),
- (56 , happyReduce_56),
- (57 , happyReduce_57),
- (58 , happyReduce_58),
- (59 , happyReduce_59),
- (60 , happyReduce_60),
- (61 , happyReduce_61),
- (62 , happyReduce_62),
- (63 , happyReduce_63),
- (64 , happyReduce_64),
- (65 , happyReduce_65),
- (66 , happyReduce_66),
- (67 , happyReduce_67),
- (68 , happyReduce_68),
- (69 , happyReduce_69),
- (70 , happyReduce_70),
- (71 , happyReduce_71),
- (72 , happyReduce_72),
- (73 , happyReduce_73),
- (74 , happyReduce_74),
- (75 , happyReduce_75),
- (76 , happyReduce_76),
- (77 , happyReduce_77),
- (78 , happyReduce_78),
- (79 , happyReduce_79),
- (80 , happyReduce_80),
- (81 , happyReduce_81),
- (82 , happyReduce_82),
- (83 , happyReduce_83),
- (84 , happyReduce_84),
- (85 , happyReduce_85),
- (86 , happyReduce_86),
- (87 , happyReduce_87),
- (88 , happyReduce_88),
- (89 , happyReduce_89),
- (90 , happyReduce_90),
- (91 , happyReduce_91),
- (92 , happyReduce_92),
- (93 , happyReduce_93),
- (94 , happyReduce_94),
- (95 , happyReduce_95),
- (96 , happyReduce_96),
- (97 , happyReduce_97),
- (98 , happyReduce_98),
- (99 , happyReduce_99),
- (100 , happyReduce_100),
- (101 , happyReduce_101),
- (102 , happyReduce_102),
- (103 , happyReduce_103),
- (104 , happyReduce_104),
- (105 , happyReduce_105),
- (106 , happyReduce_106),
- (107 , happyReduce_107),
- (108 , happyReduce_108),
- (109 , happyReduce_109),
- (110 , happyReduce_110),
- (111 , happyReduce_111),
- (112 , happyReduce_112),
- (113 , happyReduce_113),
- (114 , happyReduce_114),
- (115 , happyReduce_115),
- (116 , happyReduce_116),
- (117 , happyReduce_117),
- (118 , happyReduce_118),
- (119 , happyReduce_119),
- (120 , happyReduce_120),
- (121 , happyReduce_121),
- (122 , happyReduce_122),
- (123 , happyReduce_123),
- (124 , happyReduce_124),
- (125 , happyReduce_125),
- (126 , happyReduce_126),
- (127 , happyReduce_127),
- (128 , happyReduce_128),
- (129 , happyReduce_129),
- (130 , happyReduce_130),
- (131 , happyReduce_131),
- (132 , happyReduce_132),
- (133 , happyReduce_133),
- (134 , happyReduce_134),
- (135 , happyReduce_135),
- (136 , happyReduce_136),
- (137 , happyReduce_137),
- (138 , happyReduce_138),
- (139 , happyReduce_139),
- (140 , happyReduce_140),
- (141 , happyReduce_141),
- (142 , happyReduce_142),
- (143 , happyReduce_143),
- (144 , happyReduce_144),
- (145 , happyReduce_145),
- (146 , happyReduce_146),
- (147 , happyReduce_147),
- (148 , happyReduce_148),
- (149 , happyReduce_149),
- (150 , happyReduce_150),
- (151 , happyReduce_151),
- (152 , happyReduce_152),
- (153 , happyReduce_153),
- (154 , happyReduce_154),
- (155 , happyReduce_155),
- (156 , happyReduce_156),
- (157 , happyReduce_157),
- (158 , happyReduce_158),
- (159 , happyReduce_159),
- (160 , happyReduce_160),
- (161 , happyReduce_161),
- (162 , happyReduce_162),
- (163 , happyReduce_163),
- (164 , happyReduce_164),
- (165 , happyReduce_165),
- (166 , happyReduce_166),
- (167 , happyReduce_167),
- (168 , happyReduce_168),
- (169 , happyReduce_169),
- (170 , happyReduce_170),
- (171 , happyReduce_171),
- (172 , happyReduce_172),
- (173 , happyReduce_173),
- (174 , happyReduce_174),
- (175 , happyReduce_175),
- (176 , happyReduce_176),
- (177 , happyReduce_177),
- (178 , happyReduce_178),
- (179 , happyReduce_179),
- (180 , happyReduce_180),
- (181 , happyReduce_181),
- (182 , happyReduce_182),
- (183 , happyReduce_183),
- (184 , happyReduce_184),
- (185 , happyReduce_185),
- (186 , happyReduce_186),
- (187 , happyReduce_187),
- (188 , happyReduce_188),
- (189 , happyReduce_189),
- (190 , happyReduce_190),
- (191 , happyReduce_191),
- (192 , happyReduce_192),
- (193 , happyReduce_193),
- (194 , happyReduce_194),
- (195 , happyReduce_195),
- (196 , happyReduce_196),
- (197 , happyReduce_197),
- (198 , happyReduce_198),
- (199 , happyReduce_199),
- (200 , happyReduce_200),
- (201 , happyReduce_201),
- (202 , happyReduce_202),
- (203 , happyReduce_203),
- (204 , happyReduce_204),
- (205 , happyReduce_205),
- (206 , happyReduce_206),
- (207 , happyReduce_207),
- (208 , happyReduce_208),
- (209 , happyReduce_209),
- (210 , happyReduce_210),
- (211 , happyReduce_211),
- (212 , happyReduce_212),
- (213 , happyReduce_213),
- (214 , happyReduce_214),
- (215 , happyReduce_215),
- (216 , happyReduce_216),
- (217 , happyReduce_217),
- (218 , happyReduce_218),
- (219 , happyReduce_219),
- (220 , happyReduce_220),
- (221 , happyReduce_221),
- (222 , happyReduce_222),
- (223 , happyReduce_223),
- (224 , happyReduce_224),
- (225 , happyReduce_225),
- (226 , happyReduce_226),
- (227 , happyReduce_227),
- (228 , happyReduce_228),
- (229 , happyReduce_229),
- (230 , happyReduce_230),
- (231 , happyReduce_231),
- (232 , happyReduce_232),
- (233 , happyReduce_233),
- (234 , happyReduce_234),
- (235 , happyReduce_235),
- (236 , happyReduce_236),
- (237 , happyReduce_237),
- (238 , happyReduce_238),
- (239 , happyReduce_239),
- (240 , happyReduce_240),
- (241 , happyReduce_241),
- (242 , happyReduce_242),
- (243 , happyReduce_243),
- (244 , happyReduce_244),
- (245 , happyReduce_245),
- (246 , happyReduce_246),
- (247 , happyReduce_247),
- (248 , happyReduce_248),
- (249 , happyReduce_249),
- (250 , happyReduce_250),
- (251 , happyReduce_251),
- (252 , happyReduce_252),
- (253 , happyReduce_253),
- (254 , happyReduce_254),
- (255 , happyReduce_255),
- (256 , happyReduce_256),
- (257 , happyReduce_257),
- (258 , happyReduce_258),
- (259 , happyReduce_259),
- (260 , happyReduce_260),
- (261 , happyReduce_261),
- (262 , happyReduce_262),
- (263 , happyReduce_263),
- (264 , happyReduce_264)
- ]
-
-happy_n_terms = 84 :: Int
-happy_n_nonterms = 84 :: Int
-
-happyReduce_4 = happySpecReduce_1 0# happyReduction_4
-happyReduction_4 happy_x_1
- = case happyOutTok happy_x_1 of { (PT _ (TI happy_var_1)) ->
- happyIn7
- ((read happy_var_1) :: Integer
- )}
-
-happyReduce_5 = happySpecReduce_1 1# happyReduction_5
-happyReduction_5 happy_x_1
- = case happyOutTok happy_x_1 of { (PT _ (TL happy_var_1)) ->
- happyIn8
- (happy_var_1
- )}
-
-happyReduce_6 = happySpecReduce_1 2# happyReduction_6
-happyReduction_6 happy_x_1
- = case happyOutTok happy_x_1 of { (PT _ (TD happy_var_1)) ->
- happyIn9
- ((read happy_var_1) :: Double
- )}
-
-happyReduce_7 = happySpecReduce_1 3# happyReduction_7
-happyReduction_7 happy_x_1
- = case happyOutTok happy_x_1 of { (PT _ (T_LString happy_var_1)) ->
- happyIn10
- (LString (happy_var_1)
- )}
-
-happyReduce_8 = happySpecReduce_1 4# happyReduction_8
-happyReduction_8 happy_x_1
- = case happyOutTok happy_x_1 of { happy_var_1 ->
- happyIn11
- (PIdent (mkPosToken happy_var_1)
- )}
-
-happyReduce_9 = happySpecReduce_1 5# happyReduction_9
-happyReduction_9 happy_x_1
- = case happyOut13 happy_x_1 of { happy_var_1 ->
- happyIn12
- (Gr (reverse happy_var_1)
- )}
-
-happyReduce_10 = happySpecReduce_0 6# happyReduction_10
-happyReduction_10 = happyIn13
- ([]
- )
-
-happyReduce_11 = happySpecReduce_2 6# happyReduction_11
-happyReduction_11 happy_x_2
- happy_x_1
- = case happyOut13 happy_x_1 of { happy_var_1 ->
- case happyOut14 happy_x_2 of { happy_var_2 ->
- happyIn13
- (flip (:) happy_var_1 happy_var_2
- )}}
-
-happyReduce_12 = happySpecReduce_2 7# happyReduction_12
-happyReduction_12 happy_x_2
- happy_x_1
- = case happyOut14 happy_x_1 of { happy_var_1 ->
- happyIn14
- (happy_var_1
- )}
-
-happyReduce_13 = happyReduce 10# 7# happyReduction_13
-happyReduction_13 (happy_x_10 `HappyStk`
- happy_x_9 `HappyStk`
- happy_x_8 `HappyStk`
- happy_x_7 `HappyStk`
- happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_7 of { happy_var_7 ->
- case happyOut16 happy_x_9 of { happy_var_9 ->
- happyIn14
- (MMain happy_var_2 happy_var_7 happy_var_9
- ) `HappyStk` happyRest}}}
-
-happyReduce_14 = happyReduce 4# 7# happyReduction_14
-happyReduction_14 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut27 happy_x_1 of { happy_var_1 ->
- case happyOut20 happy_x_2 of { happy_var_2 ->
- case happyOut21 happy_x_4 of { happy_var_4 ->
- happyIn14
- (MModule happy_var_1 happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}}
-
-happyReduce_15 = happySpecReduce_3 8# happyReduction_15
-happyReduction_15 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut17 happy_x_3 of { happy_var_3 ->
- happyIn15
- (ConcSpec happy_var_1 happy_var_3
- )}}
-
-happyReduce_16 = happySpecReduce_0 9# happyReduction_16
-happyReduction_16 = happyIn16
- ([]
- )
-
-happyReduce_17 = happySpecReduce_1 9# happyReduction_17
-happyReduction_17 happy_x_1
- = case happyOut15 happy_x_1 of { happy_var_1 ->
- happyIn16
- ((:[]) happy_var_1
- )}
-
-happyReduce_18 = happySpecReduce_3 9# happyReduction_18
-happyReduction_18 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut15 happy_x_1 of { happy_var_1 ->
- case happyOut16 happy_x_3 of { happy_var_3 ->
- happyIn16
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_19 = happySpecReduce_2 10# happyReduction_19
-happyReduction_19 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut18 happy_x_2 of { happy_var_2 ->
- happyIn17
- (ConcExp happy_var_1 (reverse happy_var_2)
- )}}
-
-happyReduce_20 = happySpecReduce_0 11# happyReduction_20
-happyReduction_20 = happyIn18
- ([]
- )
-
-happyReduce_21 = happySpecReduce_2 11# happyReduction_21
-happyReduction_21 happy_x_2
- happy_x_1
- = case happyOut18 happy_x_1 of { happy_var_1 ->
- case happyOut19 happy_x_2 of { happy_var_2 ->
- happyIn18
- (flip (:) happy_var_1 happy_var_2
- )}}
-
-happyReduce_22 = happyReduce 5# 12# happyReduction_22
-happyReduction_22 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut26 happy_x_4 of { happy_var_4 ->
- happyIn19
- (TransferIn happy_var_4
- ) `HappyStk` happyRest}
-
-happyReduce_23 = happyReduce 5# 12# happyReduction_23
-happyReduction_23 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut26 happy_x_4 of { happy_var_4 ->
- happyIn19
- (TransferOut happy_var_4
- ) `HappyStk` happyRest}
-
-happyReduce_24 = happySpecReduce_2 13# happyReduction_24
-happyReduction_24 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn20
- (MTAbstract happy_var_2
- )}
-
-happyReduce_25 = happySpecReduce_2 13# happyReduction_25
-happyReduction_25 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn20
- (MTResource happy_var_2
- )}
-
-happyReduce_26 = happySpecReduce_2 13# happyReduction_26
-happyReduction_26 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn20
- (MTInterface happy_var_2
- )}
-
-happyReduce_27 = happyReduce 4# 13# happyReduction_27
-happyReduction_27 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_4 of { happy_var_4 ->
- happyIn20
- (MTConcrete happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_28 = happyReduce 4# 13# happyReduction_28
-happyReduction_28 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_4 of { happy_var_4 ->
- happyIn20
- (MTInstance happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_29 = happyReduce 6# 13# happyReduction_29
-happyReduction_29 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut26 happy_x_4 of { happy_var_4 ->
- case happyOut26 happy_x_6 of { happy_var_6 ->
- happyIn20
- (MTTransfer happy_var_2 happy_var_4 happy_var_6
- ) `HappyStk` happyRest}}}
-
-happyReduce_30 = happyReduce 5# 14# happyReduction_30
-happyReduction_30 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut23 happy_x_1 of { happy_var_1 ->
- case happyOut25 happy_x_2 of { happy_var_2 ->
- case happyOut22 happy_x_4 of { happy_var_4 ->
- happyIn21
- (MBody happy_var_1 happy_var_2 (reverse happy_var_4)
- ) `HappyStk` happyRest}}}
-
-happyReduce_31 = happySpecReduce_1 14# happyReduction_31
-happyReduction_31 happy_x_1
- = case happyOut29 happy_x_1 of { happy_var_1 ->
- happyIn21
- (MNoBody happy_var_1
- )}
-
-happyReduce_32 = happySpecReduce_3 14# happyReduction_32
-happyReduction_32 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut30 happy_x_1 of { happy_var_1 ->
- case happyOut24 happy_x_3 of { happy_var_3 ->
- happyIn21
- (MWith happy_var_1 happy_var_3
- )}}
-
-happyReduce_33 = happyReduce 8# 14# happyReduction_33
-happyReduction_33 (happy_x_8 `HappyStk`
- happy_x_7 `HappyStk`
- happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut30 happy_x_1 of { happy_var_1 ->
- case happyOut24 happy_x_3 of { happy_var_3 ->
- case happyOut25 happy_x_5 of { happy_var_5 ->
- case happyOut22 happy_x_7 of { happy_var_7 ->
- happyIn21
- (MWithBody happy_var_1 happy_var_3 happy_var_5 (reverse happy_var_7)
- ) `HappyStk` happyRest}}}}
-
-happyReduce_34 = happyReduce 5# 14# happyReduction_34
-happyReduction_34 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut29 happy_x_1 of { happy_var_1 ->
- case happyOut30 happy_x_3 of { happy_var_3 ->
- case happyOut24 happy_x_5 of { happy_var_5 ->
- happyIn21
- (MWithE happy_var_1 happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}}
-
-happyReduce_35 = happyReduce 10# 14# happyReduction_35
-happyReduction_35 (happy_x_10 `HappyStk`
- happy_x_9 `HappyStk`
- happy_x_8 `HappyStk`
- happy_x_7 `HappyStk`
- happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut29 happy_x_1 of { happy_var_1 ->
- case happyOut30 happy_x_3 of { happy_var_3 ->
- case happyOut24 happy_x_5 of { happy_var_5 ->
- case happyOut25 happy_x_7 of { happy_var_7 ->
- case happyOut22 happy_x_9 of { happy_var_9 ->
- happyIn21
- (MWithEBody happy_var_1 happy_var_3 happy_var_5 happy_var_7 (reverse happy_var_9)
- ) `HappyStk` happyRest}}}}}
-
-happyReduce_36 = happySpecReduce_2 14# happyReduction_36
-happyReduction_36 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn21
- (MReuse happy_var_2
- )}
-
-happyReduce_37 = happySpecReduce_2 14# happyReduction_37
-happyReduction_37 happy_x_2
- happy_x_1
- = case happyOut29 happy_x_2 of { happy_var_2 ->
- happyIn21
- (MUnion happy_var_2
- )}
-
-happyReduce_38 = happySpecReduce_0 15# happyReduction_38
-happyReduction_38 = happyIn22
- ([]
- )
-
-happyReduce_39 = happySpecReduce_2 15# happyReduction_39
-happyReduction_39 happy_x_2
- happy_x_1
- = case happyOut22 happy_x_1 of { happy_var_1 ->
- case happyOut32 happy_x_2 of { happy_var_2 ->
- happyIn22
- (flip (:) happy_var_1 happy_var_2
- )}}
-
-happyReduce_40 = happySpecReduce_2 16# happyReduction_40
-happyReduction_40 happy_x_2
- happy_x_1
- = case happyOut29 happy_x_1 of { happy_var_1 ->
- happyIn23
- (Ext happy_var_1
- )}
-
-happyReduce_41 = happySpecReduce_0 16# happyReduction_41
-happyReduction_41 = happyIn23
- (NoExt
- )
-
-happyReduce_42 = happySpecReduce_0 17# happyReduction_42
-happyReduction_42 = happyIn24
- ([]
- )
-
-happyReduce_43 = happySpecReduce_1 17# happyReduction_43
-happyReduction_43 happy_x_1
- = case happyOut26 happy_x_1 of { happy_var_1 ->
- happyIn24
- ((:[]) happy_var_1
- )}
-
-happyReduce_44 = happySpecReduce_3 17# happyReduction_44
-happyReduction_44 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut26 happy_x_1 of { happy_var_1 ->
- case happyOut24 happy_x_3 of { happy_var_3 ->
- happyIn24
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_45 = happySpecReduce_0 18# happyReduction_45
-happyReduction_45 = happyIn25
- (NoOpens
- )
-
-happyReduce_46 = happySpecReduce_3 18# happyReduction_46
-happyReduction_46 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut24 happy_x_2 of { happy_var_2 ->
- happyIn25
- (OpenIn happy_var_2
- )}
-
-happyReduce_47 = happySpecReduce_1 19# happyReduction_47
-happyReduction_47 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn26
- (OName happy_var_1
- )}
-
-happyReduce_48 = happyReduce 4# 19# happyReduction_48
-happyReduction_48 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut28 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- happyIn26
- (OQualQO happy_var_2 happy_var_3
- ) `HappyStk` happyRest}}
-
-happyReduce_49 = happyReduce 6# 19# happyReduction_49
-happyReduction_49 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut28 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- case happyOut11 happy_x_5 of { happy_var_5 ->
- happyIn26
- (OQual happy_var_2 happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}}
-
-happyReduce_50 = happySpecReduce_0 20# happyReduction_50
-happyReduction_50 = happyIn27
- (CMCompl
- )
-
-happyReduce_51 = happySpecReduce_1 20# happyReduction_51
-happyReduction_51 happy_x_1
- = happyIn27
- (CMIncompl
- )
-
-happyReduce_52 = happySpecReduce_0 21# happyReduction_52
-happyReduction_52 = happyIn28
- (QOCompl
- )
-
-happyReduce_53 = happySpecReduce_1 21# happyReduction_53
-happyReduction_53 happy_x_1
- = happyIn28
- (QOIncompl
- )
-
-happyReduce_54 = happySpecReduce_1 21# happyReduction_54
-happyReduction_54 happy_x_1
- = happyIn28
- (QOInterface
- )
-
-happyReduce_55 = happySpecReduce_0 22# happyReduction_55
-happyReduction_55 = happyIn29
- ([]
- )
-
-happyReduce_56 = happySpecReduce_1 22# happyReduction_56
-happyReduction_56 happy_x_1
- = case happyOut30 happy_x_1 of { happy_var_1 ->
- happyIn29
- ((:[]) happy_var_1
- )}
-
-happyReduce_57 = happySpecReduce_3 22# happyReduction_57
-happyReduction_57 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut30 happy_x_1 of { happy_var_1 ->
- case happyOut29 happy_x_3 of { happy_var_3 ->
- happyIn29
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_58 = happySpecReduce_1 23# happyReduction_58
-happyReduction_58 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn30
- (IAll happy_var_1
- )}
-
-happyReduce_59 = happyReduce 4# 23# happyReduction_59
-happyReduction_59 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut50 happy_x_3 of { happy_var_3 ->
- happyIn30
- (ISome happy_var_1 happy_var_3
- ) `HappyStk` happyRest}}
-
-happyReduce_60 = happyReduce 5# 23# happyReduction_60
-happyReduction_60 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut50 happy_x_4 of { happy_var_4 ->
- happyIn30
- (IMinus happy_var_1 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_61 = happySpecReduce_3 24# happyReduction_61
-happyReduction_61 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut52 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn31
- (DDecl happy_var_1 happy_var_3
- )}}
-
-happyReduce_62 = happySpecReduce_3 24# happyReduction_62
-happyReduction_62 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut52 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn31
- (DDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_63 = happyReduce 4# 24# happyReduction_63
-happyReduction_63 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut51 happy_x_1 of { happy_var_1 ->
- case happyOut71 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn31
- (DPatt happy_var_1 happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}}
-
-happyReduce_64 = happyReduce 5# 24# happyReduction_64
-happyReduction_64 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut52 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- case happyOut60 happy_x_5 of { happy_var_5 ->
- happyIn31
- (DFull happy_var_1 happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}}
-
-happyReduce_65 = happySpecReduce_2 25# happyReduction_65
-happyReduction_65 happy_x_2
- happy_x_1
- = case happyOut43 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefCat happy_var_2
- )}
-
-happyReduce_66 = happySpecReduce_2 25# happyReduction_66
-happyReduction_66 happy_x_2
- happy_x_1
- = case happyOut44 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefFun happy_var_2
- )}
-
-happyReduce_67 = happySpecReduce_2 25# happyReduction_67
-happyReduction_67 happy_x_2
- happy_x_1
- = case happyOut44 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefFunData happy_var_2
- )}
-
-happyReduce_68 = happySpecReduce_2 25# happyReduction_68
-happyReduction_68 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefDef happy_var_2
- )}
-
-happyReduce_69 = happySpecReduce_2 25# happyReduction_69
-happyReduction_69 happy_x_2
- happy_x_1
- = case happyOut45 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefData happy_var_2
- )}
-
-happyReduce_70 = happySpecReduce_2 25# happyReduction_70
-happyReduction_70 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefTrans happy_var_2
- )}
-
-happyReduce_71 = happySpecReduce_2 25# happyReduction_71
-happyReduction_71 happy_x_2
- happy_x_1
- = case happyOut46 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefPar happy_var_2
- )}
-
-happyReduce_72 = happySpecReduce_2 25# happyReduction_72
-happyReduction_72 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefOper happy_var_2
- )}
-
-happyReduce_73 = happySpecReduce_2 25# happyReduction_73
-happyReduction_73 happy_x_2
- happy_x_1
- = case happyOut47 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefLincat happy_var_2
- )}
-
-happyReduce_74 = happySpecReduce_2 25# happyReduction_74
-happyReduction_74 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefLindef happy_var_2
- )}
-
-happyReduce_75 = happySpecReduce_2 25# happyReduction_75
-happyReduction_75 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefLin happy_var_2
- )}
-
-happyReduce_76 = happySpecReduce_3 25# happyReduction_76
-happyReduction_76 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut47 happy_x_3 of { happy_var_3 ->
- happyIn32
- (DefPrintCat happy_var_3
- )}
-
-happyReduce_77 = happySpecReduce_3 25# happyReduction_77
-happyReduction_77 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut47 happy_x_3 of { happy_var_3 ->
- happyIn32
- (DefPrintFun happy_var_3
- )}
-
-happyReduce_78 = happySpecReduce_2 25# happyReduction_78
-happyReduction_78 happy_x_2
- happy_x_1
- = case happyOut48 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefFlag happy_var_2
- )}
-
-happyReduce_79 = happySpecReduce_2 25# happyReduction_79
-happyReduction_79 happy_x_2
- happy_x_1
- = case happyOut47 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefPrintOld happy_var_2
- )}
-
-happyReduce_80 = happySpecReduce_2 25# happyReduction_80
-happyReduction_80 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefLintype happy_var_2
- )}
-
-happyReduce_81 = happySpecReduce_2 25# happyReduction_81
-happyReduction_81 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefPattern happy_var_2
- )}
-
-happyReduce_82 = happyReduce 7# 25# happyReduction_82
-happyReduction_82 (happy_x_7 `HappyStk`
- happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut22 happy_x_5 of { happy_var_5 ->
- happyIn32
- (DefPackage happy_var_2 (reverse happy_var_5)
- ) `HappyStk` happyRest}}
-
-happyReduce_83 = happySpecReduce_2 25# happyReduction_83
-happyReduction_83 happy_x_2
- happy_x_1
- = case happyOut42 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefVars happy_var_2
- )}
-
-happyReduce_84 = happySpecReduce_3 25# happyReduction_84
-happyReduction_84 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn32
- (DefTokenizer happy_var_2
- )}
-
-happyReduce_85 = happySpecReduce_2 26# happyReduction_85
-happyReduction_85 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut86 happy_x_2 of { happy_var_2 ->
- happyIn33
- (SimpleCatDef happy_var_1 (reverse happy_var_2)
- )}}
-
-happyReduce_86 = happyReduce 4# 26# happyReduction_86
-happyReduction_86 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut86 happy_x_3 of { happy_var_3 ->
- happyIn33
- (ListCatDef happy_var_2 (reverse happy_var_3)
- ) `HappyStk` happyRest}}
-
-happyReduce_87 = happyReduce 7# 26# happyReduction_87
-happyReduction_87 (happy_x_7 `HappyStk`
- happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut86 happy_x_3 of { happy_var_3 ->
- case happyOut7 happy_x_6 of { happy_var_6 ->
- happyIn33
- (ListSizeCatDef happy_var_2 (reverse happy_var_3) happy_var_6
- ) `HappyStk` happyRest}}}
-
-happyReduce_88 = happySpecReduce_3 27# happyReduction_88
-happyReduction_88 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut50 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn34
- (FunDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_89 = happySpecReduce_3 28# happyReduction_89
-happyReduction_89 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut37 happy_x_3 of { happy_var_3 ->
- happyIn35
- (DataDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_90 = happySpecReduce_1 29# happyReduction_90
-happyReduction_90 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn36
- (DataId happy_var_1
- )}
-
-happyReduce_91 = happySpecReduce_3 29# happyReduction_91
-happyReduction_91 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- happyIn36
- (DataQId happy_var_1 happy_var_3
- )}}
-
-happyReduce_92 = happySpecReduce_0 30# happyReduction_92
-happyReduction_92 = happyIn37
- ([]
- )
-
-happyReduce_93 = happySpecReduce_1 30# happyReduction_93
-happyReduction_93 happy_x_1
- = case happyOut36 happy_x_1 of { happy_var_1 ->
- happyIn37
- ((:[]) happy_var_1
- )}
-
-happyReduce_94 = happySpecReduce_3 30# happyReduction_94
-happyReduction_94 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut36 happy_x_1 of { happy_var_1 ->
- case happyOut37 happy_x_3 of { happy_var_3 ->
- happyIn37
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_95 = happySpecReduce_3 31# happyReduction_95
-happyReduction_95 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut49 happy_x_3 of { happy_var_3 ->
- happyIn38
- (ParDefDir happy_var_1 happy_var_3
- )}}
-
-happyReduce_96 = happyReduce 6# 31# happyReduction_96
-happyReduction_96 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut11 happy_x_5 of { happy_var_5 ->
- happyIn38
- (ParDefIndir happy_var_1 happy_var_5
- ) `HappyStk` happyRest}}
-
-happyReduce_97 = happySpecReduce_1 31# happyReduction_97
-happyReduction_97 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn38
- (ParDefAbs happy_var_1
- )}
-
-happyReduce_98 = happySpecReduce_2 32# happyReduction_98
-happyReduction_98 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut86 happy_x_2 of { happy_var_2 ->
- happyIn39
- (ParConstr happy_var_1 (reverse happy_var_2)
- )}}
-
-happyReduce_99 = happySpecReduce_3 33# happyReduction_99
-happyReduction_99 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut52 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn40
- (PrintDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_100 = happySpecReduce_3 34# happyReduction_100
-happyReduction_100 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- happyIn41
- (FlagDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_101 = happySpecReduce_2 35# happyReduction_101
-happyReduction_101 happy_x_2
- happy_x_1
- = case happyOut31 happy_x_1 of { happy_var_1 ->
- happyIn42
- ((:[]) happy_var_1
- )}
-
-happyReduce_102 = happySpecReduce_3 35# happyReduction_102
-happyReduction_102 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut31 happy_x_1 of { happy_var_1 ->
- case happyOut42 happy_x_3 of { happy_var_3 ->
- happyIn42
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_103 = happySpecReduce_2 36# happyReduction_103
-happyReduction_103 happy_x_2
- happy_x_1
- = case happyOut33 happy_x_1 of { happy_var_1 ->
- happyIn43
- ((:[]) happy_var_1
- )}
-
-happyReduce_104 = happySpecReduce_3 36# happyReduction_104
-happyReduction_104 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut33 happy_x_1 of { happy_var_1 ->
- case happyOut43 happy_x_3 of { happy_var_3 ->
- happyIn43
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_105 = happySpecReduce_2 37# happyReduction_105
-happyReduction_105 happy_x_2
- happy_x_1
- = case happyOut34 happy_x_1 of { happy_var_1 ->
- happyIn44
- ((:[]) happy_var_1
- )}
-
-happyReduce_106 = happySpecReduce_3 37# happyReduction_106
-happyReduction_106 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut34 happy_x_1 of { happy_var_1 ->
- case happyOut44 happy_x_3 of { happy_var_3 ->
- happyIn44
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_107 = happySpecReduce_2 38# happyReduction_107
-happyReduction_107 happy_x_2
- happy_x_1
- = case happyOut35 happy_x_1 of { happy_var_1 ->
- happyIn45
- ((:[]) happy_var_1
- )}
-
-happyReduce_108 = happySpecReduce_3 38# happyReduction_108
-happyReduction_108 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut35 happy_x_1 of { happy_var_1 ->
- case happyOut45 happy_x_3 of { happy_var_3 ->
- happyIn45
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_109 = happySpecReduce_2 39# happyReduction_109
-happyReduction_109 happy_x_2
- happy_x_1
- = case happyOut38 happy_x_1 of { happy_var_1 ->
- happyIn46
- ((:[]) happy_var_1
- )}
-
-happyReduce_110 = happySpecReduce_3 39# happyReduction_110
-happyReduction_110 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut38 happy_x_1 of { happy_var_1 ->
- case happyOut46 happy_x_3 of { happy_var_3 ->
- happyIn46
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_111 = happySpecReduce_2 40# happyReduction_111
-happyReduction_111 happy_x_2
- happy_x_1
- = case happyOut40 happy_x_1 of { happy_var_1 ->
- happyIn47
- ((:[]) happy_var_1
- )}
-
-happyReduce_112 = happySpecReduce_3 40# happyReduction_112
-happyReduction_112 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut40 happy_x_1 of { happy_var_1 ->
- case happyOut47 happy_x_3 of { happy_var_3 ->
- happyIn47
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_113 = happySpecReduce_2 41# happyReduction_113
-happyReduction_113 happy_x_2
- happy_x_1
- = case happyOut41 happy_x_1 of { happy_var_1 ->
- happyIn48
- ((:[]) happy_var_1
- )}
-
-happyReduce_114 = happySpecReduce_3 41# happyReduction_114
-happyReduction_114 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut41 happy_x_1 of { happy_var_1 ->
- case happyOut48 happy_x_3 of { happy_var_3 ->
- happyIn48
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_115 = happySpecReduce_0 42# happyReduction_115
-happyReduction_115 = happyIn49
- ([]
- )
-
-happyReduce_116 = happySpecReduce_1 42# happyReduction_116
-happyReduction_116 happy_x_1
- = case happyOut39 happy_x_1 of { happy_var_1 ->
- happyIn49
- ((:[]) happy_var_1
- )}
-
-happyReduce_117 = happySpecReduce_3 42# happyReduction_117
-happyReduction_117 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut39 happy_x_1 of { happy_var_1 ->
- case happyOut49 happy_x_3 of { happy_var_3 ->
- happyIn49
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_118 = happySpecReduce_1 43# happyReduction_118
-happyReduction_118 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn50
- ((:[]) happy_var_1
- )}
-
-happyReduce_119 = happySpecReduce_3 43# happyReduction_119
-happyReduction_119 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut50 happy_x_3 of { happy_var_3 ->
- happyIn50
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_120 = happySpecReduce_1 44# happyReduction_120
-happyReduction_120 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn51
- (IdentName happy_var_1
- )}
-
-happyReduce_121 = happySpecReduce_3 44# happyReduction_121
-happyReduction_121 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn51
- (ListName happy_var_2
- )}
-
-happyReduce_122 = happySpecReduce_1 45# happyReduction_122
-happyReduction_122 happy_x_1
- = case happyOut51 happy_x_1 of { happy_var_1 ->
- happyIn52
- ((:[]) happy_var_1
- )}
-
-happyReduce_123 = happySpecReduce_3 45# happyReduction_123
-happyReduction_123 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut51 happy_x_1 of { happy_var_1 ->
- case happyOut52 happy_x_3 of { happy_var_3 ->
- happyIn52
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_124 = happySpecReduce_3 46# happyReduction_124
-happyReduction_124 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut50 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn53
- (LDDecl happy_var_1 happy_var_3
- )}}
-
-happyReduce_125 = happySpecReduce_3 46# happyReduction_125
-happyReduction_125 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut50 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn53
- (LDDef happy_var_1 happy_var_3
- )}}
-
-happyReduce_126 = happyReduce 5# 46# happyReduction_126
-happyReduction_126 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut50 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- case happyOut60 happy_x_5 of { happy_var_5 ->
- happyIn53
- (LDFull happy_var_1 happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}}
-
-happyReduce_127 = happySpecReduce_0 47# happyReduction_127
-happyReduction_127 = happyIn54
- ([]
- )
-
-happyReduce_128 = happySpecReduce_1 47# happyReduction_128
-happyReduction_128 happy_x_1
- = case happyOut53 happy_x_1 of { happy_var_1 ->
- happyIn54
- ((:[]) happy_var_1
- )}
-
-happyReduce_129 = happySpecReduce_3 47# happyReduction_129
-happyReduction_129 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut53 happy_x_1 of { happy_var_1 ->
- case happyOut54 happy_x_3 of { happy_var_3 ->
- happyIn54
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_130 = happySpecReduce_1 48# happyReduction_130
-happyReduction_130 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn55
- (EIdent happy_var_1
- )}
-
-happyReduce_131 = happySpecReduce_3 48# happyReduction_131
-happyReduction_131 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn55
- (EConstr happy_var_2
- )}
-
-happyReduce_132 = happySpecReduce_3 48# happyReduction_132
-happyReduction_132 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn55
- (ECons happy_var_2
- )}
-
-happyReduce_133 = happySpecReduce_1 48# happyReduction_133
-happyReduction_133 happy_x_1
- = case happyOut69 happy_x_1 of { happy_var_1 ->
- happyIn55
- (ESort happy_var_1
- )}
-
-happyReduce_134 = happySpecReduce_1 48# happyReduction_134
-happyReduction_134 happy_x_1
- = case happyOut8 happy_x_1 of { happy_var_1 ->
- happyIn55
- (EString happy_var_1
- )}
-
-happyReduce_135 = happySpecReduce_1 48# happyReduction_135
-happyReduction_135 happy_x_1
- = case happyOut7 happy_x_1 of { happy_var_1 ->
- happyIn55
- (EInt happy_var_1
- )}
-
-happyReduce_136 = happySpecReduce_1 48# happyReduction_136
-happyReduction_136 happy_x_1
- = case happyOut9 happy_x_1 of { happy_var_1 ->
- happyIn55
- (EFloat happy_var_1
- )}
-
-happyReduce_137 = happySpecReduce_1 48# happyReduction_137
-happyReduction_137 happy_x_1
- = happyIn55
- (EMeta
- )
-
-happyReduce_138 = happySpecReduce_2 48# happyReduction_138
-happyReduction_138 happy_x_2
- happy_x_1
- = happyIn55
- (EEmpty
- )
-
-happyReduce_139 = happySpecReduce_1 48# happyReduction_139
-happyReduction_139 happy_x_1
- = happyIn55
- (EData
- )
-
-happyReduce_140 = happyReduce 4# 48# happyReduction_140
-happyReduction_140 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut63 happy_x_3 of { happy_var_3 ->
- happyIn55
- (EList happy_var_2 happy_var_3
- ) `HappyStk` happyRest}}
-
-happyReduce_141 = happySpecReduce_3 48# happyReduction_141
-happyReduction_141 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut8 happy_x_2 of { happy_var_2 ->
- happyIn55
- (EStrings happy_var_2
- )}
-
-happyReduce_142 = happySpecReduce_3 48# happyReduction_142
-happyReduction_142 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut54 happy_x_2 of { happy_var_2 ->
- happyIn55
- (ERecord happy_var_2
- )}
-
-happyReduce_143 = happySpecReduce_3 48# happyReduction_143
-happyReduction_143 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut77 happy_x_2 of { happy_var_2 ->
- happyIn55
- (ETuple happy_var_2
- )}
-
-happyReduce_144 = happyReduce 4# 48# happyReduction_144
-happyReduction_144 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_3 of { happy_var_3 ->
- happyIn55
- (EIndir happy_var_3
- ) `HappyStk` happyRest}
-
-happyReduce_145 = happyReduce 5# 48# happyReduction_145
-happyReduction_145 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut60 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn55
- (ETyped happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_146 = happySpecReduce_3 48# happyReduction_146
-happyReduction_146 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut60 happy_x_2 of { happy_var_2 ->
- happyIn55
- (happy_var_2
- )}
-
-happyReduce_147 = happySpecReduce_1 48# happyReduction_147
-happyReduction_147 happy_x_1
- = case happyOut10 happy_x_1 of { happy_var_1 ->
- happyIn55
- (ELString happy_var_1
- )}
-
-happyReduce_148 = happySpecReduce_3 49# happyReduction_148
-happyReduction_148 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut56 happy_x_1 of { happy_var_1 ->
- case happyOut68 happy_x_3 of { happy_var_3 ->
- happyIn56
- (EProj happy_var_1 happy_var_3
- )}}
-
-happyReduce_149 = happyReduce 5# 49# happyReduction_149
-happyReduction_149 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_4 of { happy_var_4 ->
- happyIn56
- (EQConstr happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_150 = happyReduce 4# 49# happyReduction_150
-happyReduction_150 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_4 of { happy_var_4 ->
- happyIn56
- (EQCons happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_151 = happySpecReduce_1 49# happyReduction_151
-happyReduction_151 happy_x_1
- = case happyOut55 happy_x_1 of { happy_var_1 ->
- happyIn56
- (happy_var_1
- )}
-
-happyReduce_152 = happySpecReduce_2 50# happyReduction_152
-happyReduction_152 happy_x_2
- happy_x_1
- = case happyOut57 happy_x_1 of { happy_var_1 ->
- case happyOut56 happy_x_2 of { happy_var_2 ->
- happyIn57
- (EApp happy_var_1 happy_var_2
- )}}
-
-happyReduce_153 = happyReduce 4# 50# happyReduction_153
-happyReduction_153 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut80 happy_x_3 of { happy_var_3 ->
- happyIn57
- (ETable happy_var_3
- ) `HappyStk` happyRest}
-
-happyReduce_154 = happyReduce 5# 50# happyReduction_154
-happyReduction_154 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut55 happy_x_2 of { happy_var_2 ->
- case happyOut80 happy_x_4 of { happy_var_4 ->
- happyIn57
- (ETTable happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_155 = happyReduce 5# 50# happyReduction_155
-happyReduction_155 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut55 happy_x_2 of { happy_var_2 ->
- case happyOut62 happy_x_4 of { happy_var_4 ->
- happyIn57
- (EVTable happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_156 = happyReduce 6# 50# happyReduction_156
-happyReduction_156 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut60 happy_x_2 of { happy_var_2 ->
- case happyOut80 happy_x_5 of { happy_var_5 ->
- happyIn57
- (ECase happy_var_2 happy_var_5
- ) `HappyStk` happyRest}}
-
-happyReduce_157 = happyReduce 4# 50# happyReduction_157
-happyReduction_157 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut62 happy_x_3 of { happy_var_3 ->
- happyIn57
- (EVariants happy_var_3
- ) `HappyStk` happyRest}
-
-happyReduce_158 = happyReduce 6# 50# happyReduction_158
-happyReduction_158 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut60 happy_x_3 of { happy_var_3 ->
- case happyOut84 happy_x_5 of { happy_var_5 ->
- happyIn57
- (EPre happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}
-
-happyReduce_159 = happyReduce 4# 50# happyReduction_159
-happyReduction_159 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut62 happy_x_3 of { happy_var_3 ->
- happyIn57
- (EStrs happy_var_3
- ) `HappyStk` happyRest}
-
-happyReduce_160 = happySpecReduce_3 50# happyReduction_160
-happyReduction_160 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut55 happy_x_3 of { happy_var_3 ->
- happyIn57
- (EConAt happy_var_1 happy_var_3
- )}}
-
-happyReduce_161 = happySpecReduce_2 50# happyReduction_161
-happyReduction_161 happy_x_2
- happy_x_1
- = case happyOut64 happy_x_2 of { happy_var_2 ->
- happyIn57
- (EPatt happy_var_2
- )}
-
-happyReduce_162 = happySpecReduce_2 50# happyReduction_162
-happyReduction_162 happy_x_2
- happy_x_1
- = case happyOut56 happy_x_2 of { happy_var_2 ->
- happyIn57
- (EPattType happy_var_2
- )}
-
-happyReduce_163 = happySpecReduce_1 50# happyReduction_163
-happyReduction_163 happy_x_1
- = case happyOut56 happy_x_1 of { happy_var_1 ->
- happyIn57
- (happy_var_1
- )}
-
-happyReduce_164 = happySpecReduce_2 50# happyReduction_164
-happyReduction_164 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn57
- (ELin happy_var_2
- )}
-
-happyReduce_165 = happySpecReduce_3 51# happyReduction_165
-happyReduction_165 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- case happyOut57 happy_x_3 of { happy_var_3 ->
- happyIn58
- (ESelect happy_var_1 happy_var_3
- )}}
-
-happyReduce_166 = happySpecReduce_3 51# happyReduction_166
-happyReduction_166 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- case happyOut57 happy_x_3 of { happy_var_3 ->
- happyIn58
- (ETupTyp happy_var_1 happy_var_3
- )}}
-
-happyReduce_167 = happySpecReduce_3 51# happyReduction_167
-happyReduction_167 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- case happyOut57 happy_x_3 of { happy_var_3 ->
- happyIn58
- (EExtend happy_var_1 happy_var_3
- )}}
-
-happyReduce_168 = happySpecReduce_1 51# happyReduction_168
-happyReduction_168 happy_x_1
- = case happyOut57 happy_x_1 of { happy_var_1 ->
- happyIn58
- (happy_var_1
- )}
-
-happyReduce_169 = happySpecReduce_3 52# happyReduction_169
-happyReduction_169 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut61 happy_x_1 of { happy_var_1 ->
- case happyOut59 happy_x_3 of { happy_var_3 ->
- happyIn59
- (EGlue happy_var_1 happy_var_3
- )}}
-
-happyReduce_170 = happySpecReduce_1 52# happyReduction_170
-happyReduction_170 happy_x_1
- = case happyOut61 happy_x_1 of { happy_var_1 ->
- happyIn59
- (happy_var_1
- )}
-
-happyReduce_171 = happySpecReduce_3 53# happyReduction_171
-happyReduction_171 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut59 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn60
- (EConcat happy_var_1 happy_var_3
- )}}
-
-happyReduce_172 = happyReduce 4# 53# happyReduction_172
-happyReduction_172 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut73 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn60
- (EAbstr happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_173 = happyReduce 5# 53# happyReduction_173
-happyReduction_173 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut73 happy_x_3 of { happy_var_3 ->
- case happyOut60 happy_x_5 of { happy_var_5 ->
- happyIn60
- (ECTable happy_var_3 happy_var_5
- ) `HappyStk` happyRest}}
-
-happyReduce_174 = happySpecReduce_3 53# happyReduction_174
-happyReduction_174 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut74 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn60
- (EProd happy_var_1 happy_var_3
- )}}
-
-happyReduce_175 = happySpecReduce_3 53# happyReduction_175
-happyReduction_175 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn60
- (ETType happy_var_1 happy_var_3
- )}}
-
-happyReduce_176 = happyReduce 6# 53# happyReduction_176
-happyReduction_176 (happy_x_6 `HappyStk`
- happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut54 happy_x_3 of { happy_var_3 ->
- case happyOut60 happy_x_6 of { happy_var_6 ->
- happyIn60
- (ELet happy_var_3 happy_var_6
- ) `HappyStk` happyRest}}
-
-happyReduce_177 = happyReduce 4# 53# happyReduction_177
-happyReduction_177 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut54 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn60
- (ELetb happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_178 = happyReduce 5# 53# happyReduction_178
-happyReduction_178 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- case happyOut54 happy_x_4 of { happy_var_4 ->
- happyIn60
- (EWhere happy_var_1 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_179 = happyReduce 4# 53# happyReduction_179
-happyReduction_179 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut82 happy_x_3 of { happy_var_3 ->
- happyIn60
- (EEqs happy_var_3
- ) `HappyStk` happyRest}
-
-happyReduce_180 = happySpecReduce_3 53# happyReduction_180
-happyReduction_180 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut56 happy_x_2 of { happy_var_2 ->
- case happyOut8 happy_x_3 of { happy_var_3 ->
- happyIn60
- (EExample happy_var_2 happy_var_3
- )}}
-
-happyReduce_181 = happySpecReduce_1 53# happyReduction_181
-happyReduction_181 happy_x_1
- = case happyOut59 happy_x_1 of { happy_var_1 ->
- happyIn60
- (happy_var_1
- )}
-
-happyReduce_182 = happySpecReduce_1 54# happyReduction_182
-happyReduction_182 happy_x_1
- = case happyOut58 happy_x_1 of { happy_var_1 ->
- happyIn61
- (happy_var_1
- )}
-
-happyReduce_183 = happySpecReduce_0 55# happyReduction_183
-happyReduction_183 = happyIn62
- ([]
- )
-
-happyReduce_184 = happySpecReduce_1 55# happyReduction_184
-happyReduction_184 happy_x_1
- = case happyOut60 happy_x_1 of { happy_var_1 ->
- happyIn62
- ((:[]) happy_var_1
- )}
-
-happyReduce_185 = happySpecReduce_3 55# happyReduction_185
-happyReduction_185 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut60 happy_x_1 of { happy_var_1 ->
- case happyOut62 happy_x_3 of { happy_var_3 ->
- happyIn62
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_186 = happySpecReduce_0 56# happyReduction_186
-happyReduction_186 = happyIn63
- (NilExp
- )
-
-happyReduce_187 = happySpecReduce_2 56# happyReduction_187
-happyReduction_187 happy_x_2
- happy_x_1
- = case happyOut55 happy_x_1 of { happy_var_1 ->
- case happyOut63 happy_x_2 of { happy_var_2 ->
- happyIn63
- (ConsExp happy_var_1 happy_var_2
- )}}
-
-happyReduce_188 = happySpecReduce_1 57# happyReduction_188
-happyReduction_188 happy_x_1
- = happyIn64
- (PChar
- )
-
-happyReduce_189 = happySpecReduce_3 57# happyReduction_189
-happyReduction_189 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut8 happy_x_2 of { happy_var_2 ->
- happyIn64
- (PChars happy_var_2
- )}
-
-happyReduce_190 = happySpecReduce_2 57# happyReduction_190
-happyReduction_190 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn64
- (PMacro happy_var_2
- )}
-
-happyReduce_191 = happyReduce 4# 57# happyReduction_191
-happyReduction_191 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- case happyOut11 happy_x_4 of { happy_var_4 ->
- happyIn64
- (PM happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_192 = happySpecReduce_1 57# happyReduction_192
-happyReduction_192 happy_x_1
- = happyIn64
- (PW
- )
-
-happyReduce_193 = happySpecReduce_1 57# happyReduction_193
-happyReduction_193 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn64
- (PV happy_var_1
- )}
-
-happyReduce_194 = happySpecReduce_3 57# happyReduction_194
-happyReduction_194 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_2 of { happy_var_2 ->
- happyIn64
- (PCon happy_var_2
- )}
-
-happyReduce_195 = happySpecReduce_3 57# happyReduction_195
-happyReduction_195 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- happyIn64
- (PQ happy_var_1 happy_var_3
- )}}
-
-happyReduce_196 = happySpecReduce_1 57# happyReduction_196
-happyReduction_196 happy_x_1
- = case happyOut7 happy_x_1 of { happy_var_1 ->
- happyIn64
- (PInt happy_var_1
- )}
-
-happyReduce_197 = happySpecReduce_1 57# happyReduction_197
-happyReduction_197 happy_x_1
- = case happyOut9 happy_x_1 of { happy_var_1 ->
- happyIn64
- (PFloat happy_var_1
- )}
-
-happyReduce_198 = happySpecReduce_1 57# happyReduction_198
-happyReduction_198 happy_x_1
- = case happyOut8 happy_x_1 of { happy_var_1 ->
- happyIn64
- (PStr happy_var_1
- )}
-
-happyReduce_199 = happySpecReduce_3 57# happyReduction_199
-happyReduction_199 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut70 happy_x_2 of { happy_var_2 ->
- happyIn64
- (PR happy_var_2
- )}
-
-happyReduce_200 = happySpecReduce_3 57# happyReduction_200
-happyReduction_200 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut78 happy_x_2 of { happy_var_2 ->
- happyIn64
- (PTup happy_var_2
- )}
-
-happyReduce_201 = happySpecReduce_3 57# happyReduction_201
-happyReduction_201 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut66 happy_x_2 of { happy_var_2 ->
- happyIn64
- (happy_var_2
- )}
-
-happyReduce_202 = happySpecReduce_2 58# happyReduction_202
-happyReduction_202 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut71 happy_x_2 of { happy_var_2 ->
- happyIn65
- (PC happy_var_1 happy_var_2
- )}}
-
-happyReduce_203 = happyReduce 4# 58# happyReduction_203
-happyReduction_203 (happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut11 happy_x_3 of { happy_var_3 ->
- case happyOut71 happy_x_4 of { happy_var_4 ->
- happyIn65
- (PQC happy_var_1 happy_var_3 happy_var_4
- ) `HappyStk` happyRest}}}
-
-happyReduce_204 = happySpecReduce_2 58# happyReduction_204
-happyReduction_204 happy_x_2
- happy_x_1
- = case happyOut64 happy_x_1 of { happy_var_1 ->
- happyIn65
- (PRep happy_var_1
- )}
-
-happyReduce_205 = happySpecReduce_3 58# happyReduction_205
-happyReduction_205 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut64 happy_x_3 of { happy_var_3 ->
- happyIn65
- (PAs happy_var_1 happy_var_3
- )}}
-
-happyReduce_206 = happySpecReduce_2 58# happyReduction_206
-happyReduction_206 happy_x_2
- happy_x_1
- = case happyOut64 happy_x_2 of { happy_var_2 ->
- happyIn65
- (PNeg happy_var_2
- )}
-
-happyReduce_207 = happySpecReduce_1 58# happyReduction_207
-happyReduction_207 happy_x_1
- = case happyOut64 happy_x_1 of { happy_var_1 ->
- happyIn65
- (happy_var_1
- )}
-
-happyReduce_208 = happySpecReduce_3 59# happyReduction_208
-happyReduction_208 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut66 happy_x_1 of { happy_var_1 ->
- case happyOut65 happy_x_3 of { happy_var_3 ->
- happyIn66
- (PDisj happy_var_1 happy_var_3
- )}}
-
-happyReduce_209 = happySpecReduce_3 59# happyReduction_209
-happyReduction_209 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut66 happy_x_1 of { happy_var_1 ->
- case happyOut65 happy_x_3 of { happy_var_3 ->
- happyIn66
- (PSeq happy_var_1 happy_var_3
- )}}
-
-happyReduce_210 = happySpecReduce_1 59# happyReduction_210
-happyReduction_210 happy_x_1
- = case happyOut65 happy_x_1 of { happy_var_1 ->
- happyIn66
- (happy_var_1
- )}
-
-happyReduce_211 = happySpecReduce_3 60# happyReduction_211
-happyReduction_211 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut50 happy_x_1 of { happy_var_1 ->
- case happyOut66 happy_x_3 of { happy_var_3 ->
- happyIn67
- (PA happy_var_1 happy_var_3
- )}}
-
-happyReduce_212 = happySpecReduce_1 61# happyReduction_212
-happyReduction_212 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn68
- (LIdent happy_var_1
- )}
-
-happyReduce_213 = happySpecReduce_2 61# happyReduction_213
-happyReduction_213 happy_x_2
- happy_x_1
- = case happyOut7 happy_x_2 of { happy_var_2 ->
- happyIn68
- (LVar happy_var_2
- )}
-
-happyReduce_214 = happySpecReduce_1 62# happyReduction_214
-happyReduction_214 happy_x_1
- = happyIn69
- (Sort_Type
- )
-
-happyReduce_215 = happySpecReduce_1 62# happyReduction_215
-happyReduction_215 happy_x_1
- = happyIn69
- (Sort_PType
- )
-
-happyReduce_216 = happySpecReduce_1 62# happyReduction_216
-happyReduction_216 happy_x_1
- = happyIn69
- (Sort_Tok
- )
-
-happyReduce_217 = happySpecReduce_1 62# happyReduction_217
-happyReduction_217 happy_x_1
- = happyIn69
- (Sort_Str
- )
-
-happyReduce_218 = happySpecReduce_1 62# happyReduction_218
-happyReduction_218 happy_x_1
- = happyIn69
- (Sort_Strs
- )
-
-happyReduce_219 = happySpecReduce_0 63# happyReduction_219
-happyReduction_219 = happyIn70
- ([]
- )
-
-happyReduce_220 = happySpecReduce_1 63# happyReduction_220
-happyReduction_220 happy_x_1
- = case happyOut67 happy_x_1 of { happy_var_1 ->
- happyIn70
- ((:[]) happy_var_1
- )}
-
-happyReduce_221 = happySpecReduce_3 63# happyReduction_221
-happyReduction_221 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut67 happy_x_1 of { happy_var_1 ->
- case happyOut70 happy_x_3 of { happy_var_3 ->
- happyIn70
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_222 = happySpecReduce_1 64# happyReduction_222
-happyReduction_222 happy_x_1
- = case happyOut64 happy_x_1 of { happy_var_1 ->
- happyIn71
- ((:[]) happy_var_1
- )}
-
-happyReduce_223 = happySpecReduce_2 64# happyReduction_223
-happyReduction_223 happy_x_2
- happy_x_1
- = case happyOut64 happy_x_1 of { happy_var_1 ->
- case happyOut71 happy_x_2 of { happy_var_2 ->
- happyIn71
- ((:) happy_var_1 happy_var_2
- )}}
-
-happyReduce_224 = happySpecReduce_1 65# happyReduction_224
-happyReduction_224 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn72
- (BIdent happy_var_1
- )}
-
-happyReduce_225 = happySpecReduce_1 65# happyReduction_225
-happyReduction_225 happy_x_1
- = happyIn72
- (BWild
- )
-
-happyReduce_226 = happySpecReduce_0 66# happyReduction_226
-happyReduction_226 = happyIn73
- ([]
- )
-
-happyReduce_227 = happySpecReduce_1 66# happyReduction_227
-happyReduction_227 happy_x_1
- = case happyOut72 happy_x_1 of { happy_var_1 ->
- happyIn73
- ((:[]) happy_var_1
- )}
-
-happyReduce_228 = happySpecReduce_3 66# happyReduction_228
-happyReduction_228 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut72 happy_x_1 of { happy_var_1 ->
- case happyOut73 happy_x_3 of { happy_var_3 ->
- happyIn73
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_229 = happyReduce 5# 67# happyReduction_229
-happyReduction_229 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut73 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn74
- (DDec happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_230 = happySpecReduce_1 67# happyReduction_230
-happyReduction_230 happy_x_1
- = case happyOut57 happy_x_1 of { happy_var_1 ->
- happyIn74
- (DExp happy_var_1
- )}
-
-happyReduce_231 = happySpecReduce_1 68# happyReduction_231
-happyReduction_231 happy_x_1
- = case happyOut60 happy_x_1 of { happy_var_1 ->
- happyIn75
- (TComp happy_var_1
- )}
-
-happyReduce_232 = happySpecReduce_1 69# happyReduction_232
-happyReduction_232 happy_x_1
- = case happyOut66 happy_x_1 of { happy_var_1 ->
- happyIn76
- (PTComp happy_var_1
- )}
-
-happyReduce_233 = happySpecReduce_0 70# happyReduction_233
-happyReduction_233 = happyIn77
- ([]
- )
-
-happyReduce_234 = happySpecReduce_1 70# happyReduction_234
-happyReduction_234 happy_x_1
- = case happyOut75 happy_x_1 of { happy_var_1 ->
- happyIn77
- ((:[]) happy_var_1
- )}
-
-happyReduce_235 = happySpecReduce_3 70# happyReduction_235
-happyReduction_235 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut75 happy_x_1 of { happy_var_1 ->
- case happyOut77 happy_x_3 of { happy_var_3 ->
- happyIn77
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_236 = happySpecReduce_0 71# happyReduction_236
-happyReduction_236 = happyIn78
- ([]
- )
-
-happyReduce_237 = happySpecReduce_1 71# happyReduction_237
-happyReduction_237 happy_x_1
- = case happyOut76 happy_x_1 of { happy_var_1 ->
- happyIn78
- ((:[]) happy_var_1
- )}
-
-happyReduce_238 = happySpecReduce_3 71# happyReduction_238
-happyReduction_238 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut76 happy_x_1 of { happy_var_1 ->
- case happyOut78 happy_x_3 of { happy_var_3 ->
- happyIn78
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_239 = happySpecReduce_3 72# happyReduction_239
-happyReduction_239 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut66 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn79
- (Case happy_var_1 happy_var_3
- )}}
-
-happyReduce_240 = happySpecReduce_1 73# happyReduction_240
-happyReduction_240 happy_x_1
- = case happyOut79 happy_x_1 of { happy_var_1 ->
- happyIn80
- ((:[]) happy_var_1
- )}
-
-happyReduce_241 = happySpecReduce_3 73# happyReduction_241
-happyReduction_241 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut79 happy_x_1 of { happy_var_1 ->
- case happyOut80 happy_x_3 of { happy_var_3 ->
- happyIn80
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_242 = happySpecReduce_3 74# happyReduction_242
-happyReduction_242 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut71 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn81
- (Equ happy_var_1 happy_var_3
- )}}
-
-happyReduce_243 = happySpecReduce_0 75# happyReduction_243
-happyReduction_243 = happyIn82
- ([]
- )
-
-happyReduce_244 = happySpecReduce_1 75# happyReduction_244
-happyReduction_244 happy_x_1
- = case happyOut81 happy_x_1 of { happy_var_1 ->
- happyIn82
- ((:[]) happy_var_1
- )}
-
-happyReduce_245 = happySpecReduce_3 75# happyReduction_245
-happyReduction_245 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut81 happy_x_1 of { happy_var_1 ->
- case happyOut82 happy_x_3 of { happy_var_3 ->
- happyIn82
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_246 = happySpecReduce_3 76# happyReduction_246
-happyReduction_246 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut60 happy_x_1 of { happy_var_1 ->
- case happyOut60 happy_x_3 of { happy_var_3 ->
- happyIn83
- (Alt happy_var_1 happy_var_3
- )}}
-
-happyReduce_247 = happySpecReduce_0 77# happyReduction_247
-happyReduction_247 = happyIn84
- ([]
- )
-
-happyReduce_248 = happySpecReduce_1 77# happyReduction_248
-happyReduction_248 happy_x_1
- = case happyOut83 happy_x_1 of { happy_var_1 ->
- happyIn84
- ((:[]) happy_var_1
- )}
-
-happyReduce_249 = happySpecReduce_3 77# happyReduction_249
-happyReduction_249 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut83 happy_x_1 of { happy_var_1 ->
- case happyOut84 happy_x_3 of { happy_var_3 ->
- happyIn84
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyReduce_250 = happyReduce 5# 78# happyReduction_250
-happyReduction_250 (happy_x_5 `HappyStk`
- happy_x_4 `HappyStk`
- happy_x_3 `HappyStk`
- happy_x_2 `HappyStk`
- happy_x_1 `HappyStk`
- happyRest)
- = case happyOut73 happy_x_2 of { happy_var_2 ->
- case happyOut60 happy_x_4 of { happy_var_4 ->
- happyIn85
- (DDDec happy_var_2 happy_var_4
- ) `HappyStk` happyRest}}
-
-happyReduce_251 = happySpecReduce_1 78# happyReduction_251
-happyReduction_251 happy_x_1
- = case happyOut55 happy_x_1 of { happy_var_1 ->
- happyIn85
- (DDExp happy_var_1
- )}
-
-happyReduce_252 = happySpecReduce_0 79# happyReduction_252
-happyReduction_252 = happyIn86
- ([]
- )
-
-happyReduce_253 = happySpecReduce_2 79# happyReduction_253
-happyReduction_253 happy_x_2
- happy_x_1
- = case happyOut86 happy_x_1 of { happy_var_1 ->
- case happyOut85 happy_x_2 of { happy_var_2 ->
- happyIn86
- (flip (:) happy_var_1 happy_var_2
- )}}
-
-happyReduce_254 = happySpecReduce_2 80# happyReduction_254
-happyReduction_254 happy_x_2
- happy_x_1
- = case happyOut88 happy_x_1 of { happy_var_1 ->
- case happyOut22 happy_x_2 of { happy_var_2 ->
- happyIn87
- (OldGr happy_var_1 (reverse happy_var_2)
- )}}
-
-happyReduce_255 = happySpecReduce_0 81# happyReduction_255
-happyReduction_255 = happyIn88
- (NoIncl
- )
-
-happyReduce_256 = happySpecReduce_2 81# happyReduction_256
-happyReduction_256 happy_x_2
- happy_x_1
- = case happyOut90 happy_x_2 of { happy_var_2 ->
- happyIn88
- (Incl happy_var_2
- )}
-
-happyReduce_257 = happySpecReduce_1 82# happyReduction_257
-happyReduction_257 happy_x_1
- = case happyOut8 happy_x_1 of { happy_var_1 ->
- happyIn89
- (FString happy_var_1
- )}
-
-happyReduce_258 = happySpecReduce_1 82# happyReduction_258
-happyReduction_258 happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- happyIn89
- (FIdent happy_var_1
- )}
-
-happyReduce_259 = happySpecReduce_2 82# happyReduction_259
-happyReduction_259 happy_x_2
- happy_x_1
- = case happyOut89 happy_x_2 of { happy_var_2 ->
- happyIn89
- (FSlash happy_var_2
- )}
-
-happyReduce_260 = happySpecReduce_2 82# happyReduction_260
-happyReduction_260 happy_x_2
- happy_x_1
- = case happyOut89 happy_x_2 of { happy_var_2 ->
- happyIn89
- (FDot happy_var_2
- )}
-
-happyReduce_261 = happySpecReduce_2 82# happyReduction_261
-happyReduction_261 happy_x_2
- happy_x_1
- = case happyOut89 happy_x_2 of { happy_var_2 ->
- happyIn89
- (FMinus happy_var_2
- )}
-
-happyReduce_262 = happySpecReduce_2 82# happyReduction_262
-happyReduction_262 happy_x_2
- happy_x_1
- = case happyOut11 happy_x_1 of { happy_var_1 ->
- case happyOut89 happy_x_2 of { happy_var_2 ->
- happyIn89
- (FAddId happy_var_1 happy_var_2
- )}}
-
-happyReduce_263 = happySpecReduce_2 83# happyReduction_263
-happyReduction_263 happy_x_2
- happy_x_1
- = case happyOut89 happy_x_1 of { happy_var_1 ->
- happyIn90
- ((:[]) happy_var_1
- )}
-
-happyReduce_264 = happySpecReduce_3 83# happyReduction_264
-happyReduction_264 happy_x_3
- happy_x_2
- happy_x_1
- = case happyOut89 happy_x_1 of { happy_var_1 ->
- case happyOut90 happy_x_3 of { happy_var_3 ->
- happyIn90
- ((:) happy_var_1 happy_var_3
- )}}
-
-happyNewToken action sts stk [] =
- happyDoAction 83# notHappyAtAll action sts stk []
-
-happyNewToken action sts stk (tk:tks) =
- let cont i = happyDoAction i tk action sts stk tks in
- case tk of {
- PT _ (TS ";") -> cont 1#;
- PT _ (TS "=") -> cont 2#;
- PT _ (TS "{") -> cont 3#;
- PT _ (TS "}") -> cont 4#;
- PT _ (TS "(") -> cont 5#;
- PT _ (TS ")") -> cont 6#;
- PT _ (TS ":") -> cont 7#;
- PT _ (TS "->") -> cont 8#;
- PT _ (TS "**") -> cont 9#;
- 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 "@") -> cont 20#;
- PT _ (TS "#") -> cont 21#;
- PT _ (TS "!") -> cont 22#;
- PT _ (TS "*") -> cont 23#;
- PT _ (TS "+") -> cont 24#;
- PT _ (TS "++") -> cont 25#;
- PT _ (TS "\\") -> cont 26#;
- PT _ (TS "=>") -> cont 27#;
- PT _ (TS "_") -> cont 28#;
- PT _ (TS "$") -> cont 29#;
- PT _ (TS "/") -> cont 30#;
- PT _ (TS "Lin") -> cont 31#;
- PT _ (TS "PType") -> cont 32#;
- PT _ (TS "Str") -> cont 33#;
- PT _ (TS "Strs") -> cont 34#;
- PT _ (TS "Tok") -> cont 35#;
- PT _ (TS "Type") -> cont 36#;
- PT _ (TS "abstract") -> cont 37#;
- PT _ (TS "case") -> cont 38#;
- PT _ (TS "cat") -> cont 39#;
- PT _ (TS "concrete") -> cont 40#;
- PT _ (TS "data") -> cont 41#;
- PT _ (TS "def") -> cont 42#;
- PT _ (TS "flags") -> cont 43#;
- PT _ (TS "fn") -> cont 44#;
- PT _ (TS "fun") -> cont 45#;
- PT _ (TS "grammar") -> cont 46#;
- PT _ (TS "in") -> cont 47#;
- PT _ (TS "include") -> cont 48#;
- PT _ (TS "incomplete") -> cont 49#;
- PT _ (TS "instance") -> cont 50#;
- PT _ (TS "interface") -> cont 51#;
- PT _ (TS "let") -> cont 52#;
- PT _ (TS "lin") -> cont 53#;
- PT _ (TS "lincat") -> cont 54#;
- PT _ (TS "lindef") -> cont 55#;
- PT _ (TS "lintype") -> cont 56#;
- PT _ (TS "of") -> cont 57#;
- PT _ (TS "open") -> cont 58#;
- PT _ (TS "oper") -> cont 59#;
- PT _ (TS "out") -> cont 60#;
- PT _ (TS "package") -> cont 61#;
- PT _ (TS "param") -> cont 62#;
- PT _ (TS "pattern") -> cont 63#;
- PT _ (TS "pre") -> cont 64#;
- PT _ (TS "printname") -> cont 65#;
- PT _ (TS "resource") -> cont 66#;
- PT _ (TS "reuse") -> cont 67#;
- PT _ (TS "strs") -> cont 68#;
- PT _ (TS "table") -> cont 69#;
- PT _ (TS "tokenizer") -> cont 70#;
- PT _ (TS "transfer") -> cont 71#;
- PT _ (TS "union") -> cont 72#;
- PT _ (TS "var") -> cont 73#;
- PT _ (TS "variants") -> cont 74#;
- PT _ (TS "where") -> cont 75#;
- PT _ (TS "with") -> cont 76#;
- PT _ (TI happy_dollar_dollar) -> cont 77#;
- PT _ (TL happy_dollar_dollar) -> cont 78#;
- PT _ (TD happy_dollar_dollar) -> cont 79#;
- PT _ (T_LString happy_dollar_dollar) -> cont 80#;
- PT _ (T_PIdent _) -> cont 81#;
- _ -> cont 82#;
- _ -> happyError' (tk:tks)
- }
-
-happyError_ tk tks = happyError' (tk:tks)
-
-happyThen :: () => Err a -> (a -> Err b) -> Err b
-happyThen = (thenM)
-happyReturn :: () => a -> Err a
-happyReturn = (returnM)
-happyThen1 m k tks = (thenM) m (\a -> k a tks)
-happyReturn1 :: () => a -> b -> Err a
-happyReturn1 = \a tks -> (returnM) a
-happyError' :: () => [Token] -> Err a
-happyError' = happyError
-
-pGrammar tks = happySomeParser where
- happySomeParser = happyThen (happyParse 0# tks) (\x -> happyReturn (happyOut12 x))
-
-pModDef tks = happySomeParser where
- happySomeParser = happyThen (happyParse 1# tks) (\x -> happyReturn (happyOut14 x))
-
-pOldGrammar tks = happySomeParser where
- happySomeParser = happyThen (happyParse 2# tks) (\x -> happyReturn (happyOut87 x))
-
-pExp tks = happySomeParser where
- happySomeParser = happyThen (happyParse 3# tks) (\x -> happyReturn (happyOut60 x))
-
-happySeq = happyDontSeq
-
-
-returnM :: a -> Err a
-returnM = return
-
-thenM :: Err a -> (a -> Err b) -> Err b
-thenM = (>>=)
-
-happyError :: [Token] -> Err a
-happyError ts =
- Bad $ "syntax error at " ++ tokenPos ts ++
- case ts of
- [] -> []
- [Err _] -> " due to lexer error"
- _ -> " before " ++ unwords (map prToken (take 4 ts))
-
-myLexer = tokens
-{-# LINE 1 "GenericTemplate.hs" #-}
-{-# LINE 1 "<built-in>" #-}
-{-# LINE 1 "<command line>" #-}
-{-# LINE 1 "GenericTemplate.hs" #-}
--- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp
-
-{-# LINE 28 "GenericTemplate.hs" #-}
-
-
-data Happy_IntList = HappyCons Int# Happy_IntList
-
-
-
-
-
-{-# LINE 49 "GenericTemplate.hs" #-}
-
-{-# LINE 59 "GenericTemplate.hs" #-}
-
-{-# LINE 68 "GenericTemplate.hs" #-}
-
-infixr 9 `HappyStk`
-data HappyStk a = HappyStk a (HappyStk a)
-
------------------------------------------------------------------------------
--- starting the parse
-
-happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll
-
------------------------------------------------------------------------------
--- Accepting the parse
-
--- If the current token is 0#, it means we've just accepted a partial
--- parse (a %partial parser). We must ignore the saved token on the top of
--- the stack in this case.
-happyAccept 0# tk st sts (_ `HappyStk` ans `HappyStk` _) =
- happyReturn1 ans
-happyAccept j tk st sts (HappyStk ans _) =
- (happyTcHack j (happyTcHack st)) (happyReturn1 ans)
-
------------------------------------------------------------------------------
--- Arrays only: do the next action
-
-
-
-happyDoAction i tk st
- = {- nothing -}
-
-
- case action of
- 0# -> {- nothing -}
- happyFail i tk st
- -1# -> {- nothing -}
- happyAccept i tk st
- n | (n <# (0# :: Int#)) -> {- nothing -}
-
- (happyReduceArr ! rule) i tk st
- where rule = (I# ((negateInt# ((n +# (1# :: Int#))))))
- n -> {- nothing -}
-
-
- happyShift new_state i tk st
- where new_state = (n -# (1# :: Int#))
- where off = indexShortOffAddr happyActOffsets st
- off_i = (off +# i)
- check = if (off_i >=# (0# :: Int#))
- then (indexShortOffAddr happyCheck off_i ==# i)
- else False
- action | check = indexShortOffAddr happyTable off_i
- | otherwise = indexShortOffAddr happyDefActions st
-
-{-# LINE 127 "GenericTemplate.hs" #-}
-
-
-indexShortOffAddr (HappyA# arr) off =
-#if __GLASGOW_HASKELL__ > 500
- narrow16Int# i
-#elif __GLASGOW_HASKELL__ == 500
- intToInt16# i
-#else
- (i `iShiftL#` 16#) `iShiftRA#` 16#
-#endif
- where
-#if __GLASGOW_HASKELL__ >= 503
- i = word2Int# ((high `uncheckedShiftL#` 8#) `or#` low)
-#else
- i = word2Int# ((high `shiftL#` 8#) `or#` low)
-#endif
- high = int2Word# (ord# (indexCharOffAddr# arr (off' +# 1#)))
- low = int2Word# (ord# (indexCharOffAddr# arr off'))
- off' = off *# 2#
-
-
-
-
-
-data HappyAddr = HappyA# Addr#
-
-
-
-
------------------------------------------------------------------------------
--- HappyState data type (not arrays)
-
-{-# LINE 170 "GenericTemplate.hs" #-}
-
------------------------------------------------------------------------------
--- Shifting a token
-
-happyShift new_state 0# tk st sts stk@(x `HappyStk` _) =
- let i = (case unsafeCoerce# x of { (I# (i)) -> i }) in
--- trace "shifting the error token" $
- happyDoAction i tk new_state (HappyCons (st) (sts)) (stk)
-
-happyShift new_state i tk st sts stk =
- happyNewToken new_state (HappyCons (st) (sts)) ((happyInTok (tk))`HappyStk`stk)
-
--- happyReduce is specialised for the common cases.
-
-happySpecReduce_0 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_0 nt fn j tk st@((action)) sts stk
- = happyGoto nt j tk st (HappyCons (st) (sts)) (fn `HappyStk` stk)
-
-happySpecReduce_1 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_1 nt fn j tk _ sts@((HappyCons (st@(action)) (_))) (v1`HappyStk`stk')
- = let r = fn v1 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_2 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_2 nt fn j tk _ (HappyCons (_) (sts@((HappyCons (st@(action)) (_))))) (v1`HappyStk`v2`HappyStk`stk')
- = let r = fn v1 v2 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_3 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_3 nt fn j tk _ (HappyCons (_) ((HappyCons (_) (sts@((HappyCons (st@(action)) (_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
- = let r = fn v1 v2 v3 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happyReduce k i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyReduce k nt fn j tk st sts stk
- = case happyDrop (k -# (1# :: Int#)) sts of
- sts1@((HappyCons (st1@(action)) (_))) ->
- let r = fn stk in -- it doesn't hurt to always seq here...
- happyDoSeq r (happyGoto nt j tk st1 sts1 r)
-
-happyMonadReduce k nt fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyMonadReduce k nt fn j tk st sts stk =
- happyThen1 (fn stk tk) (\r -> happyGoto nt j tk st1 sts1 (r `HappyStk` drop_stk))
- where sts1@((HappyCons (st1@(action)) (_))) = happyDrop k (HappyCons (st) (sts))
- drop_stk = happyDropStk k stk
-
-happyMonad2Reduce k nt fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyMonad2Reduce k nt fn j tk st sts stk =
- happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))
- where sts1@((HappyCons (st1@(action)) (_))) = happyDrop k (HappyCons (st) (sts))
- drop_stk = happyDropStk k stk
-
- off = indexShortOffAddr happyGotoOffsets st1
- off_i = (off +# nt)
- new_state = indexShortOffAddr happyTable off_i
-
-
-
-
-happyDrop 0# l = l
-happyDrop n (HappyCons (_) (t)) = happyDrop (n -# (1# :: Int#)) t
-
-happyDropStk 0# l = l
-happyDropStk n (x `HappyStk` xs) = happyDropStk (n -# (1#::Int#)) xs
-
------------------------------------------------------------------------------
--- Moving to a new state after a reduction
-
-
-happyGoto nt j tk st =
- {- nothing -}
- happyDoAction j tk new_state
- where off = indexShortOffAddr happyGotoOffsets st
- off_i = (off +# nt)
- new_state = indexShortOffAddr happyTable off_i
-
-
-
-
------------------------------------------------------------------------------
--- Error recovery (0# is the error token)
-
--- parse error if we are in recovery and we fail again
-happyFail 0# tk old_st _ stk =
--- trace "failing" $
- happyError_ tk
-
-{- 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 0# tk old_st (HappyCons ((action)) (sts))
- (saved_tok `HappyStk` _ `HappyStk` stk) =
--- trace ("discarding state, depth " ++ show (length stk)) $
- happyDoAction 0# tk action sts ((saved_tok`HappyStk`stk))
--}
-
--- Enter error recovery: generate an error token,
--- save the old token and carry on.
-happyFail i tk (action) sts stk =
--- trace "entering error recovery" $
- happyDoAction 0# tk action sts ( (unsafeCoerce# (I# (i))) `HappyStk` stk)
-
--- Internal happy errors:
-
-notHappyAtAll = error "Internal Happy error\n"
-
------------------------------------------------------------------------------
--- Hack to get the typechecker to accept our action functions
-
-
-happyTcHack :: Int# -> a -> a
-happyTcHack x y = y
-{-# INLINE happyTcHack #-}
-
-
------------------------------------------------------------------------------
--- Seq-ing. If the --strict flag is given, then Happy emits
--- happySeq = happyDoSeq
--- otherwise it emits
--- happySeq = happyDontSeq
-
-happyDoSeq, happyDontSeq :: a -> b -> b
-happyDoSeq a b = a `seq` b
-happyDontSeq a b = b
-
------------------------------------------------------------------------------
--- 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 happyDoAction #-}
-{-# NOINLINE happyTable #-}
-{-# NOINLINE happyCheck #-}
-{-# NOINLINE happyActOffsets #-}
-{-# NOINLINE happyGotoOffsets #-}
-{-# NOINLINE happyDefActions #-}
-
-{-# 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.
+{-# OPTIONS -fglasgow-exts -cpp #-}
+{-# OPTIONS -fno-warn-incomplete-patterns -fno-warn-overlapping-patterns #-}
+ module GF.Source.ParGF (pGrammar, pModDef, pOldGrammar, pExp, pModHeader, myLexer) where --H
+import GF.Source.AbsGF --H
+import GF.Source.LexGF --H
+import GF.Infra.Ident --H
+import GF.Data.ErrM --H
+#if __GLASGOW_HASKELL__ >= 503
+import GHC.Exts
+#else
+import GlaExts
+#endif
+
+-- parser produced by Happy Version 1.17
+
+data HappyAbsSyn
+ = HappyTerminal Token
+ | HappyErrorToken Int
+ | HappyAbsSyn8 (Integer)
+ | HappyAbsSyn9 (String)
+ | HappyAbsSyn10 (Double)
+ | HappyAbsSyn11 (LString)
+ | HappyAbsSyn12 (PIdent)
+ | HappyAbsSyn13 (Grammar)
+ | HappyAbsSyn14 ([ModDef])
+ | HappyAbsSyn15 (ModDef)
+ | HappyAbsSyn16 (ConcSpec)
+ | HappyAbsSyn17 ([ConcSpec])
+ | HappyAbsSyn18 (ConcExp)
+ | HappyAbsSyn19 ([Transfer])
+ | HappyAbsSyn20 (Transfer)
+ | HappyAbsSyn22 (ModBody)
+ | HappyAbsSyn23 (ModType)
+ | HappyAbsSyn25 ([TopDef])
+ | HappyAbsSyn26 (Extend)
+ | HappyAbsSyn27 ([Open])
+ | HappyAbsSyn28 (Opens)
+ | HappyAbsSyn29 (Open)
+ | HappyAbsSyn30 (ComplMod)
+ | HappyAbsSyn31 (QualOpen)
+ | HappyAbsSyn32 ([Included])
+ | HappyAbsSyn33 (Included)
+ | HappyAbsSyn34 (Def)
+ | HappyAbsSyn35 (TopDef)
+ | HappyAbsSyn36 (CatDef)
+ | HappyAbsSyn37 (FunDef)
+ | HappyAbsSyn38 (DataDef)
+ | HappyAbsSyn39 (DataConstr)
+ | HappyAbsSyn40 ([DataConstr])
+ | HappyAbsSyn41 (ParDef)
+ | HappyAbsSyn42 (ParConstr)
+ | HappyAbsSyn43 (PrintDef)
+ | HappyAbsSyn44 (FlagDef)
+ | HappyAbsSyn45 ([Def])
+ | HappyAbsSyn46 ([CatDef])
+ | HappyAbsSyn47 ([FunDef])
+ | HappyAbsSyn48 ([DataDef])
+ | HappyAbsSyn49 ([ParDef])
+ | HappyAbsSyn50 ([PrintDef])
+ | HappyAbsSyn51 ([FlagDef])
+ | HappyAbsSyn52 ([ParConstr])
+ | HappyAbsSyn53 ([PIdent])
+ | HappyAbsSyn54 (Name)
+ | HappyAbsSyn55 ([Name])
+ | HappyAbsSyn56 (LocDef)
+ | HappyAbsSyn57 ([LocDef])
+ | HappyAbsSyn58 (Exp)
+ | HappyAbsSyn65 ([Exp])
+ | HappyAbsSyn66 (Exps)
+ | HappyAbsSyn67 (Patt)
+ | HappyAbsSyn70 (PattAss)
+ | HappyAbsSyn71 (Label)
+ | HappyAbsSyn72 (Sort)
+ | HappyAbsSyn73 ([PattAss])
+ | HappyAbsSyn74 ([Patt])
+ | HappyAbsSyn75 (Bind)
+ | HappyAbsSyn76 ([Bind])
+ | HappyAbsSyn77 (Decl)
+ | HappyAbsSyn78 (TupleComp)
+ | HappyAbsSyn79 (PattTupleComp)
+ | HappyAbsSyn80 ([TupleComp])
+ | HappyAbsSyn81 ([PattTupleComp])
+ | HappyAbsSyn82 (Case)
+ | HappyAbsSyn83 ([Case])
+ | HappyAbsSyn84 (Equation)
+ | HappyAbsSyn85 ([Equation])
+ | HappyAbsSyn86 (Altern)
+ | HappyAbsSyn87 ([Altern])
+ | HappyAbsSyn88 (DDecl)
+ | HappyAbsSyn89 ([DDecl])
+ | HappyAbsSyn90 (OldGrammar)
+ | HappyAbsSyn91 (Include)
+ | HappyAbsSyn92 (FileName)
+ | HappyAbsSyn93 ([FileName])
+
+type HappyReduction m =
+ Int#
+ -> (Token)
+ -> HappyState (Token) (HappyStk HappyAbsSyn -> [(Token)] -> m HappyAbsSyn)
+ -> [HappyState (Token) (HappyStk HappyAbsSyn -> [(Token)] -> m HappyAbsSyn)]
+ -> HappyStk HappyAbsSyn
+ -> [(Token)] -> m HappyAbsSyn
+
+action_0,
+ action_1,
+ action_2,
+ action_3,
+ action_4,
+ action_5,
+ action_6,
+ action_7,
+ action_8,
+ action_9,
+ action_10,
+ action_11,
+ action_12,
+ action_13,
+ action_14,
+ action_15,
+ action_16,
+ action_17,
+ action_18,
+ action_19,
+ action_20,
+ action_21,
+ action_22,
+ action_23,
+ action_24,
+ action_25,
+ action_26,
+ action_27,
+ action_28,
+ action_29,
+ action_30,
+ action_31,
+ action_32,
+ action_33,
+ action_34,
+ action_35,
+ action_36,
+ action_37,
+ action_38,
+ action_39,
+ action_40,
+ action_41,
+ action_42,
+ action_43,
+ action_44,
+ action_45,
+ action_46,
+ action_47,
+ action_48,
+ action_49,
+ action_50,
+ action_51,
+ action_52,
+ action_53,
+ action_54,
+ action_55,
+ action_56,
+ action_57,
+ action_58,
+ action_59,
+ action_60,
+ action_61,
+ action_62,
+ action_63,
+ action_64,
+ action_65,
+ action_66,
+ action_67,
+ action_68,
+ action_69,
+ action_70,
+ action_71,
+ action_72,
+ action_73,
+ action_74,
+ action_75,
+ action_76,
+ action_77,
+ action_78,
+ action_79,
+ action_80,
+ action_81,
+ action_82,
+ action_83,
+ action_84,
+ action_85,
+ action_86,
+ action_87,
+ action_88,
+ action_89,
+ action_90,
+ action_91,
+ action_92,
+ action_93,
+ action_94,
+ action_95,
+ action_96,
+ action_97,
+ action_98,
+ action_99,
+ action_100,
+ action_101,
+ action_102,
+ action_103,
+ action_104,
+ action_105,
+ action_106,
+ action_107,
+ action_108,
+ action_109,
+ action_110,
+ action_111,
+ action_112,
+ action_113,
+ action_114,
+ action_115,
+ action_116,
+ action_117,
+ action_118,
+ action_119,
+ action_120,
+ action_121,
+ action_122,
+ action_123,
+ action_124,
+ action_125,
+ action_126,
+ action_127,
+ action_128,
+ action_129,
+ action_130,
+ action_131,
+ action_132,
+ action_133,
+ action_134,
+ action_135,
+ action_136,
+ action_137,
+ action_138,
+ action_139,
+ action_140,
+ action_141,
+ action_142,
+ action_143,
+ action_144,
+ action_145,
+ action_146,
+ action_147,
+ action_148,
+ action_149,
+ action_150,
+ action_151,
+ action_152,
+ action_153,
+ action_154,
+ action_155,
+ action_156,
+ action_157,
+ action_158,
+ action_159,
+ action_160,
+ action_161,
+ action_162,
+ action_163,
+ action_164,
+ action_165,
+ action_166,
+ action_167,
+ action_168,
+ action_169,
+ action_170,
+ action_171,
+ action_172,
+ action_173,
+ action_174,
+ action_175,
+ action_176,
+ action_177,
+ action_178,
+ action_179,
+ action_180,
+ action_181,
+ action_182,
+ action_183,
+ action_184,
+ action_185,
+ action_186,
+ action_187,
+ action_188,
+ action_189,
+ action_190,
+ action_191,
+ action_192,
+ action_193,
+ action_194,
+ action_195,
+ action_196,
+ action_197,
+ action_198,
+ action_199,
+ action_200,
+ action_201,
+ action_202,
+ action_203,
+ action_204,
+ action_205,
+ action_206,
+ action_207,
+ action_208,
+ action_209,
+ action_210,
+ action_211,
+ action_212,
+ action_213,
+ action_214,
+ action_215,
+ action_216,
+ action_217,
+ action_218,
+ action_219,
+ action_220,
+ action_221,
+ action_222,
+ action_223,
+ action_224,
+ action_225,
+ action_226,
+ action_227,
+ action_228,
+ action_229,
+ action_230,
+ action_231,
+ action_232,
+ action_233,
+ action_234,
+ action_235,
+ action_236,
+ action_237,
+ action_238,
+ action_239,
+ action_240,
+ action_241,
+ action_242,
+ action_243,
+ action_244,
+ action_245,
+ action_246,
+ action_247,
+ action_248,
+ action_249,
+ action_250,
+ action_251,
+ action_252,
+ action_253,
+ action_254,
+ action_255,
+ action_256,
+ action_257,
+ action_258,
+ action_259,
+ action_260,
+ action_261,
+ action_262,
+ action_263,
+ action_264,
+ action_265,
+ action_266,
+ action_267,
+ action_268,
+ action_269,
+ action_270,
+ action_271,
+ action_272,
+ action_273,
+ action_274,
+ action_275,
+ action_276,
+ action_277,
+ action_278,
+ action_279,
+ action_280,
+ action_281,
+ action_282,
+ action_283,
+ action_284,
+ action_285,
+ action_286,
+ action_287,
+ action_288,
+ action_289,
+ action_290,
+ action_291,
+ action_292,
+ action_293,
+ action_294,
+ action_295,
+ action_296,
+ action_297,
+ action_298,
+ action_299,
+ action_300,
+ action_301,
+ action_302,
+ action_303,
+ action_304,
+ action_305,
+ action_306,
+ action_307,
+ action_308,
+ action_309,
+ action_310,
+ action_311,
+ action_312,
+ action_313,
+ action_314,
+ action_315,
+ action_316,
+ action_317,
+ action_318,
+ action_319,
+ action_320,
+ action_321,
+ action_322,
+ action_323,
+ action_324,
+ action_325,
+ action_326,
+ action_327,
+ action_328,
+ action_329,
+ action_330,
+ action_331,
+ action_332,
+ action_333,
+ action_334,
+ action_335,
+ action_336,
+ action_337,
+ action_338,
+ action_339,
+ action_340,
+ action_341,
+ action_342,
+ action_343,
+ action_344,
+ action_345,
+ action_346,
+ action_347,
+ action_348,
+ action_349,
+ action_350,
+ action_351,
+ action_352,
+ action_353,
+ action_354,
+ action_355,
+ action_356,
+ action_357,
+ action_358,
+ action_359,
+ action_360,
+ action_361,
+ action_362,
+ action_363,
+ action_364,
+ action_365,
+ action_366,
+ action_367,
+ action_368,
+ action_369,
+ action_370,
+ action_371,
+ action_372,
+ action_373,
+ action_374,
+ action_375,
+ action_376,
+ action_377,
+ action_378,
+ action_379,
+ action_380,
+ action_381,
+ action_382,
+ action_383,
+ action_384,
+ action_385,
+ action_386,
+ action_387,
+ action_388,
+ action_389,
+ action_390,
+ action_391,
+ action_392,
+ action_393,
+ action_394,
+ action_395,
+ action_396,
+ action_397,
+ action_398,
+ action_399,
+ action_400,
+ action_401,
+ action_402,
+ action_403,
+ action_404,
+ action_405,
+ action_406,
+ action_407,
+ action_408,
+ action_409,
+ action_410,
+ action_411,
+ action_412,
+ action_413,
+ action_414,
+ action_415,
+ action_416,
+ action_417,
+ action_418,
+ action_419,
+ action_420,
+ action_421,
+ action_422,
+ action_423,
+ action_424,
+ action_425,
+ action_426,
+ action_427,
+ action_428,
+ action_429,
+ action_430,
+ action_431,
+ action_432,
+ action_433,
+ action_434,
+ action_435,
+ action_436,
+ action_437,
+ action_438,
+ action_439,
+ action_440,
+ action_441,
+ action_442,
+ action_443,
+ action_444,
+ action_445,
+ action_446,
+ action_447,
+ action_448,
+ action_449,
+ action_450,
+ action_451,
+ action_452,
+ action_453,
+ action_454,
+ action_455,
+ action_456,
+ action_457,
+ action_458,
+ action_459,
+ action_460,
+ action_461,
+ action_462,
+ action_463,
+ action_464,
+ action_465,
+ action_466,
+ action_467,
+ action_468,
+ action_469,
+ action_470,
+ action_471,
+ action_472,
+ action_473,
+ action_474,
+ action_475,
+ action_476,
+ action_477,
+ action_478,
+ action_479,
+ action_480,
+ action_481,
+ action_482,
+ action_483,
+ action_484,
+ action_485,
+ action_486,
+ action_487,
+ action_488,
+ action_489,
+ action_490,
+ action_491,
+ action_492,
+ action_493,
+ action_494,
+ action_495,
+ action_496,
+ action_497,
+ action_498,
+ action_499,
+ action_500,
+ action_501,
+ action_502,
+ action_503,
+ action_504,
+ action_505,
+ action_506,
+ action_507,
+ action_508,
+ action_509,
+ action_510,
+ action_511,
+ action_512,
+ action_513,
+ action_514,
+ action_515,
+ action_516,
+ action_517,
+ action_518,
+ action_519,
+ action_520,
+ action_521,
+ action_522,
+ action_523,
+ action_524,
+ action_525,
+ action_526,
+ action_527,
+ action_528,
+ action_529,
+ action_530,
+ action_531,
+ action_532,
+ action_533,
+ action_534,
+ action_535,
+ action_536,
+ action_537,
+ action_538,
+ action_539,
+ action_540,
+ action_541,
+ action_542,
+ action_543,
+ action_544,
+ action_545,
+ action_546,
+ action_547 :: () => Int# -> HappyReduction (Err)
+
+happyReduce_5,
+ happyReduce_6,
+ happyReduce_7,
+ happyReduce_8,
+ happyReduce_9,
+ happyReduce_10,
+ happyReduce_11,
+ happyReduce_12,
+ happyReduce_13,
+ happyReduce_14,
+ happyReduce_15,
+ happyReduce_16,
+ happyReduce_17,
+ happyReduce_18,
+ happyReduce_19,
+ happyReduce_20,
+ happyReduce_21,
+ happyReduce_22,
+ happyReduce_23,
+ happyReduce_24,
+ happyReduce_25,
+ happyReduce_26,
+ happyReduce_27,
+ happyReduce_28,
+ happyReduce_29,
+ happyReduce_30,
+ happyReduce_31,
+ happyReduce_32,
+ happyReduce_33,
+ happyReduce_34,
+ happyReduce_35,
+ happyReduce_36,
+ happyReduce_37,
+ happyReduce_38,
+ happyReduce_39,
+ happyReduce_40,
+ happyReduce_41,
+ happyReduce_42,
+ happyReduce_43,
+ happyReduce_44,
+ happyReduce_45,
+ happyReduce_46,
+ happyReduce_47,
+ happyReduce_48,
+ happyReduce_49,
+ happyReduce_50,
+ happyReduce_51,
+ happyReduce_52,
+ happyReduce_53,
+ happyReduce_54,
+ happyReduce_55,
+ happyReduce_56,
+ happyReduce_57,
+ happyReduce_58,
+ happyReduce_59,
+ happyReduce_60,
+ happyReduce_61,
+ happyReduce_62,
+ happyReduce_63,
+ happyReduce_64,
+ happyReduce_65,
+ happyReduce_66,
+ happyReduce_67,
+ happyReduce_68,
+ happyReduce_69,
+ happyReduce_70,
+ happyReduce_71,
+ happyReduce_72,
+ happyReduce_73,
+ happyReduce_74,
+ happyReduce_75,
+ happyReduce_76,
+ happyReduce_77,
+ happyReduce_78,
+ happyReduce_79,
+ happyReduce_80,
+ happyReduce_81,
+ happyReduce_82,
+ happyReduce_83,
+ happyReduce_84,
+ happyReduce_85,
+ happyReduce_86,
+ happyReduce_87,
+ happyReduce_88,
+ happyReduce_89,
+ happyReduce_90,
+ happyReduce_91,
+ happyReduce_92,
+ happyReduce_93,
+ happyReduce_94,
+ happyReduce_95,
+ happyReduce_96,
+ happyReduce_97,
+ happyReduce_98,
+ happyReduce_99,
+ happyReduce_100,
+ happyReduce_101,
+ happyReduce_102,
+ happyReduce_103,
+ happyReduce_104,
+ happyReduce_105,
+ happyReduce_106,
+ happyReduce_107,
+ happyReduce_108,
+ happyReduce_109,
+ happyReduce_110,
+ happyReduce_111,
+ happyReduce_112,
+ happyReduce_113,
+ happyReduce_114,
+ happyReduce_115,
+ happyReduce_116,
+ happyReduce_117,
+ happyReduce_118,
+ happyReduce_119,
+ happyReduce_120,
+ happyReduce_121,
+ happyReduce_122,
+ happyReduce_123,
+ happyReduce_124,
+ happyReduce_125,
+ happyReduce_126,
+ happyReduce_127,
+ happyReduce_128,
+ happyReduce_129,
+ happyReduce_130,
+ happyReduce_131,
+ happyReduce_132,
+ happyReduce_133,
+ happyReduce_134,
+ happyReduce_135,
+ happyReduce_136,
+ happyReduce_137,
+ happyReduce_138,
+ happyReduce_139,
+ happyReduce_140,
+ happyReduce_141,
+ happyReduce_142,
+ happyReduce_143,
+ happyReduce_144,
+ happyReduce_145,
+ happyReduce_146,
+ happyReduce_147,
+ happyReduce_148,
+ happyReduce_149,
+ happyReduce_150,
+ happyReduce_151,
+ happyReduce_152,
+ happyReduce_153,
+ happyReduce_154,
+ happyReduce_155,
+ happyReduce_156,
+ happyReduce_157,
+ happyReduce_158,
+ happyReduce_159,
+ happyReduce_160,
+ happyReduce_161,
+ happyReduce_162,
+ happyReduce_163,
+ happyReduce_164,
+ happyReduce_165,
+ happyReduce_166,
+ happyReduce_167,
+ happyReduce_168,
+ happyReduce_169,
+ happyReduce_170,
+ happyReduce_171,
+ happyReduce_172,
+ happyReduce_173,
+ happyReduce_174,
+ happyReduce_175,
+ happyReduce_176,
+ happyReduce_177,
+ happyReduce_178,
+ happyReduce_179,
+ happyReduce_180,
+ happyReduce_181,
+ happyReduce_182,
+ happyReduce_183,
+ happyReduce_184,
+ happyReduce_185,
+ happyReduce_186,
+ happyReduce_187,
+ happyReduce_188,
+ happyReduce_189,
+ happyReduce_190,
+ happyReduce_191,
+ happyReduce_192,
+ happyReduce_193,
+ happyReduce_194,
+ happyReduce_195,
+ happyReduce_196,
+ happyReduce_197,
+ happyReduce_198,
+ happyReduce_199,
+ happyReduce_200,
+ happyReduce_201,
+ happyReduce_202,
+ happyReduce_203,
+ happyReduce_204,
+ happyReduce_205,
+ happyReduce_206,
+ happyReduce_207,
+ happyReduce_208,
+ happyReduce_209,
+ happyReduce_210,
+ happyReduce_211,
+ happyReduce_212,
+ happyReduce_213,
+ happyReduce_214,
+ happyReduce_215,
+ happyReduce_216,
+ happyReduce_217,
+ happyReduce_218,
+ happyReduce_219,
+ happyReduce_220,
+ happyReduce_221,
+ happyReduce_222,
+ happyReduce_223,
+ happyReduce_224,
+ happyReduce_225,
+ happyReduce_226,
+ happyReduce_227,
+ happyReduce_228,
+ happyReduce_229,
+ happyReduce_230,
+ happyReduce_231,
+ happyReduce_232,
+ happyReduce_233,
+ happyReduce_234,
+ happyReduce_235,
+ happyReduce_236,
+ happyReduce_237,
+ happyReduce_238,
+ happyReduce_239,
+ happyReduce_240,
+ happyReduce_241,
+ happyReduce_242,
+ happyReduce_243,
+ happyReduce_244,
+ happyReduce_245,
+ happyReduce_246,
+ happyReduce_247,
+ happyReduce_248,
+ happyReduce_249,
+ happyReduce_250,
+ happyReduce_251,
+ happyReduce_252,
+ happyReduce_253,
+ happyReduce_254,
+ happyReduce_255,
+ happyReduce_256,
+ happyReduce_257,
+ happyReduce_258,
+ happyReduce_259,
+ happyReduce_260,
+ happyReduce_261,
+ happyReduce_262,
+ happyReduce_263,
+ happyReduce_264,
+ happyReduce_265,
+ happyReduce_266,
+ happyReduce_267,
+ happyReduce_268,
+ happyReduce_269,
+ happyReduce_270,
+ happyReduce_271,
+ happyReduce_272,
+ happyReduce_273,
+ happyReduce_274 :: () => HappyReduction (Err)
+
+action_0 (13#) = happyGoto action_58
+action_0 (14#) = happyGoto action_59
+action_0 x = happyTcHack x happyReduce_11
+
+action_1 (139#) = happyShift action_57
+action_1 (142#) = happyShift action_9
+action_1 (15#) = happyGoto action_55
+action_1 (30#) = happyGoto action_56
+action_1 x = happyTcHack x happyReduce_60
+
+action_2 (141#) = happyShift action_54
+action_2 (90#) = happyGoto action_52
+action_2 (91#) = happyGoto action_53
+action_2 x = happyTcHack x happyReduce_265
+
+action_3 (96#) = happyShift action_24
+action_3 (98#) = happyShift action_25
+action_3 (104#) = happyShift action_26
+action_3 (109#) = happyShift action_27
+action_3 (110#) = happyShift action_28
+action_3 (111#) = happyShift action_29
+action_3 (114#) = happyShift action_30
+action_3 (119#) = happyShift action_31
+action_3 (124#) = happyShift action_32
+action_3 (125#) = happyShift action_33
+action_3 (126#) = happyShift action_34
+action_3 (127#) = happyShift action_35
+action_3 (128#) = happyShift action_36
+action_3 (129#) = happyShift action_37
+action_3 (131#) = happyShift action_38
+action_3 (134#) = happyShift action_39
+action_3 (137#) = happyShift action_40
+action_3 (140#) = happyShift action_41
+action_3 (145#) = happyShift action_42
+action_3 (156#) = happyShift action_43
+action_3 (157#) = happyShift action_44
+action_3 (161#) = happyShift action_45
+action_3 (162#) = happyShift action_46
+action_3 (167#) = happyShift action_47
+action_3 (170#) = happyShift action_6
+action_3 (171#) = happyShift action_48
+action_3 (172#) = happyShift action_49
+action_3 (173#) = happyShift action_50
+action_3 (174#) = happyShift action_51
+action_3 (8#) = happyGoto action_10
+action_3 (9#) = happyGoto action_11
+action_3 (10#) = happyGoto action_12
+action_3 (11#) = happyGoto action_13
+action_3 (12#) = happyGoto action_14
+action_3 (58#) = happyGoto action_15
+action_3 (59#) = happyGoto action_16
+action_3 (60#) = happyGoto action_17
+action_3 (61#) = happyGoto action_18
+action_3 (62#) = happyGoto action_19
+action_3 (63#) = happyGoto action_20
+action_3 (64#) = happyGoto action_21
+action_3 (72#) = happyGoto action_22
+action_3 (77#) = happyGoto action_23
+action_3 x = happyTcHack x happyFail
+
+action_4 (142#) = happyShift action_9
+action_4 (21#) = happyGoto action_7
+action_4 (30#) = happyGoto action_8
+action_4 x = happyTcHack x happyReduce_60
+
+action_5 (170#) = happyShift action_6
+action_5 x = happyTcHack x happyFail
+
+action_6 x = happyTcHack x happyReduce_5
+
+action_7 (1#) = happyAccept
+action_7 x = happyTcHack x happyFail
+
+action_8 (130#) = happyShift action_63
+action_8 (133#) = happyShift action_64
+action_8 (143#) = happyShift action_65
+action_8 (144#) = happyShift action_66
+action_8 (159#) = happyShift action_67
+action_8 (164#) = happyShift action_68
+action_8 (23#) = happyGoto action_137
+action_8 x = happyTcHack x happyFail
+
+action_9 x = happyTcHack x happyReduce_61
+
+action_10 x = happyTcHack x happyReduce_145
+
+action_11 x = happyTcHack x happyReduce_144
+
+action_12 x = happyTcHack x happyReduce_146
+
+action_13 x = happyTcHack x happyReduce_157
+
+action_14 (113#) = happyShift action_136
+action_14 x = happyTcHack x happyReduce_140
+
+action_15 x = happyTcHack x happyReduce_161
+
+action_16 (107#) = happyShift action_135
+action_16 x = happyTcHack x happyReduce_173
+
+action_17 (96#) = happyShift action_24
+action_17 (98#) = happyShift action_82
+action_17 (101#) = happyReduce_240
+action_17 (104#) = happyShift action_26
+action_17 (109#) = happyShift action_27
+action_17 (110#) = happyShift action_28
+action_17 (111#) = happyShift action_29
+action_17 (125#) = happyShift action_33
+action_17 (126#) = happyShift action_34
+action_17 (127#) = happyShift action_35
+action_17 (128#) = happyShift action_36
+action_17 (129#) = happyShift action_37
+action_17 (134#) = happyShift action_39
+action_17 (170#) = happyShift action_6
+action_17 (171#) = happyShift action_48
+action_17 (172#) = happyShift action_49
+action_17 (173#) = happyShift action_50
+action_17 (174#) = happyShift action_51
+action_17 (8#) = happyGoto action_10
+action_17 (9#) = happyGoto action_11
+action_17 (10#) = happyGoto action_12
+action_17 (11#) = happyGoto action_13
+action_17 (12#) = happyGoto action_79
+action_17 (58#) = happyGoto action_15
+action_17 (59#) = happyGoto action_134
+action_17 (72#) = happyGoto action_22
+action_17 x = happyTcHack x happyReduce_178
+
+action_18 (102#) = happyShift action_129
+action_18 (115#) = happyShift action_130
+action_18 (116#) = happyShift action_131
+action_18 (120#) = happyShift action_132
+action_18 (168#) = happyShift action_133
+action_18 x = happyTcHack x happyReduce_192
+
+action_19 (118#) = happyShift action_128
+action_19 x = happyTcHack x happyReduce_191
+
+action_20 (176#) = happyAccept
+action_20 x = happyTcHack x happyFail
+
+action_21 (117#) = happyShift action_127
+action_21 x = happyTcHack x happyReduce_180
+
+action_22 x = happyTcHack x happyReduce_143
+
+action_23 (101#) = happyShift action_126
+action_23 x = happyTcHack x happyFail
+
+action_24 (174#) = happyShift action_51
+action_24 (12#) = happyGoto action_124
+action_24 (53#) = happyGoto action_88
+action_24 (56#) = happyGoto action_89
+action_24 (57#) = happyGoto action_125
+action_24 x = happyTcHack x happyReduce_137
+
+action_25 (96#) = happyShift action_24
+action_25 (98#) = happyShift action_25
+action_25 (104#) = happyShift action_26
+action_25 (109#) = happyShift action_27
+action_25 (110#) = happyShift action_28
+action_25 (111#) = happyShift action_29
+action_25 (114#) = happyShift action_30
+action_25 (119#) = happyShift action_31
+action_25 (121#) = happyShift action_100
+action_25 (124#) = happyShift action_32
+action_25 (125#) = happyShift action_33
+action_25 (126#) = happyShift action_34
+action_25 (127#) = happyShift action_35
+action_25 (128#) = happyShift action_36
+action_25 (129#) = happyShift action_37
+action_25 (131#) = happyShift action_38
+action_25 (134#) = happyShift action_39
+action_25 (137#) = happyShift action_40
+action_25 (140#) = happyShift action_123
+action_25 (145#) = happyShift action_42
+action_25 (156#) = happyShift action_43
+action_25 (157#) = happyShift action_44
+action_25 (161#) = happyShift action_45
+action_25 (162#) = happyShift action_46
+action_25 (167#) = happyShift action_47
+action_25 (170#) = happyShift action_6
+action_25 (171#) = happyShift action_48
+action_25 (172#) = happyShift action_49
+action_25 (173#) = happyShift action_50
+action_25 (174#) = happyShift action_51
+action_25 (8#) = happyGoto action_10
+action_25 (9#) = happyGoto action_11
+action_25 (10#) = happyGoto action_12
+action_25 (11#) = happyGoto action_13
+action_25 (12#) = happyGoto action_120
+action_25 (58#) = happyGoto action_15
+action_25 (59#) = happyGoto action_16
+action_25 (60#) = happyGoto action_17
+action_25 (61#) = happyGoto action_18
+action_25 (62#) = happyGoto action_19
+action_25 (63#) = happyGoto action_121
+action_25 (64#) = happyGoto action_21
+action_25 (72#) = happyGoto action_22
+action_25 (75#) = happyGoto action_97
+action_25 (76#) = happyGoto action_122
+action_25 (77#) = happyGoto action_23
+action_25 x = happyTcHack x happyReduce_236
+
+action_26 (105#) = happyShift action_119
+action_26 (171#) = happyShift action_48
+action_26 (174#) = happyShift action_51
+action_26 (9#) = happyGoto action_117
+action_26 (12#) = happyGoto action_118
+action_26 x = happyTcHack x happyFail
+
+action_27 (174#) = happyShift action_51
+action_27 (12#) = happyGoto action_116
+action_27 x = happyTcHack x happyFail
+
+action_28 x = happyTcHack x happyReduce_147
+
+action_29 (96#) = happyShift action_24
+action_29 (98#) = happyShift action_25
+action_29 (104#) = happyShift action_26
+action_29 (109#) = happyShift action_27
+action_29 (110#) = happyShift action_28
+action_29 (111#) = happyShift action_29
+action_29 (114#) = happyShift action_30
+action_29 (119#) = happyShift action_31
+action_29 (124#) = happyShift action_32
+action_29 (125#) = happyShift action_33
+action_29 (126#) = happyShift action_34
+action_29 (127#) = happyShift action_35
+action_29 (128#) = happyShift action_36
+action_29 (129#) = happyShift action_37
+action_29 (131#) = happyShift action_38
+action_29 (134#) = happyShift action_39
+action_29 (137#) = happyShift action_40
+action_29 (140#) = happyShift action_41
+action_29 (145#) = happyShift action_42
+action_29 (156#) = happyShift action_43
+action_29 (157#) = happyShift action_44
+action_29 (161#) = happyShift action_45
+action_29 (162#) = happyShift action_46
+action_29 (167#) = happyShift action_47
+action_29 (170#) = happyShift action_6
+action_29 (171#) = happyShift action_48
+action_29 (172#) = happyShift action_49
+action_29 (173#) = happyShift action_50
+action_29 (174#) = happyShift action_51
+action_29 (8#) = happyGoto action_10
+action_29 (9#) = happyGoto action_11
+action_29 (10#) = happyGoto action_12
+action_29 (11#) = happyGoto action_13
+action_29 (12#) = happyGoto action_14
+action_29 (58#) = happyGoto action_15
+action_29 (59#) = happyGoto action_16
+action_29 (60#) = happyGoto action_17
+action_29 (61#) = happyGoto action_18
+action_29 (62#) = happyGoto action_19
+action_29 (63#) = happyGoto action_113
+action_29 (64#) = happyGoto action_21
+action_29 (72#) = happyGoto action_22
+action_29 (77#) = happyGoto action_23
+action_29 (78#) = happyGoto action_114
+action_29 (80#) = happyGoto action_115
+action_29 x = happyTcHack x happyReduce_243
+
+action_30 (96#) = happyShift action_106
+action_30 (98#) = happyShift action_107
+action_30 (104#) = happyShift action_108
+action_30 (110#) = happyShift action_109
+action_30 (111#) = happyShift action_110
+action_30 (114#) = happyShift action_111
+action_30 (121#) = happyShift action_112
+action_30 (170#) = happyShift action_6
+action_30 (171#) = happyShift action_48
+action_30 (172#) = happyShift action_49
+action_30 (174#) = happyShift action_51
+action_30 (8#) = happyGoto action_101
+action_30 (9#) = happyGoto action_102
+action_30 (10#) = happyGoto action_103
+action_30 (12#) = happyGoto action_104
+action_30 (67#) = happyGoto action_105
+action_30 x = happyTcHack x happyFail
+
+action_31 (119#) = happyShift action_99
+action_31 (121#) = happyShift action_100
+action_31 (174#) = happyShift action_51
+action_31 (12#) = happyGoto action_96
+action_31 (75#) = happyGoto action_97
+action_31 (76#) = happyGoto action_98
+action_31 x = happyTcHack x happyReduce_236
+
+action_32 (174#) = happyShift action_51
+action_32 (12#) = happyGoto action_95
+action_32 x = happyTcHack x happyFail
+
+action_33 x = happyTcHack x happyReduce_225
+
+action_34 x = happyTcHack x happyReduce_227
+
+action_35 x = happyTcHack x happyReduce_228
+
+action_36 x = happyTcHack x happyReduce_226
+
+action_37 x = happyTcHack x happyReduce_224
+
+action_38 (96#) = happyShift action_24
+action_38 (98#) = happyShift action_25
+action_38 (104#) = happyShift action_26
+action_38 (109#) = happyShift action_27
+action_38 (110#) = happyShift action_28
+action_38 (111#) = happyShift action_29
+action_38 (114#) = happyShift action_30
+action_38 (119#) = happyShift action_31
+action_38 (124#) = happyShift action_32
+action_38 (125#) = happyShift action_33
+action_38 (126#) = happyShift action_34
+action_38 (127#) = happyShift action_35
+action_38 (128#) = happyShift action_36
+action_38 (129#) = happyShift action_37
+action_38 (131#) = happyShift action_38
+action_38 (134#) = happyShift action_39
+action_38 (137#) = happyShift action_40
+action_38 (140#) = happyShift action_41
+action_38 (145#) = happyShift action_42
+action_38 (156#) = happyShift action_43
+action_38 (157#) = happyShift action_44
+action_38 (161#) = happyShift action_45
+action_38 (162#) = happyShift action_46
+action_38 (167#) = happyShift action_47
+action_38 (170#) = happyShift action_6
+action_38 (171#) = happyShift action_48
+action_38 (172#) = happyShift action_49
+action_38 (173#) = happyShift action_50
+action_38 (174#) = happyShift action_51
+action_38 (8#) = happyGoto action_10
+action_38 (9#) = happyGoto action_11
+action_38 (10#) = happyGoto action_12
+action_38 (11#) = happyGoto action_13
+action_38 (12#) = happyGoto action_14
+action_38 (58#) = happyGoto action_15
+action_38 (59#) = happyGoto action_16
+action_38 (60#) = happyGoto action_17
+action_38 (61#) = happyGoto action_18
+action_38 (62#) = happyGoto action_19
+action_38 (63#) = happyGoto action_94
+action_38 (64#) = happyGoto action_21
+action_38 (72#) = happyGoto action_22
+action_38 (77#) = happyGoto action_23
+action_38 x = happyTcHack x happyFail
+
+action_39 x = happyTcHack x happyReduce_149
+
+action_40 (96#) = happyShift action_93
+action_40 x = happyTcHack x happyFail
+
+action_41 (96#) = happyShift action_24
+action_41 (98#) = happyShift action_82
+action_41 (104#) = happyShift action_26
+action_41 (109#) = happyShift action_27
+action_41 (110#) = happyShift action_28
+action_41 (111#) = happyShift action_29
+action_41 (125#) = happyShift action_33
+action_41 (126#) = happyShift action_34
+action_41 (127#) = happyShift action_35
+action_41 (128#) = happyShift action_36
+action_41 (129#) = happyShift action_37
+action_41 (134#) = happyShift action_39
+action_41 (170#) = happyShift action_6
+action_41 (171#) = happyShift action_48
+action_41 (172#) = happyShift action_49
+action_41 (173#) = happyShift action_50
+action_41 (174#) = happyShift action_51
+action_41 (8#) = happyGoto action_10
+action_41 (9#) = happyGoto action_11
+action_41 (10#) = happyGoto action_12
+action_41 (11#) = happyGoto action_13
+action_41 (12#) = happyGoto action_79
+action_41 (58#) = happyGoto action_15
+action_41 (59#) = happyGoto action_92
+action_41 (72#) = happyGoto action_22
+action_41 x = happyTcHack x happyFail
+
+action_42 (96#) = happyShift action_91
+action_42 (174#) = happyShift action_51
+action_42 (12#) = happyGoto action_87
+action_42 (53#) = happyGoto action_88
+action_42 (56#) = happyGoto action_89
+action_42 (57#) = happyGoto action_90
+action_42 x = happyTcHack x happyReduce_137
+
+action_43 (96#) = happyShift action_24
+action_43 (98#) = happyShift action_82
+action_43 (104#) = happyShift action_26
+action_43 (109#) = happyShift action_27
+action_43 (110#) = happyShift action_28
+action_43 (111#) = happyShift action_29
+action_43 (125#) = happyShift action_33
+action_43 (126#) = happyShift action_34
+action_43 (127#) = happyShift action_35
+action_43 (128#) = happyShift action_36
+action_43 (129#) = happyShift action_37
+action_43 (134#) = happyShift action_39
+action_43 (170#) = happyShift action_6
+action_43 (171#) = happyShift action_48
+action_43 (172#) = happyShift action_49
+action_43 (173#) = happyShift action_50
+action_43 (174#) = happyShift action_51
+action_43 (8#) = happyGoto action_10
+action_43 (9#) = happyGoto action_11
+action_43 (10#) = happyGoto action_12
+action_43 (11#) = happyGoto action_13
+action_43 (12#) = happyGoto action_79
+action_43 (58#) = happyGoto action_15
+action_43 (59#) = happyGoto action_86
+action_43 (72#) = happyGoto action_22
+action_43 x = happyTcHack x happyFail
+
+action_44 (96#) = happyShift action_85
+action_44 x = happyTcHack x happyFail
+
+action_45 (96#) = happyShift action_84
+action_45 x = happyTcHack x happyFail
+
+action_46 (96#) = happyShift action_81
+action_46 (98#) = happyShift action_82
+action_46 (104#) = happyShift action_26
+action_46 (109#) = happyShift action_83
+action_46 (110#) = happyShift action_28
+action_46 (111#) = happyShift action_29
+action_46 (125#) = happyShift action_33
+action_46 (126#) = happyShift action_34
+action_46 (127#) = happyShift action_35
+action_46 (128#) = happyShift action_36
+action_46 (129#) = happyShift action_37
+action_46 (134#) = happyShift action_39
+action_46 (170#) = happyShift action_6
+action_46 (171#) = happyShift action_48
+action_46 (172#) = happyShift action_49
+action_46 (173#) = happyShift action_50
+action_46 (174#) = happyShift action_51
+action_46 (8#) = happyGoto action_10
+action_46 (9#) = happyGoto action_11
+action_46 (10#) = happyGoto action_12
+action_46 (11#) = happyGoto action_13
+action_46 (12#) = happyGoto action_79
+action_46 (58#) = happyGoto action_80
+action_46 (72#) = happyGoto action_22
+action_46 x = happyTcHack x happyFail
+
+action_47 (96#) = happyShift action_78
+action_47 x = happyTcHack x happyFail
+
+action_48 x = happyTcHack x happyReduce_6
+
+action_49 x = happyTcHack x happyReduce_7
+
+action_50 x = happyTcHack x happyReduce_8
+
+action_51 x = happyTcHack x happyReduce_9
+
+action_52 (176#) = happyAccept
+action_52 x = happyTcHack x happyFail
+
+action_53 (25#) = happyGoto action_77
+action_53 x = happyTcHack x happyReduce_48
+
+action_54 (106#) = happyShift action_74
+action_54 (107#) = happyShift action_75
+action_54 (123#) = happyShift action_76
+action_54 (171#) = happyShift action_48
+action_54 (174#) = happyShift action_51
+action_54 (9#) = happyGoto action_70
+action_54 (12#) = happyGoto action_71
+action_54 (92#) = happyGoto action_72
+action_54 (93#) = happyGoto action_73
+action_54 x = happyTcHack x happyFail
+
+action_55 (94#) = happyShift action_69
+action_55 (176#) = happyAccept
+action_55 x = happyTcHack x happyFail
+
+action_56 (130#) = happyShift action_63
+action_56 (133#) = happyShift action_64
+action_56 (143#) = happyShift action_65
+action_56 (144#) = happyShift action_66
+action_56 (159#) = happyShift action_67
+action_56 (164#) = happyShift action_68
+action_56 (23#) = happyGoto action_62
+action_56 x = happyTcHack x happyFail
+
+action_57 (174#) = happyShift action_51
+action_57 (12#) = happyGoto action_61
+action_57 x = happyTcHack x happyFail
+
+action_58 (176#) = happyAccept
+action_58 x = happyTcHack x happyFail
+
+action_59 (139#) = happyShift action_57
+action_59 (142#) = happyShift action_9
+action_59 (176#) = happyReduce_10
+action_59 (15#) = happyGoto action_60
+action_59 (30#) = happyGoto action_56
+action_59 x = happyTcHack x happyReduce_60
+
+action_60 (94#) = happyShift action_69
+action_60 x = happyTcHack x happyReduce_12
+
+action_61 (95#) = happyShift action_239
+action_61 x = happyTcHack x happyFail
+
+action_62 (95#) = happyShift action_238
+action_62 x = happyTcHack x happyFail
+
+action_63 (174#) = happyShift action_51
+action_63 (12#) = happyGoto action_237
+action_63 x = happyTcHack x happyFail
+
+action_64 (174#) = happyShift action_51
+action_64 (12#) = happyGoto action_236
+action_64 x = happyTcHack x happyFail
+
+action_65 (174#) = happyShift action_51
+action_65 (12#) = happyGoto action_235
+action_65 x = happyTcHack x happyFail
+
+action_66 (174#) = happyShift action_51
+action_66 (12#) = happyGoto action_234
+action_66 x = happyTcHack x happyFail
+
+action_67 (174#) = happyShift action_51
+action_67 (12#) = happyGoto action_233
+action_67 x = happyTcHack x happyFail
+
+action_68 (174#) = happyShift action_51
+action_68 (12#) = happyGoto action_232
+action_68 x = happyTcHack x happyFail
+
+action_69 x = happyTcHack x happyReduce_13
+
+action_70 x = happyTcHack x happyReduce_267
+
+action_71 (106#) = happyShift action_74
+action_71 (107#) = happyShift action_75
+action_71 (123#) = happyShift action_76
+action_71 (171#) = happyShift action_48
+action_71 (174#) = happyShift action_51
+action_71 (9#) = happyGoto action_70
+action_71 (12#) = happyGoto action_71
+action_71 (92#) = happyGoto action_231
+action_71 x = happyTcHack x happyReduce_268
+
+action_72 (94#) = happyShift action_230
+action_72 x = happyTcHack x happyFail
+
+action_73 x = happyTcHack x happyReduce_266
+
+action_74 (106#) = happyShift action_74
+action_74 (107#) = happyShift action_75
+action_74 (123#) = happyShift action_76
+action_74 (171#) = happyShift action_48
+action_74 (174#) = happyShift action_51
+action_74 (9#) = happyGoto action_70
+action_74 (12#) = happyGoto action_71
+action_74 (92#) = happyGoto action_229
+action_74 x = happyTcHack x happyFail
+
+action_75 (106#) = happyShift action_74
+action_75 (107#) = happyShift action_75
+action_75 (123#) = happyShift action_76
+action_75 (171#) = happyShift action_48
+action_75 (174#) = happyShift action_51
+action_75 (9#) = happyGoto action_70
+action_75 (12#) = happyGoto action_71
+action_75 (92#) = happyGoto action_228
+action_75 x = happyTcHack x happyFail
+
+action_76 (106#) = happyShift action_74
+action_76 (107#) = happyShift action_75
+action_76 (123#) = happyShift action_76
+action_76 (171#) = happyShift action_48
+action_76 (174#) = happyShift action_51
+action_76 (9#) = happyGoto action_70
+action_76 (12#) = happyGoto action_71
+action_76 (92#) = happyGoto action_227
+action_76 x = happyTcHack x happyFail
+
+action_77 (132#) = happyShift action_210
+action_77 (134#) = happyShift action_211
+action_77 (135#) = happyShift action_212
+action_77 (136#) = happyShift action_213
+action_77 (138#) = happyShift action_214
+action_77 (146#) = happyShift action_215
+action_77 (147#) = happyShift action_216
+action_77 (148#) = happyShift action_217
+action_77 (149#) = happyShift action_218
+action_77 (152#) = happyShift action_219
+action_77 (154#) = happyShift action_220
+action_77 (155#) = happyShift action_221
+action_77 (156#) = happyShift action_222
+action_77 (158#) = happyShift action_223
+action_77 (163#) = happyShift action_224
+action_77 (164#) = happyShift action_225
+action_77 (166#) = happyShift action_226
+action_77 (35#) = happyGoto action_209
+action_77 x = happyTcHack x happyReduce_264
+
+action_78 (96#) = happyShift action_24
+action_78 (98#) = happyShift action_25
+action_78 (104#) = happyShift action_26
+action_78 (109#) = happyShift action_27
+action_78 (110#) = happyShift action_28
+action_78 (111#) = happyShift action_29
+action_78 (114#) = happyShift action_30
+action_78 (119#) = happyShift action_31
+action_78 (124#) = happyShift action_32
+action_78 (125#) = happyShift action_33
+action_78 (126#) = happyShift action_34
+action_78 (127#) = happyShift action_35
+action_78 (128#) = happyShift action_36
+action_78 (129#) = happyShift action_37
+action_78 (131#) = happyShift action_38
+action_78 (134#) = happyShift action_39
+action_78 (137#) = happyShift action_40
+action_78 (140#) = happyShift action_41
+action_78 (145#) = happyShift action_42
+action_78 (156#) = happyShift action_43
+action_78 (157#) = happyShift action_44
+action_78 (161#) = happyShift action_45
+action_78 (162#) = happyShift action_46
+action_78 (167#) = happyShift action_47
+action_78 (170#) = happyShift action_6
+action_78 (171#) = happyShift action_48
+action_78 (172#) = happyShift action_49
+action_78 (173#) = happyShift action_50
+action_78 (174#) = happyShift action_51
+action_78 (8#) = happyGoto action_10
+action_78 (9#) = happyGoto action_11
+action_78 (10#) = happyGoto action_12
+action_78 (11#) = happyGoto action_13
+action_78 (12#) = happyGoto action_14
+action_78 (58#) = happyGoto action_15
+action_78 (59#) = happyGoto action_16
+action_78 (60#) = happyGoto action_17
+action_78 (61#) = happyGoto action_18
+action_78 (62#) = happyGoto action_19
+action_78 (63#) = happyGoto action_199
+action_78 (64#) = happyGoto action_21
+action_78 (65#) = happyGoto action_208
+action_78 (72#) = happyGoto action_22
+action_78 (77#) = happyGoto action_23
+action_78 x = happyTcHack x happyReduce_193
+
+action_79 x = happyTcHack x happyReduce_140
+
+action_80 (96#) = happyShift action_206
+action_80 (104#) = happyShift action_207
+action_80 x = happyTcHack x happyFail
+
+action_81 (96#) = happyShift action_106
+action_81 (98#) = happyShift action_107
+action_81 (104#) = happyShift action_108
+action_81 (106#) = happyShift action_176
+action_81 (110#) = happyShift action_109
+action_81 (111#) = happyShift action_110
+action_81 (114#) = happyShift action_111
+action_81 (121#) = happyShift action_112
+action_81 (170#) = happyShift action_6
+action_81 (171#) = happyShift action_48
+action_81 (172#) = happyShift action_49
+action_81 (174#) = happyShift action_51
+action_81 (8#) = happyGoto action_101
+action_81 (9#) = happyGoto action_102
+action_81 (10#) = happyGoto action_103
+action_81 (12#) = happyGoto action_202
+action_81 (53#) = happyGoto action_88
+action_81 (56#) = happyGoto action_89
+action_81 (57#) = happyGoto action_125
+action_81 (67#) = happyGoto action_171
+action_81 (68#) = happyGoto action_172
+action_81 (69#) = happyGoto action_203
+action_81 (82#) = happyGoto action_204
+action_81 (83#) = happyGoto action_205
+action_81 x = happyTcHack x happyReduce_137
+
+action_82 (96#) = happyShift action_24
+action_82 (98#) = happyShift action_25
+action_82 (104#) = happyShift action_26
+action_82 (109#) = happyShift action_27
+action_82 (110#) = happyShift action_28
+action_82 (111#) = happyShift action_29
+action_82 (114#) = happyShift action_30
+action_82 (119#) = happyShift action_31
+action_82 (124#) = happyShift action_32
+action_82 (125#) = happyShift action_33
+action_82 (126#) = happyShift action_34
+action_82 (127#) = happyShift action_35
+action_82 (128#) = happyShift action_36
+action_82 (129#) = happyShift action_37
+action_82 (131#) = happyShift action_38
+action_82 (134#) = happyShift action_39
+action_82 (137#) = happyShift action_40
+action_82 (140#) = happyShift action_123
+action_82 (145#) = happyShift action_42
+action_82 (156#) = happyShift action_43
+action_82 (157#) = happyShift action_44
+action_82 (161#) = happyShift action_45
+action_82 (162#) = happyShift action_46
+action_82 (167#) = happyShift action_47
+action_82 (170#) = happyShift action_6
+action_82 (171#) = happyShift action_48
+action_82 (172#) = happyShift action_49
+action_82 (173#) = happyShift action_50
+action_82 (174#) = happyShift action_51
+action_82 (8#) = happyGoto action_10
+action_82 (9#) = happyGoto action_11
+action_82 (10#) = happyGoto action_12
+action_82 (11#) = happyGoto action_13
+action_82 (12#) = happyGoto action_14
+action_82 (58#) = happyGoto action_15
+action_82 (59#) = happyGoto action_16
+action_82 (60#) = happyGoto action_17
+action_82 (61#) = happyGoto action_18
+action_82 (62#) = happyGoto action_19
+action_82 (63#) = happyGoto action_121
+action_82 (64#) = happyGoto action_21
+action_82 (72#) = happyGoto action_22
+action_82 (77#) = happyGoto action_23
+action_82 x = happyTcHack x happyFail
+
+action_83 (174#) = happyShift action_51
+action_83 (12#) = happyGoto action_201
+action_83 x = happyTcHack x happyFail
+
+action_84 (96#) = happyShift action_24
+action_84 (98#) = happyShift action_25
+action_84 (104#) = happyShift action_26
+action_84 (109#) = happyShift action_27
+action_84 (110#) = happyShift action_28
+action_84 (111#) = happyShift action_29
+action_84 (114#) = happyShift action_30
+action_84 (119#) = happyShift action_31
+action_84 (124#) = happyShift action_32
+action_84 (125#) = happyShift action_33
+action_84 (126#) = happyShift action_34
+action_84 (127#) = happyShift action_35
+action_84 (128#) = happyShift action_36
+action_84 (129#) = happyShift action_37
+action_84 (131#) = happyShift action_38
+action_84 (134#) = happyShift action_39
+action_84 (137#) = happyShift action_40
+action_84 (140#) = happyShift action_41
+action_84 (145#) = happyShift action_42
+action_84 (156#) = happyShift action_43
+action_84 (157#) = happyShift action_44
+action_84 (161#) = happyShift action_45
+action_84 (162#) = happyShift action_46
+action_84 (167#) = happyShift action_47
+action_84 (170#) = happyShift action_6
+action_84 (171#) = happyShift action_48
+action_84 (172#) = happyShift action_49
+action_84 (173#) = happyShift action_50
+action_84 (174#) = happyShift action_51
+action_84 (8#) = happyGoto action_10
+action_84 (9#) = happyGoto action_11
+action_84 (10#) = happyGoto action_12
+action_84 (11#) = happyGoto action_13
+action_84 (12#) = happyGoto action_14
+action_84 (58#) = happyGoto action_15
+action_84 (59#) = happyGoto action_16
+action_84 (60#) = happyGoto action_17
+action_84 (61#) = happyGoto action_18
+action_84 (62#) = happyGoto action_19
+action_84 (63#) = happyGoto action_199
+action_84 (64#) = happyGoto action_21
+action_84 (65#) = happyGoto action_200
+action_84 (72#) = happyGoto action_22
+action_84 (77#) = happyGoto action_23
+action_84 x = happyTcHack x happyReduce_193
+
+action_85 (96#) = happyShift action_24
+action_85 (98#) = happyShift action_25
+action_85 (104#) = happyShift action_26
+action_85 (109#) = happyShift action_27
+action_85 (110#) = happyShift action_28
+action_85 (111#) = happyShift action_29
+action_85 (114#) = happyShift action_30
+action_85 (119#) = happyShift action_31
+action_85 (124#) = happyShift action_32
+action_85 (125#) = happyShift action_33
+action_85 (126#) = happyShift action_34
+action_85 (127#) = happyShift action_35
+action_85 (128#) = happyShift action_36
+action_85 (129#) = happyShift action_37
+action_85 (131#) = happyShift action_38
+action_85 (134#) = happyShift action_39
+action_85 (137#) = happyShift action_40
+action_85 (140#) = happyShift action_41
+action_85 (145#) = happyShift action_42
+action_85 (156#) = happyShift action_43
+action_85 (157#) = happyShift action_44
+action_85 (161#) = happyShift action_45
+action_85 (162#) = happyShift action_46
+action_85 (167#) = happyShift action_47
+action_85 (170#) = happyShift action_6
+action_85 (171#) = happyShift action_48
+action_85 (172#) = happyShift action_49
+action_85 (173#) = happyShift action_50
+action_85 (174#) = happyShift action_51
+action_85 (8#) = happyGoto action_10
+action_85 (9#) = happyGoto action_11
+action_85 (10#) = happyGoto action_12
+action_85 (11#) = happyGoto action_13
+action_85 (12#) = happyGoto action_14
+action_85 (58#) = happyGoto action_15
+action_85 (59#) = happyGoto action_16
+action_85 (60#) = happyGoto action_17
+action_85 (61#) = happyGoto action_18
+action_85 (62#) = happyGoto action_19
+action_85 (63#) = happyGoto action_198
+action_85 (64#) = happyGoto action_21
+action_85 (72#) = happyGoto action_22
+action_85 (77#) = happyGoto action_23
+action_85 x = happyTcHack x happyFail
+
+action_86 (107#) = happyShift action_135
+action_86 x = happyTcHack x happyReduce_172
+
+action_87 (103#) = happyShift action_156
+action_87 x = happyTcHack x happyReduce_128
+
+action_88 (95#) = happyShift action_196
+action_88 (100#) = happyShift action_197
+action_88 x = happyTcHack x happyFail
+
+action_89 (94#) = happyShift action_195
+action_89 x = happyTcHack x happyReduce_138
+
+action_90 (140#) = happyShift action_194
+action_90 x = happyTcHack x happyFail
+
+action_91 (174#) = happyShift action_51
+action_91 (12#) = happyGoto action_87
+action_91 (53#) = happyGoto action_88
+action_91 (56#) = happyGoto action_89
+action_91 (57#) = happyGoto action_193
+action_91 x = happyTcHack x happyReduce_137
+
+action_92 (107#) = happyShift action_135
+action_92 (171#) = happyShift action_48
+action_92 (9#) = happyGoto action_192
+action_92 x = happyTcHack x happyFail
+
+action_93 (96#) = happyShift action_106
+action_93 (98#) = happyShift action_107
+action_93 (104#) = happyShift action_108
+action_93 (110#) = happyShift action_109
+action_93 (111#) = happyShift action_110
+action_93 (114#) = happyShift action_111
+action_93 (121#) = happyShift action_112
+action_93 (170#) = happyShift action_6
+action_93 (171#) = happyShift action_48
+action_93 (172#) = happyShift action_49
+action_93 (174#) = happyShift action_51
+action_93 (8#) = happyGoto action_101
+action_93 (9#) = happyGoto action_102
+action_93 (10#) = happyGoto action_103
+action_93 (12#) = happyGoto action_104
+action_93 (67#) = happyGoto action_188
+action_93 (74#) = happyGoto action_189
+action_93 (84#) = happyGoto action_190
+action_93 (85#) = happyGoto action_191
+action_93 x = happyTcHack x happyReduce_253
+
+action_94 (150#) = happyShift action_187
+action_94 x = happyTcHack x happyFail
+
+action_95 x = happyTcHack x happyReduce_174
+
+action_96 x = happyTcHack x happyReduce_234
+
+action_97 (103#) = happyShift action_186
+action_97 x = happyTcHack x happyReduce_237
+
+action_98 (101#) = happyShift action_185
+action_98 x = happyTcHack x happyFail
+
+action_99 (121#) = happyShift action_100
+action_99 (174#) = happyShift action_51
+action_99 (12#) = happyGoto action_96
+action_99 (75#) = happyGoto action_97
+action_99 (76#) = happyGoto action_184
+action_99 x = happyTcHack x happyReduce_236
+
+action_100 x = happyTcHack x happyReduce_235
+
+action_101 x = happyTcHack x happyReduce_206
+
+action_102 x = happyTcHack x happyReduce_208
+
+action_103 x = happyTcHack x happyReduce_207
+
+action_104 (107#) = happyShift action_183
+action_104 x = happyTcHack x happyReduce_203
+
+action_105 x = happyTcHack x happyReduce_171
+
+action_106 (174#) = happyShift action_51
+action_106 (12#) = happyGoto action_179
+action_106 (53#) = happyGoto action_180
+action_106 (70#) = happyGoto action_181
+action_106 (73#) = happyGoto action_182
+action_106 x = happyTcHack x happyReduce_229
+
+action_107 (96#) = happyShift action_106
+action_107 (98#) = happyShift action_107
+action_107 (104#) = happyShift action_108
+action_107 (106#) = happyShift action_176
+action_107 (110#) = happyShift action_109
+action_107 (111#) = happyShift action_110
+action_107 (114#) = happyShift action_111
+action_107 (121#) = happyShift action_112
+action_107 (170#) = happyShift action_6
+action_107 (171#) = happyShift action_48
+action_107 (172#) = happyShift action_49
+action_107 (174#) = happyShift action_51
+action_107 (8#) = happyGoto action_101
+action_107 (9#) = happyGoto action_102
+action_107 (10#) = happyGoto action_103
+action_107 (12#) = happyGoto action_170
+action_107 (67#) = happyGoto action_171
+action_107 (68#) = happyGoto action_172
+action_107 (69#) = happyGoto action_178
+action_107 x = happyTcHack x happyFail
+
+action_108 (171#) = happyShift action_48
+action_108 (9#) = happyGoto action_177
+action_108 x = happyTcHack x happyFail
+
+action_109 x = happyTcHack x happyReduce_198
+
+action_110 (96#) = happyShift action_106
+action_110 (98#) = happyShift action_107
+action_110 (104#) = happyShift action_108
+action_110 (106#) = happyShift action_176
+action_110 (110#) = happyShift action_109
+action_110 (111#) = happyShift action_110
+action_110 (114#) = happyShift action_111
+action_110 (121#) = happyShift action_112
+action_110 (170#) = happyShift action_6
+action_110 (171#) = happyShift action_48
+action_110 (172#) = happyShift action_49
+action_110 (174#) = happyShift action_51
+action_110 (8#) = happyGoto action_101
+action_110 (9#) = happyGoto action_102
+action_110 (10#) = happyGoto action_103
+action_110 (12#) = happyGoto action_170
+action_110 (67#) = happyGoto action_171
+action_110 (68#) = happyGoto action_172
+action_110 (69#) = happyGoto action_173
+action_110 (79#) = happyGoto action_174
+action_110 (81#) = happyGoto action_175
+action_110 x = happyTcHack x happyReduce_246
+
+action_111 (174#) = happyShift action_51
+action_111 (12#) = happyGoto action_169
+action_111 x = happyTcHack x happyFail
+
+action_112 x = happyTcHack x happyReduce_202
+
+action_113 (100#) = happyShift action_168
+action_113 x = happyTcHack x happyReduce_241
+
+action_114 (103#) = happyShift action_167
+action_114 x = happyTcHack x happyReduce_244
+
+action_115 (112#) = happyShift action_166
+action_115 x = happyTcHack x happyFail
+
+action_116 (107#) = happyShift action_164
+action_116 (109#) = happyShift action_165
+action_116 x = happyTcHack x happyFail
+
+action_117 (105#) = happyShift action_163
+action_117 x = happyTcHack x happyFail
+
+action_118 (96#) = happyShift action_140
+action_118 (98#) = happyShift action_82
+action_118 (104#) = happyShift action_26
+action_118 (109#) = happyShift action_83
+action_118 (110#) = happyShift action_28
+action_118 (111#) = happyShift action_29
+action_118 (125#) = happyShift action_33
+action_118 (126#) = happyShift action_34
+action_118 (127#) = happyShift action_35
+action_118 (128#) = happyShift action_36
+action_118 (129#) = happyShift action_37
+action_118 (134#) = happyShift action_39
+action_118 (170#) = happyShift action_6
+action_118 (171#) = happyShift action_48
+action_118 (172#) = happyShift action_49
+action_118 (173#) = happyShift action_50
+action_118 (174#) = happyShift action_51
+action_118 (8#) = happyGoto action_10
+action_118 (9#) = happyGoto action_11
+action_118 (10#) = happyGoto action_12
+action_118 (11#) = happyGoto action_13
+action_118 (12#) = happyGoto action_79
+action_118 (58#) = happyGoto action_161
+action_118 (66#) = happyGoto action_162
+action_118 (72#) = happyGoto action_22
+action_118 x = happyTcHack x happyReduce_196
+
+action_119 x = happyTcHack x happyReduce_148
+
+action_120 (100#) = happyReduce_234
+action_120 (103#) = happyReduce_234
+action_120 (113#) = happyShift action_136
+action_120 x = happyTcHack x happyReduce_140
+
+action_121 (99#) = happyShift action_160
+action_121 x = happyTcHack x happyFail
+
+action_122 (100#) = happyShift action_159
+action_122 x = happyTcHack x happyFail
+
+action_123 (96#) = happyShift action_24
+action_123 (98#) = happyShift action_82
+action_123 (104#) = happyShift action_26
+action_123 (109#) = happyShift action_27
+action_123 (110#) = happyShift action_28
+action_123 (111#) = happyShift action_29
+action_123 (125#) = happyShift action_33
+action_123 (126#) = happyShift action_34
+action_123 (127#) = happyShift action_35
+action_123 (128#) = happyShift action_36
+action_123 (129#) = happyShift action_37
+action_123 (134#) = happyShift action_39
+action_123 (170#) = happyShift action_6
+action_123 (171#) = happyShift action_48
+action_123 (172#) = happyShift action_49
+action_123 (173#) = happyShift action_50
+action_123 (174#) = happyShift action_51
+action_123 (8#) = happyGoto action_10
+action_123 (9#) = happyGoto action_11
+action_123 (10#) = happyGoto action_12
+action_123 (11#) = happyGoto action_13
+action_123 (12#) = happyGoto action_158
+action_123 (58#) = happyGoto action_15
+action_123 (59#) = happyGoto action_92
+action_123 (72#) = happyGoto action_22
+action_123 x = happyTcHack x happyFail
+
+action_124 (97#) = happyShift action_155
+action_124 (103#) = happyShift action_156
+action_124 (107#) = happyShift action_157
+action_124 x = happyTcHack x happyReduce_128
+
+action_125 (97#) = happyShift action_154
+action_125 x = happyTcHack x happyFail
+
+action_126 (96#) = happyShift action_24
+action_126 (98#) = happyShift action_25
+action_126 (104#) = happyShift action_26
+action_126 (109#) = happyShift action_27
+action_126 (110#) = happyShift action_28
+action_126 (111#) = happyShift action_29
+action_126 (114#) = happyShift action_30
+action_126 (119#) = happyShift action_31
+action_126 (124#) = happyShift action_32
+action_126 (125#) = happyShift action_33
+action_126 (126#) = happyShift action_34
+action_126 (127#) = happyShift action_35
+action_126 (128#) = happyShift action_36
+action_126 (129#) = happyShift action_37
+action_126 (131#) = happyShift action_38
+action_126 (134#) = happyShift action_39
+action_126 (137#) = happyShift action_40
+action_126 (140#) = happyShift action_41
+action_126 (145#) = happyShift action_42
+action_126 (156#) = happyShift action_43
+action_126 (157#) = happyShift action_44
+action_126 (161#) = happyShift action_45
+action_126 (162#) = happyShift action_46
+action_126 (167#) = happyShift action_47
+action_126 (170#) = happyShift action_6
+action_126 (171#) = happyShift action_48
+action_126 (172#) = happyShift action_49
+action_126 (173#) = happyShift action_50
+action_126 (174#) = happyShift action_51
+action_126 (8#) = happyGoto action_10
+action_126 (9#) = happyGoto action_11
+action_126 (10#) = happyGoto action_12
+action_126 (11#) = happyGoto action_13
+action_126 (12#) = happyGoto action_14
+action_126 (58#) = happyGoto action_15
+action_126 (59#) = happyGoto action_16
+action_126 (60#) = happyGoto action_17
+action_126 (61#) = happyGoto action_18
+action_126 (62#) = happyGoto action_19
+action_126 (63#) = happyGoto action_153
+action_126 (64#) = happyGoto action_21
+action_126 (72#) = happyGoto action_22
+action_126 (77#) = happyGoto action_23
+action_126 x = happyTcHack x happyFail
+
+action_127 (96#) = happyShift action_24
+action_127 (98#) = happyShift action_82
+action_127 (104#) = happyShift action_26
+action_127 (109#) = happyShift action_27
+action_127 (110#) = happyShift action_28
+action_127 (111#) = happyShift action_29
+action_127 (114#) = happyShift action_30
+action_127 (124#) = happyShift action_32
+action_127 (125#) = happyShift action_33
+action_127 (126#) = happyShift action_34
+action_127 (127#) = happyShift action_35
+action_127 (128#) = happyShift action_36
+action_127 (129#) = happyShift action_37
+action_127 (131#) = happyShift action_38
+action_127 (134#) = happyShift action_39
+action_127 (156#) = happyShift action_43
+action_127 (157#) = happyShift action_44
+action_127 (161#) = happyShift action_45
+action_127 (162#) = happyShift action_46
+action_127 (167#) = happyShift action_47
+action_127 (170#) = happyShift action_6
+action_127 (171#) = happyShift action_48
+action_127 (172#) = happyShift action_49
+action_127 (173#) = happyShift action_50
+action_127 (174#) = happyShift action_51
+action_127 (8#) = happyGoto action_10
+action_127 (9#) = happyGoto action_11
+action_127 (10#) = happyGoto action_12
+action_127 (11#) = happyGoto action_13
+action_127 (12#) = happyGoto action_14
+action_127 (58#) = happyGoto action_15
+action_127 (59#) = happyGoto action_16
+action_127 (60#) = happyGoto action_150
+action_127 (61#) = happyGoto action_151
+action_127 (62#) = happyGoto action_152
+action_127 (64#) = happyGoto action_21
+action_127 (72#) = happyGoto action_22
+action_127 x = happyTcHack x happyFail
+
+action_128 (96#) = happyShift action_24
+action_128 (98#) = happyShift action_25
+action_128 (104#) = happyShift action_26
+action_128 (109#) = happyShift action_27
+action_128 (110#) = happyShift action_28
+action_128 (111#) = happyShift action_29
+action_128 (114#) = happyShift action_30
+action_128 (119#) = happyShift action_31
+action_128 (124#) = happyShift action_32
+action_128 (125#) = happyShift action_33
+action_128 (126#) = happyShift action_34
+action_128 (127#) = happyShift action_35
+action_128 (128#) = happyShift action_36
+action_128 (129#) = happyShift action_37
+action_128 (131#) = happyShift action_38
+action_128 (134#) = happyShift action_39
+action_128 (137#) = happyShift action_40
+action_128 (140#) = happyShift action_41
+action_128 (145#) = happyShift action_42
+action_128 (156#) = happyShift action_43
+action_128 (157#) = happyShift action_44
+action_128 (161#) = happyShift action_45
+action_128 (162#) = happyShift action_46
+action_128 (167#) = happyShift action_47
+action_128 (170#) = happyShift action_6
+action_128 (171#) = happyShift action_48
+action_128 (172#) = happyShift action_49
+action_128 (173#) = happyShift action_50
+action_128 (174#) = happyShift action_51
+action_128 (8#) = happyGoto action_10
+action_128 (9#) = happyGoto action_11
+action_128 (10#) = happyGoto action_12
+action_128 (11#) = happyGoto action_13
+action_128 (12#) = happyGoto action_14
+action_128 (58#) = happyGoto action_15
+action_128 (59#) = happyGoto action_16
+action_128 (60#) = happyGoto action_17
+action_128 (61#) = happyGoto action_18
+action_128 (62#) = happyGoto action_19
+action_128 (63#) = happyGoto action_149
+action_128 (64#) = happyGoto action_21
+action_128 (72#) = happyGoto action_22
+action_128 (77#) = happyGoto action_23
+action_128 x = happyTcHack x happyFail
+
+action_129 (96#) = happyShift action_24
+action_129 (98#) = happyShift action_82
+action_129 (104#) = happyShift action_26
+action_129 (109#) = happyShift action_27
+action_129 (110#) = happyShift action_28
+action_129 (111#) = happyShift action_29
+action_129 (114#) = happyShift action_30
+action_129 (124#) = happyShift action_32
+action_129 (125#) = happyShift action_33
+action_129 (126#) = happyShift action_34
+action_129 (127#) = happyShift action_35
+action_129 (128#) = happyShift action_36
+action_129 (129#) = happyShift action_37
+action_129 (131#) = happyShift action_38
+action_129 (134#) = happyShift action_39
+action_129 (156#) = happyShift action_43
+action_129 (157#) = happyShift action_44
+action_129 (161#) = happyShift action_45
+action_129 (162#) = happyShift action_46
+action_129 (167#) = happyShift action_47
+action_129 (170#) = happyShift action_6
+action_129 (171#) = happyShift action_48
+action_129 (172#) = happyShift action_49
+action_129 (173#) = happyShift action_50
+action_129 (174#) = happyShift action_51
+action_129 (8#) = happyGoto action_10
+action_129 (9#) = happyGoto action_11
+action_129 (10#) = happyGoto action_12
+action_129 (11#) = happyGoto action_13
+action_129 (12#) = happyGoto action_14
+action_129 (58#) = happyGoto action_15
+action_129 (59#) = happyGoto action_16
+action_129 (60#) = happyGoto action_148
+action_129 (72#) = happyGoto action_22
+action_129 x = happyTcHack x happyFail
+
+action_130 (96#) = happyShift action_24
+action_130 (98#) = happyShift action_82
+action_130 (104#) = happyShift action_26
+action_130 (109#) = happyShift action_27
+action_130 (110#) = happyShift action_28
+action_130 (111#) = happyShift action_29
+action_130 (114#) = happyShift action_30
+action_130 (124#) = happyShift action_32
+action_130 (125#) = happyShift action_33
+action_130 (126#) = happyShift action_34
+action_130 (127#) = happyShift action_35
+action_130 (128#) = happyShift action_36
+action_130 (129#) = happyShift action_37
+action_130 (131#) = happyShift action_38
+action_130 (134#) = happyShift action_39
+action_130 (156#) = happyShift action_43
+action_130 (157#) = happyShift action_44
+action_130 (161#) = happyShift action_45
+action_130 (162#) = happyShift action_46
+action_130 (167#) = happyShift action_47
+action_130 (170#) = happyShift action_6
+action_130 (171#) = happyShift action_48
+action_130 (172#) = happyShift action_49
+action_130 (173#) = happyShift action_50
+action_130 (174#) = happyShift action_51
+action_130 (8#) = happyGoto action_10
+action_130 (9#) = happyGoto action_11
+action_130 (10#) = happyGoto action_12
+action_130 (11#) = happyGoto action_13
+action_130 (12#) = happyGoto action_14
+action_130 (58#) = happyGoto action_15
+action_130 (59#) = happyGoto action_16
+action_130 (60#) = happyGoto action_147
+action_130 (72#) = happyGoto action_22
+action_130 x = happyTcHack x happyFail
+
+action_131 (96#) = happyShift action_24
+action_131 (98#) = happyShift action_82
+action_131 (104#) = happyShift action_26
+action_131 (109#) = happyShift action_27
+action_131 (110#) = happyShift action_28
+action_131 (111#) = happyShift action_29
+action_131 (114#) = happyShift action_30
+action_131 (124#) = happyShift action_32
+action_131 (125#) = happyShift action_33
+action_131 (126#) = happyShift action_34
+action_131 (127#) = happyShift action_35
+action_131 (128#) = happyShift action_36
+action_131 (129#) = happyShift action_37
+action_131 (131#) = happyShift action_38
+action_131 (134#) = happyShift action_39
+action_131 (156#) = happyShift action_43
+action_131 (157#) = happyShift action_44
+action_131 (161#) = happyShift action_45
+action_131 (162#) = happyShift action_46
+action_131 (167#) = happyShift action_47
+action_131 (170#) = happyShift action_6
+action_131 (171#) = happyShift action_48
+action_131 (172#) = happyShift action_49
+action_131 (173#) = happyShift action_50
+action_131 (174#) = happyShift action_51
+action_131 (8#) = happyGoto action_10
+action_131 (9#) = happyGoto action_11
+action_131 (10#) = happyGoto action_12
+action_131 (11#) = happyGoto action_13
+action_131 (12#) = happyGoto action_14
+action_131 (58#) = happyGoto action_15
+action_131 (59#) = happyGoto action_16
+action_131 (60#) = happyGoto action_146
+action_131 (72#) = happyGoto action_22
+action_131 x = happyTcHack x happyFail
+
+action_132 (96#) = happyShift action_24
+action_132 (98#) = happyShift action_25
+action_132 (104#) = happyShift action_26
+action_132 (109#) = happyShift action_27
+action_132 (110#) = happyShift action_28
+action_132 (111#) = happyShift action_29
+action_132 (114#) = happyShift action_30
+action_132 (119#) = happyShift action_31
+action_132 (124#) = happyShift action_32
+action_132 (125#) = happyShift action_33
+action_132 (126#) = happyShift action_34
+action_132 (127#) = happyShift action_35
+action_132 (128#) = happyShift action_36
+action_132 (129#) = happyShift action_37
+action_132 (131#) = happyShift action_38
+action_132 (134#) = happyShift action_39
+action_132 (137#) = happyShift action_40
+action_132 (140#) = happyShift action_41
+action_132 (145#) = happyShift action_42
+action_132 (156#) = happyShift action_43
+action_132 (157#) = happyShift action_44
+action_132 (161#) = happyShift action_45
+action_132 (162#) = happyShift action_46
+action_132 (167#) = happyShift action_47
+action_132 (170#) = happyShift action_6
+action_132 (171#) = happyShift action_48
+action_132 (172#) = happyShift action_49
+action_132 (173#) = happyShift action_50
+action_132 (174#) = happyShift action_51
+action_132 (8#) = happyGoto action_10
+action_132 (9#) = happyGoto action_11
+action_132 (10#) = happyGoto action_12
+action_132 (11#) = happyGoto action_13
+action_132 (12#) = happyGoto action_14
+action_132 (58#) = happyGoto action_15
+action_132 (59#) = happyGoto action_16
+action_132 (60#) = happyGoto action_17
+action_132 (61#) = happyGoto action_18
+action_132 (62#) = happyGoto action_19
+action_132 (63#) = happyGoto action_145
+action_132 (64#) = happyGoto action_21
+action_132 (72#) = happyGoto action_22
+action_132 (77#) = happyGoto action_23
+action_132 x = happyTcHack x happyFail
+
+action_133 (96#) = happyShift action_144
+action_133 x = happyTcHack x happyFail
+
+action_134 (107#) = happyShift action_135
+action_134 x = happyTcHack x happyReduce_162
+
+action_135 (122#) = happyShift action_143
+action_135 (174#) = happyShift action_51
+action_135 (12#) = happyGoto action_141
+action_135 (71#) = happyGoto action_142
+action_135 x = happyTcHack x happyFail
+
+action_136 (96#) = happyShift action_140
+action_136 (98#) = happyShift action_82
+action_136 (104#) = happyShift action_26
+action_136 (109#) = happyShift action_83
+action_136 (110#) = happyShift action_28
+action_136 (111#) = happyShift action_29
+action_136 (125#) = happyShift action_33
+action_136 (126#) = happyShift action_34
+action_136 (127#) = happyShift action_35
+action_136 (128#) = happyShift action_36
+action_136 (129#) = happyShift action_37
+action_136 (134#) = happyShift action_39
+action_136 (170#) = happyShift action_6
+action_136 (171#) = happyShift action_48
+action_136 (172#) = happyShift action_49
+action_136 (173#) = happyShift action_50
+action_136 (174#) = happyShift action_51
+action_136 (8#) = happyGoto action_10
+action_136 (9#) = happyGoto action_11
+action_136 (10#) = happyGoto action_12
+action_136 (11#) = happyGoto action_13
+action_136 (12#) = happyGoto action_79
+action_136 (58#) = happyGoto action_139
+action_136 (72#) = happyGoto action_22
+action_136 x = happyTcHack x happyFail
+
+action_137 (95#) = happyShift action_138
+action_137 x = happyTcHack x happyFail
+
+action_138 (1#) = happyReduce_65
+action_138 (102#) = happyReduce_65
+action_138 (151#) = happyReduce_51
+action_138 (160#) = happyShift action_347
+action_138 (165#) = happyShift action_348
+action_138 (174#) = happyShift action_51
+action_138 (12#) = happyGoto action_241
+action_138 (22#) = happyGoto action_343
+action_138 (26#) = happyGoto action_344
+action_138 (32#) = happyGoto action_345
+action_138 (33#) = happyGoto action_346
+action_138 x = happyTcHack x happyReduce_65
+
+action_139 x = happyTcHack x happyReduce_170
+
+action_140 (174#) = happyShift action_51
+action_140 (12#) = happyGoto action_342
+action_140 (53#) = happyGoto action_88
+action_140 (56#) = happyGoto action_89
+action_140 (57#) = happyGoto action_125
+action_140 x = happyTcHack x happyReduce_137
+
+action_141 x = happyTcHack x happyReduce_222
+
+action_142 x = happyTcHack x happyReduce_158
+
+action_143 (170#) = happyShift action_6
+action_143 (8#) = happyGoto action_341
+action_143 x = happyTcHack x happyFail
+
+action_144 (174#) = happyShift action_51
+action_144 (12#) = happyGoto action_87
+action_144 (53#) = happyGoto action_88
+action_144 (56#) = happyGoto action_89
+action_144 (57#) = happyGoto action_340
+action_144 x = happyTcHack x happyReduce_137
+
+action_145 x = happyTcHack x happyReduce_185
+
+action_146 (96#) = happyShift action_24
+action_146 (98#) = happyShift action_82
+action_146 (104#) = happyShift action_26
+action_146 (109#) = happyShift action_27
+action_146 (110#) = happyShift action_28
+action_146 (111#) = happyShift action_29
+action_146 (125#) = happyShift action_33
+action_146 (126#) = happyShift action_34
+action_146 (127#) = happyShift action_35
+action_146 (128#) = happyShift action_36
+action_146 (129#) = happyShift action_37
+action_146 (134#) = happyShift action_39
+action_146 (170#) = happyShift action_6
+action_146 (171#) = happyShift action_48
+action_146 (172#) = happyShift action_49
+action_146 (173#) = happyShift action_50
+action_146 (174#) = happyShift action_51
+action_146 (8#) = happyGoto action_10
+action_146 (9#) = happyGoto action_11
+action_146 (10#) = happyGoto action_12
+action_146 (11#) = happyGoto action_13
+action_146 (12#) = happyGoto action_79
+action_146 (58#) = happyGoto action_15
+action_146 (59#) = happyGoto action_134
+action_146 (72#) = happyGoto action_22
+action_146 x = happyTcHack x happyReduce_176
+
+action_147 (96#) = happyShift action_24
+action_147 (98#) = happyShift action_82
+action_147 (104#) = happyShift action_26
+action_147 (109#) = happyShift action_27
+action_147 (110#) = happyShift action_28
+action_147 (111#) = happyShift action_29
+action_147 (125#) = happyShift action_33
+action_147 (126#) = happyShift action_34
+action_147 (127#) = happyShift action_35
+action_147 (128#) = happyShift action_36
+action_147 (129#) = happyShift action_37
+action_147 (134#) = happyShift action_39
+action_147 (170#) = happyShift action_6
+action_147 (171#) = happyShift action_48
+action_147 (172#) = happyShift action_49
+action_147 (173#) = happyShift action_50
+action_147 (174#) = happyShift action_51
+action_147 (8#) = happyGoto action_10
+action_147 (9#) = happyGoto action_11
+action_147 (10#) = happyGoto action_12
+action_147 (11#) = happyGoto action_13
+action_147 (12#) = happyGoto action_79
+action_147 (58#) = happyGoto action_15
+action_147 (59#) = happyGoto action_134
+action_147 (72#) = happyGoto action_22
+action_147 x = happyTcHack x happyReduce_175
+
+action_148 (96#) = happyShift action_24
+action_148 (98#) = happyShift action_82
+action_148 (104#) = happyShift action_26
+action_148 (109#) = happyShift action_27
+action_148 (110#) = happyShift action_28
+action_148 (111#) = happyShift action_29
+action_148 (125#) = happyShift action_33
+action_148 (126#) = happyShift action_34
+action_148 (127#) = happyShift action_35
+action_148 (128#) = happyShift action_36
+action_148 (129#) = happyShift action_37
+action_148 (134#) = happyShift action_39
+action_148 (170#) = happyShift action_6
+action_148 (171#) = happyShift action_48
+action_148 (172#) = happyShift action_49
+action_148 (173#) = happyShift action_50
+action_148 (174#) = happyShift action_51
+action_148 (8#) = happyGoto action_10
+action_148 (9#) = happyGoto action_11
+action_148 (10#) = happyGoto action_12
+action_148 (11#) = happyGoto action_13
+action_148 (12#) = happyGoto action_79
+action_148 (58#) = happyGoto action_15
+action_148 (59#) = happyGoto action_134
+action_148 (72#) = happyGoto action_22
+action_148 x = happyTcHack x happyReduce_177
+
+action_149 x = happyTcHack x happyReduce_181
+
+action_150 (96#) = happyShift action_24
+action_150 (98#) = happyShift action_82
+action_150 (104#) = happyShift action_26
+action_150 (109#) = happyShift action_27
+action_150 (110#) = happyShift action_28
+action_150 (111#) = happyShift action_29
+action_150 (125#) = happyShift action_33
+action_150 (126#) = happyShift action_34
+action_150 (127#) = happyShift action_35
+action_150 (128#) = happyShift action_36
+action_150 (129#) = happyShift action_37
+action_150 (134#) = happyShift action_39
+action_150 (170#) = happyShift action_6
+action_150 (171#) = happyShift action_48
+action_150 (172#) = happyShift action_49
+action_150 (173#) = happyShift action_50
+action_150 (174#) = happyShift action_51
+action_150 (8#) = happyGoto action_10
+action_150 (9#) = happyGoto action_11
+action_150 (10#) = happyGoto action_12
+action_150 (11#) = happyGoto action_13
+action_150 (12#) = happyGoto action_79
+action_150 (58#) = happyGoto action_15
+action_150 (59#) = happyGoto action_134
+action_150 (72#) = happyGoto action_22
+action_150 x = happyTcHack x happyReduce_178
+
+action_151 (102#) = happyShift action_129
+action_151 (115#) = happyShift action_130
+action_151 (116#) = happyShift action_131
+action_151 x = happyTcHack x happyReduce_192
+
+action_152 x = happyTcHack x happyReduce_179
+
+action_153 x = happyTcHack x happyReduce_184
+
+action_154 x = happyTcHack x happyReduce_152
+
+action_155 x = happyTcHack x happyReduce_141
+
+action_156 (174#) = happyShift action_51
+action_156 (12#) = happyGoto action_87
+action_156 (53#) = happyGoto action_339
+action_156 x = happyTcHack x happyFail
+
+action_157 (174#) = happyShift action_51
+action_157 (12#) = happyGoto action_338
+action_157 x = happyTcHack x happyFail
+
+action_158 (99#) = happyShift action_337
+action_158 x = happyTcHack x happyReduce_140
+
+action_159 (96#) = happyShift action_24
+action_159 (98#) = happyShift action_25
+action_159 (104#) = happyShift action_26
+action_159 (109#) = happyShift action_27
+action_159 (110#) = happyShift action_28
+action_159 (111#) = happyShift action_29
+action_159 (114#) = happyShift action_30
+action_159 (119#) = happyShift action_31
+action_159 (124#) = happyShift action_32
+action_159 (125#) = happyShift action_33
+action_159 (126#) = happyShift action_34
+action_159 (127#) = happyShift action_35
+action_159 (128#) = happyShift action_36
+action_159 (129#) = happyShift action_37
+action_159 (131#) = happyShift action_38
+action_159 (134#) = happyShift action_39
+action_159 (137#) = happyShift action_40
+action_159 (140#) = happyShift action_41
+action_159 (145#) = happyShift action_42
+action_159 (156#) = happyShift action_43
+action_159 (157#) = happyShift action_44
+action_159 (161#) = happyShift action_45
+action_159 (162#) = happyShift action_46
+action_159 (167#) = happyShift action_47
+action_159 (170#) = happyShift action_6
+action_159 (171#) = happyShift action_48
+action_159 (172#) = happyShift action_49
+action_159 (173#) = happyShift action_50
+action_159 (174#) = happyShift action_51
+action_159 (8#) = happyGoto action_10
+action_159 (9#) = happyGoto action_11
+action_159 (10#) = happyGoto action_12
+action_159 (11#) = happyGoto action_13
+action_159 (12#) = happyGoto action_14
+action_159 (58#) = happyGoto action_15
+action_159 (59#) = happyGoto action_16
+action_159 (60#) = happyGoto action_17
+action_159 (61#) = happyGoto action_18
+action_159 (62#) = happyGoto action_19
+action_159 (63#) = happyGoto action_336
+action_159 (64#) = happyGoto action_21
+action_159 (72#) = happyGoto action_22
+action_159 (77#) = happyGoto action_23
+action_159 x = happyTcHack x happyFail
+
+action_160 x = happyTcHack x happyReduce_156
+
+action_161 (96#) = happyShift action_140
+action_161 (98#) = happyShift action_82
+action_161 (104#) = happyShift action_26
+action_161 (109#) = happyShift action_83
+action_161 (110#) = happyShift action_28
+action_161 (111#) = happyShift action_29
+action_161 (125#) = happyShift action_33
+action_161 (126#) = happyShift action_34
+action_161 (127#) = happyShift action_35
+action_161 (128#) = happyShift action_36
+action_161 (129#) = happyShift action_37
+action_161 (134#) = happyShift action_39
+action_161 (170#) = happyShift action_6
+action_161 (171#) = happyShift action_48
+action_161 (172#) = happyShift action_49
+action_161 (173#) = happyShift action_50
+action_161 (174#) = happyShift action_51
+action_161 (8#) = happyGoto action_10
+action_161 (9#) = happyGoto action_11
+action_161 (10#) = happyGoto action_12
+action_161 (11#) = happyGoto action_13
+action_161 (12#) = happyGoto action_79
+action_161 (58#) = happyGoto action_161
+action_161 (66#) = happyGoto action_335
+action_161 (72#) = happyGoto action_22
+action_161 x = happyTcHack x happyReduce_196
+
+action_162 (105#) = happyShift action_334
+action_162 x = happyTcHack x happyFail
+
+action_163 x = happyTcHack x happyReduce_151
+
+action_164 (174#) = happyShift action_51
+action_164 (12#) = happyGoto action_333
+action_164 x = happyTcHack x happyFail
+
+action_165 x = happyTcHack x happyReduce_142
+
+action_166 x = happyTcHack x happyReduce_153
+
+action_167 (96#) = happyShift action_24
+action_167 (98#) = happyShift action_25
+action_167 (104#) = happyShift action_26
+action_167 (109#) = happyShift action_27
+action_167 (110#) = happyShift action_28
+action_167 (111#) = happyShift action_29
+action_167 (114#) = happyShift action_30
+action_167 (119#) = happyShift action_31
+action_167 (124#) = happyShift action_32
+action_167 (125#) = happyShift action_33
+action_167 (126#) = happyShift action_34
+action_167 (127#) = happyShift action_35
+action_167 (128#) = happyShift action_36
+action_167 (129#) = happyShift action_37
+action_167 (131#) = happyShift action_38
+action_167 (134#) = happyShift action_39
+action_167 (137#) = happyShift action_40
+action_167 (140#) = happyShift action_41
+action_167 (145#) = happyShift action_42
+action_167 (156#) = happyShift action_43
+action_167 (157#) = happyShift action_44
+action_167 (161#) = happyShift action_45
+action_167 (162#) = happyShift action_46
+action_167 (167#) = happyShift action_47
+action_167 (170#) = happyShift action_6
+action_167 (171#) = happyShift action_48
+action_167 (172#) = happyShift action_49
+action_167 (173#) = happyShift action_50
+action_167 (174#) = happyShift action_51
+action_167 (8#) = happyGoto action_10
+action_167 (9#) = happyGoto action_11
+action_167 (10#) = happyGoto action_12
+action_167 (11#) = happyGoto action_13
+action_167 (12#) = happyGoto action_14
+action_167 (58#) = happyGoto action_15
+action_167 (59#) = happyGoto action_16
+action_167 (60#) = happyGoto action_17
+action_167 (61#) = happyGoto action_18
+action_167 (62#) = happyGoto action_19
+action_167 (63#) = happyGoto action_331
+action_167 (64#) = happyGoto action_21
+action_167 (72#) = happyGoto action_22
+action_167 (77#) = happyGoto action_23
+action_167 (78#) = happyGoto action_114
+action_167 (80#) = happyGoto action_332
+action_167 x = happyTcHack x happyReduce_243
+
+action_168 (96#) = happyShift action_24
+action_168 (98#) = happyShift action_25
+action_168 (104#) = happyShift action_26
+action_168 (109#) = happyShift action_27
+action_168 (110#) = happyShift action_28
+action_168 (111#) = happyShift action_29
+action_168 (114#) = happyShift action_30
+action_168 (119#) = happyShift action_31
+action_168 (124#) = happyShift action_32
+action_168 (125#) = happyShift action_33
+action_168 (126#) = happyShift action_34
+action_168 (127#) = happyShift action_35
+action_168 (128#) = happyShift action_36
+action_168 (129#) = happyShift action_37
+action_168 (131#) = happyShift action_38
+action_168 (134#) = happyShift action_39
+action_168 (137#) = happyShift action_40
+action_168 (140#) = happyShift action_41
+action_168 (145#) = happyShift action_42
+action_168 (156#) = happyShift action_43
+action_168 (157#) = happyShift action_44
+action_168 (161#) = happyShift action_45
+action_168 (162#) = happyShift action_46
+action_168 (167#) = happyShift action_47
+action_168 (170#) = happyShift action_6
+action_168 (171#) = happyShift action_48
+action_168 (172#) = happyShift action_49
+action_168 (173#) = happyShift action_50
+action_168 (174#) = happyShift action_51
+action_168 (8#) = happyGoto action_10
+action_168 (9#) = happyGoto action_11
+action_168 (10#) = happyGoto action_12
+action_168 (11#) = happyGoto action_13
+action_168 (12#) = happyGoto action_14
+action_168 (58#) = happyGoto action_15
+action_168 (59#) = happyGoto action_16
+action_168 (60#) = happyGoto action_17
+action_168 (61#) = happyGoto action_18
+action_168 (62#) = happyGoto action_19
+action_168 (63#) = happyGoto action_330
+action_168 (64#) = happyGoto action_21
+action_168 (72#) = happyGoto action_22
+action_168 (77#) = happyGoto action_23
+action_168 x = happyTcHack x happyFail
+
+action_169 (107#) = happyShift action_329
+action_169 x = happyTcHack x happyReduce_200
+
+action_170 (96#) = happyShift action_106
+action_170 (98#) = happyShift action_107
+action_170 (104#) = happyShift action_108
+action_170 (107#) = happyShift action_300
+action_170 (110#) = happyShift action_109
+action_170 (111#) = happyShift action_110
+action_170 (113#) = happyShift action_301
+action_170 (114#) = happyShift action_111
+action_170 (121#) = happyShift action_112
+action_170 (170#) = happyShift action_6
+action_170 (171#) = happyShift action_48
+action_170 (172#) = happyShift action_49
+action_170 (174#) = happyShift action_51
+action_170 (8#) = happyGoto action_101
+action_170 (9#) = happyGoto action_102
+action_170 (10#) = happyGoto action_103
+action_170 (12#) = happyGoto action_104
+action_170 (67#) = happyGoto action_188
+action_170 (74#) = happyGoto action_299
+action_170 x = happyTcHack x happyReduce_203
+
+action_171 (116#) = happyShift action_328
+action_171 x = happyTcHack x happyReduce_217
+
+action_172 x = happyTcHack x happyReduce_220
+
+action_173 (108#) = happyShift action_296
+action_173 (117#) = happyShift action_297
+action_173 x = happyTcHack x happyReduce_242
+
+action_174 (103#) = happyShift action_327
+action_174 x = happyTcHack x happyReduce_247
+
+action_175 (112#) = happyShift action_326
+action_175 x = happyTcHack x happyFail
+
+action_176 (96#) = happyShift action_106
+action_176 (98#) = happyShift action_107
+action_176 (104#) = happyShift action_108
+action_176 (110#) = happyShift action_109
+action_176 (111#) = happyShift action_110
+action_176 (114#) = happyShift action_111
+action_176 (121#) = happyShift action_112
+action_176 (170#) = happyShift action_6
+action_176 (171#) = happyShift action_48
+action_176 (172#) = happyShift action_49
+action_176 (174#) = happyShift action_51
+action_176 (8#) = happyGoto action_101
+action_176 (9#) = happyGoto action_102
+action_176 (10#) = happyGoto action_103
+action_176 (12#) = happyGoto action_104
+action_176 (67#) = happyGoto action_325
+action_176 x = happyTcHack x happyFail
+
+action_177 (105#) = happyShift action_324
+action_177 x = happyTcHack x happyFail
+
+action_178 (99#) = happyShift action_323
+action_178 (108#) = happyShift action_296
+action_178 (117#) = happyShift action_297
+action_178 x = happyTcHack x happyFail
+
+action_179 (97#) = happyShift action_322
+action_179 (103#) = happyShift action_156
+action_179 x = happyTcHack x happyReduce_128
+
+action_180 (95#) = happyShift action_321
+action_180 x = happyTcHack x happyFail
+
+action_181 (94#) = happyShift action_320
+action_181 x = happyTcHack x happyReduce_230
+
+action_182 (97#) = happyShift action_319
+action_182 x = happyTcHack x happyFail
+
+action_183 (174#) = happyShift action_51
+action_183 (12#) = happyGoto action_318
+action_183 x = happyTcHack x happyFail
+
+action_184 (120#) = happyShift action_317
+action_184 x = happyTcHack x happyFail
+
+action_185 (96#) = happyShift action_24
+action_185 (98#) = happyShift action_25
+action_185 (104#) = happyShift action_26
+action_185 (109#) = happyShift action_27
+action_185 (110#) = happyShift action_28
+action_185 (111#) = happyShift action_29
+action_185 (114#) = happyShift action_30
+action_185 (119#) = happyShift action_31
+action_185 (124#) = happyShift action_32
+action_185 (125#) = happyShift action_33
+action_185 (126#) = happyShift action_34
+action_185 (127#) = happyShift action_35
+action_185 (128#) = happyShift action_36
+action_185 (129#) = happyShift action_37
+action_185 (131#) = happyShift action_38
+action_185 (134#) = happyShift action_39
+action_185 (137#) = happyShift action_40
+action_185 (140#) = happyShift action_41
+action_185 (145#) = happyShift action_42
+action_185 (156#) = happyShift action_43
+action_185 (157#) = happyShift action_44
+action_185 (161#) = happyShift action_45
+action_185 (162#) = happyShift action_46
+action_185 (167#) = happyShift action_47
+action_185 (170#) = happyShift action_6
+action_185 (171#) = happyShift action_48
+action_185 (172#) = happyShift action_49
+action_185 (173#) = happyShift action_50
+action_185 (174#) = happyShift action_51
+action_185 (8#) = happyGoto action_10
+action_185 (9#) = happyGoto action_11
+action_185 (10#) = happyGoto action_12
+action_185 (11#) = happyGoto action_13
+action_185 (12#) = happyGoto action_14
+action_185 (58#) = happyGoto action_15
+action_185 (59#) = happyGoto action_16
+action_185 (60#) = happyGoto action_17
+action_185 (61#) = happyGoto action_18
+action_185 (62#) = happyGoto action_19
+action_185 (63#) = happyGoto action_316
+action_185 (64#) = happyGoto action_21
+action_185 (72#) = happyGoto action_22
+action_185 (77#) = happyGoto action_23
+action_185 x = happyTcHack x happyFail
+
+action_186 (121#) = happyShift action_100
+action_186 (174#) = happyShift action_51
+action_186 (12#) = happyGoto action_96
+action_186 (75#) = happyGoto action_97
+action_186 (76#) = happyGoto action_315
+action_186 x = happyTcHack x happyReduce_236
+
+action_187 (96#) = happyShift action_314
+action_187 x = happyTcHack x happyFail
+
+action_188 (96#) = happyShift action_106
+action_188 (98#) = happyShift action_107
+action_188 (104#) = happyShift action_108
+action_188 (110#) = happyShift action_109
+action_188 (111#) = happyShift action_110
+action_188 (114#) = happyShift action_111
+action_188 (121#) = happyShift action_112
+action_188 (170#) = happyShift action_6
+action_188 (171#) = happyShift action_48
+action_188 (172#) = happyShift action_49
+action_188 (174#) = happyShift action_51
+action_188 (8#) = happyGoto action_101
+action_188 (9#) = happyGoto action_102
+action_188 (10#) = happyGoto action_103
+action_188 (12#) = happyGoto action_104
+action_188 (67#) = happyGoto action_188
+action_188 (74#) = happyGoto action_313
+action_188 x = happyTcHack x happyReduce_232
+
+action_189 (101#) = happyShift action_312
+action_189 x = happyTcHack x happyFail
+
+action_190 (94#) = happyShift action_311
+action_190 x = happyTcHack x happyReduce_254
+
+action_191 (97#) = happyShift action_310
+action_191 x = happyTcHack x happyFail
+
+action_192 x = happyTcHack x happyReduce_190
+
+action_193 (97#) = happyShift action_309
+action_193 x = happyTcHack x happyFail
+
+action_194 (96#) = happyShift action_24
+action_194 (98#) = happyShift action_25
+action_194 (104#) = happyShift action_26
+action_194 (109#) = happyShift action_27
+action_194 (110#) = happyShift action_28
+action_194 (111#) = happyShift action_29
+action_194 (114#) = happyShift action_30
+action_194 (119#) = happyShift action_31
+action_194 (124#) = happyShift action_32
+action_194 (125#) = happyShift action_33
+action_194 (126#) = happyShift action_34
+action_194 (127#) = happyShift action_35
+action_194 (128#) = happyShift action_36
+action_194 (129#) = happyShift action_37
+action_194 (131#) = happyShift action_38
+action_194 (134#) = happyShift action_39
+action_194 (137#) = happyShift action_40
+action_194 (140#) = happyShift action_41
+action_194 (145#) = happyShift action_42
+action_194 (156#) = happyShift action_43
+action_194 (157#) = happyShift action_44
+action_194 (161#) = happyShift action_45
+action_194 (162#) = happyShift action_46
+action_194 (167#) = happyShift action_47
+action_194 (170#) = happyShift action_6
+action_194 (171#) = happyShift action_48
+action_194 (172#) = happyShift action_49
+action_194 (173#) = happyShift action_50
+action_194 (174#) = happyShift action_51
+action_194 (8#) = happyGoto action_10
+action_194 (9#) = happyGoto action_11
+action_194 (10#) = happyGoto action_12
+action_194 (11#) = happyGoto action_13
+action_194 (12#) = happyGoto action_14
+action_194 (58#) = happyGoto action_15
+action_194 (59#) = happyGoto action_16
+action_194 (60#) = happyGoto action_17
+action_194 (61#) = happyGoto action_18
+action_194 (62#) = happyGoto action_19
+action_194 (63#) = happyGoto action_308
+action_194 (64#) = happyGoto action_21
+action_194 (72#) = happyGoto action_22
+action_194 (77#) = happyGoto action_23
+action_194 x = happyTcHack x happyFail
+
+action_195 (174#) = happyShift action_51
+action_195 (12#) = happyGoto action_87
+action_195 (53#) = happyGoto action_88
+action_195 (56#) = happyGoto action_89
+action_195 (57#) = happyGoto action_307
+action_195 x = happyTcHack x happyReduce_137
+
+action_196 (96#) = happyShift action_24
+action_196 (98#) = happyShift action_25
+action_196 (104#) = happyShift action_26
+action_196 (109#) = happyShift action_27
+action_196 (110#) = happyShift action_28
+action_196 (111#) = happyShift action_29
+action_196 (114#) = happyShift action_30
+action_196 (119#) = happyShift action_31
+action_196 (124#) = happyShift action_32
+action_196 (125#) = happyShift action_33
+action_196 (126#) = happyShift action_34
+action_196 (127#) = happyShift action_35
+action_196 (128#) = happyShift action_36
+action_196 (129#) = happyShift action_37
+action_196 (131#) = happyShift action_38
+action_196 (134#) = happyShift action_39
+action_196 (137#) = happyShift action_40
+action_196 (140#) = happyShift action_41
+action_196 (145#) = happyShift action_42
+action_196 (156#) = happyShift action_43
+action_196 (157#) = happyShift action_44
+action_196 (161#) = happyShift action_45
+action_196 (162#) = happyShift action_46
+action_196 (167#) = happyShift action_47
+action_196 (170#) = happyShift action_6
+action_196 (171#) = happyShift action_48
+action_196 (172#) = happyShift action_49
+action_196 (173#) = happyShift action_50
+action_196 (174#) = happyShift action_51
+action_196 (8#) = happyGoto action_10
+action_196 (9#) = happyGoto action_11
+action_196 (10#) = happyGoto action_12
+action_196 (11#) = happyGoto action_13
+action_196 (12#) = happyGoto action_14
+action_196 (58#) = happyGoto action_15
+action_196 (59#) = happyGoto action_16
+action_196 (60#) = happyGoto action_17
+action_196 (61#) = happyGoto action_18
+action_196 (62#) = happyGoto action_19
+action_196 (63#) = happyGoto action_306
+action_196 (64#) = happyGoto action_21
+action_196 (72#) = happyGoto action_22
+action_196 (77#) = happyGoto action_23
+action_196 x = happyTcHack x happyFail
+
+action_197 (96#) = happyShift action_24
+action_197 (98#) = happyShift action_25
+action_197 (104#) = happyShift action_26
+action_197 (109#) = happyShift action_27
+action_197 (110#) = happyShift action_28
+action_197 (111#) = happyShift action_29
+action_197 (114#) = happyShift action_30
+action_197 (119#) = happyShift action_31
+action_197 (124#) = happyShift action_32
+action_197 (125#) = happyShift action_33
+action_197 (126#) = happyShift action_34
+action_197 (127#) = happyShift action_35
+action_197 (128#) = happyShift action_36
+action_197 (129#) = happyShift action_37
+action_197 (131#) = happyShift action_38
+action_197 (134#) = happyShift action_39
+action_197 (137#) = happyShift action_40
+action_197 (140#) = happyShift action_41
+action_197 (145#) = happyShift action_42
+action_197 (156#) = happyShift action_43
+action_197 (157#) = happyShift action_44
+action_197 (161#) = happyShift action_45
+action_197 (162#) = happyShift action_46
+action_197 (167#) = happyShift action_47
+action_197 (170#) = happyShift action_6
+action_197 (171#) = happyShift action_48
+action_197 (172#) = happyShift action_49
+action_197 (173#) = happyShift action_50
+action_197 (174#) = happyShift action_51
+action_197 (8#) = happyGoto action_10
+action_197 (9#) = happyGoto action_11
+action_197 (10#) = happyGoto action_12
+action_197 (11#) = happyGoto action_13
+action_197 (12#) = happyGoto action_14
+action_197 (58#) = happyGoto action_15
+action_197 (59#) = happyGoto action_16
+action_197 (60#) = happyGoto action_17
+action_197 (61#) = happyGoto action_18
+action_197 (62#) = happyGoto action_19
+action_197 (63#) = happyGoto action_305
+action_197 (64#) = happyGoto action_21
+action_197 (72#) = happyGoto action_22
+action_197 (77#) = happyGoto action_23
+action_197 x = happyTcHack x happyFail
+
+action_198 (94#) = happyShift action_304
+action_198 x = happyTcHack x happyFail
+
+action_199 (94#) = happyShift action_303
+action_199 x = happyTcHack x happyReduce_194
+
+action_200 (97#) = happyShift action_302
+action_200 x = happyTcHack x happyFail
+
+action_201 (109#) = happyShift action_165
+action_201 x = happyTcHack x happyFail
+
+action_202 (96#) = happyShift action_106
+action_202 (97#) = happyShift action_155
+action_202 (98#) = happyShift action_107
+action_202 (103#) = happyShift action_156
+action_202 (104#) = happyShift action_108
+action_202 (107#) = happyShift action_300
+action_202 (108#) = happyReduce_203
+action_202 (110#) = happyShift action_109
+action_202 (111#) = happyShift action_110
+action_202 (113#) = happyShift action_301
+action_202 (114#) = happyShift action_111
+action_202 (116#) = happyReduce_203
+action_202 (117#) = happyReduce_203
+action_202 (120#) = happyReduce_203
+action_202 (121#) = happyShift action_112
+action_202 (170#) = happyShift action_6
+action_202 (171#) = happyShift action_48
+action_202 (172#) = happyShift action_49
+action_202 (174#) = happyShift action_51
+action_202 (8#) = happyGoto action_101
+action_202 (9#) = happyGoto action_102
+action_202 (10#) = happyGoto action_103
+action_202 (12#) = happyGoto action_104
+action_202 (67#) = happyGoto action_188
+action_202 (74#) = happyGoto action_299
+action_202 x = happyTcHack x happyReduce_128
+
+action_203 (108#) = happyShift action_296
+action_203 (117#) = happyShift action_297
+action_203 (120#) = happyShift action_298
+action_203 x = happyTcHack x happyFail
+
+action_204 (94#) = happyShift action_295
+action_204 x = happyTcHack x happyReduce_250
+
+action_205 (97#) = happyShift action_294
+action_205 x = happyTcHack x happyFail
+
+action_206 (96#) = happyShift action_106
+action_206 (98#) = happyShift action_107
+action_206 (104#) = happyShift action_108
+action_206 (106#) = happyShift action_176
+action_206 (110#) = happyShift action_109
+action_206 (111#) = happyShift action_110
+action_206 (114#) = happyShift action_111
+action_206 (121#) = happyShift action_112
+action_206 (170#) = happyShift action_6
+action_206 (171#) = happyShift action_48
+action_206 (172#) = happyShift action_49
+action_206 (174#) = happyShift action_51
+action_206 (8#) = happyGoto action_101
+action_206 (9#) = happyGoto action_102
+action_206 (10#) = happyGoto action_103
+action_206 (12#) = happyGoto action_170
+action_206 (67#) = happyGoto action_171
+action_206 (68#) = happyGoto action_172
+action_206 (69#) = happyGoto action_203
+action_206 (82#) = happyGoto action_204
+action_206 (83#) = happyGoto action_293
+action_206 x = happyTcHack x happyFail
+
+action_207 (96#) = happyShift action_24
+action_207 (98#) = happyShift action_25
+action_207 (104#) = happyShift action_26
+action_207 (109#) = happyShift action_27
+action_207 (110#) = happyShift action_28
+action_207 (111#) = happyShift action_29
+action_207 (114#) = happyShift action_30
+action_207 (119#) = happyShift action_31
+action_207 (124#) = happyShift action_32
+action_207 (125#) = happyShift action_33
+action_207 (126#) = happyShift action_34
+action_207 (127#) = happyShift action_35
+action_207 (128#) = happyShift action_36
+action_207 (129#) = happyShift action_37
+action_207 (131#) = happyShift action_38
+action_207 (134#) = happyShift action_39
+action_207 (137#) = happyShift action_40
+action_207 (140#) = happyShift action_41
+action_207 (145#) = happyShift action_42
+action_207 (156#) = happyShift action_43
+action_207 (157#) = happyShift action_44
+action_207 (161#) = happyShift action_45
+action_207 (162#) = happyShift action_46
+action_207 (167#) = happyShift action_47
+action_207 (170#) = happyShift action_6
+action_207 (171#) = happyShift action_48
+action_207 (172#) = happyShift action_49
+action_207 (173#) = happyShift action_50
+action_207 (174#) = happyShift action_51
+action_207 (8#) = happyGoto action_10
+action_207 (9#) = happyGoto action_11
+action_207 (10#) = happyGoto action_12
+action_207 (11#) = happyGoto action_13
+action_207 (12#) = happyGoto action_14
+action_207 (58#) = happyGoto action_15
+action_207 (59#) = happyGoto action_16
+action_207 (60#) = happyGoto action_17
+action_207 (61#) = happyGoto action_18
+action_207 (62#) = happyGoto action_19
+action_207 (63#) = happyGoto action_199
+action_207 (64#) = happyGoto action_21
+action_207 (65#) = happyGoto action_292
+action_207 (72#) = happyGoto action_22
+action_207 (77#) = happyGoto action_23
+action_207 x = happyTcHack x happyReduce_193
+
+action_208 (97#) = happyShift action_291
+action_208 x = happyTcHack x happyFail
+
+action_209 x = happyTcHack x happyReduce_49
+
+action_210 (104#) = happyShift action_290
+action_210 (174#) = happyShift action_51
+action_210 (12#) = happyGoto action_287
+action_210 (36#) = happyGoto action_288
+action_210 (46#) = happyGoto action_289
+action_210 x = happyTcHack x happyFail
+
+action_211 (174#) = happyShift action_51
+action_211 (12#) = happyGoto action_283
+action_211 (37#) = happyGoto action_276
+action_211 (38#) = happyGoto action_284
+action_211 (47#) = happyGoto action_285
+action_211 (48#) = happyGoto action_286
+action_211 (53#) = happyGoto action_278
+action_211 x = happyTcHack x happyFail
+
+action_212 (104#) = happyShift action_257
+action_212 (174#) = happyShift action_51
+action_212 (12#) = happyGoto action_252
+action_212 (34#) = happyGoto action_253
+action_212 (45#) = happyGoto action_282
+action_212 (54#) = happyGoto action_255
+action_212 (55#) = happyGoto action_256
+action_212 x = happyTcHack x happyFail
+
+action_213 (174#) = happyShift action_51
+action_213 (12#) = happyGoto action_279
+action_213 (44#) = happyGoto action_280
+action_213 (51#) = happyGoto action_281
+action_213 x = happyTcHack x happyFail
+
+action_214 (174#) = happyShift action_51
+action_214 (12#) = happyGoto action_87
+action_214 (37#) = happyGoto action_276
+action_214 (47#) = happyGoto action_277
+action_214 (53#) = happyGoto action_278
+action_214 x = happyTcHack x happyFail
+
+action_215 (104#) = happyShift action_257
+action_215 (174#) = happyShift action_51
+action_215 (12#) = happyGoto action_252
+action_215 (34#) = happyGoto action_253
+action_215 (45#) = happyGoto action_275
+action_215 (54#) = happyGoto action_255
+action_215 (55#) = happyGoto action_256
+action_215 x = happyTcHack x happyFail
+
+action_216 (104#) = happyShift action_257
+action_216 (174#) = happyShift action_51
+action_216 (12#) = happyGoto action_252
+action_216 (43#) = happyGoto action_260
+action_216 (50#) = happyGoto action_274
+action_216 (54#) = happyGoto action_262
+action_216 (55#) = happyGoto action_263
+action_216 x = happyTcHack x happyFail
+
+action_217 (104#) = happyShift action_257
+action_217 (174#) = happyShift action_51
+action_217 (12#) = happyGoto action_252
+action_217 (34#) = happyGoto action_253
+action_217 (45#) = happyGoto action_273
+action_217 (54#) = happyGoto action_255
+action_217 (55#) = happyGoto action_256
+action_217 x = happyTcHack x happyFail
+
+action_218 (104#) = happyShift action_257
+action_218 (174#) = happyShift action_51
+action_218 (12#) = happyGoto action_252
+action_218 (34#) = happyGoto action_253
+action_218 (45#) = happyGoto action_272
+action_218 (54#) = happyGoto action_255
+action_218 (55#) = happyGoto action_256
+action_218 x = happyTcHack x happyFail
+
+action_219 (104#) = happyShift action_257
+action_219 (174#) = happyShift action_51
+action_219 (12#) = happyGoto action_252
+action_219 (34#) = happyGoto action_253
+action_219 (45#) = happyGoto action_271
+action_219 (54#) = happyGoto action_255
+action_219 (55#) = happyGoto action_256
+action_219 x = happyTcHack x happyFail
+
+action_220 (174#) = happyShift action_51
+action_220 (12#) = happyGoto action_270
+action_220 x = happyTcHack x happyFail
+
+action_221 (174#) = happyShift action_51
+action_221 (12#) = happyGoto action_267
+action_221 (41#) = happyGoto action_268
+action_221 (49#) = happyGoto action_269
+action_221 x = happyTcHack x happyFail
+
+action_222 (104#) = happyShift action_257
+action_222 (174#) = happyShift action_51
+action_222 (12#) = happyGoto action_252
+action_222 (34#) = happyGoto action_253
+action_222 (45#) = happyGoto action_266
+action_222 (54#) = happyGoto action_255
+action_222 (55#) = happyGoto action_256
+action_222 x = happyTcHack x happyFail
+
+action_223 (104#) = happyShift action_257
+action_223 (132#) = happyShift action_264
+action_223 (138#) = happyShift action_265
+action_223 (174#) = happyShift action_51
+action_223 (12#) = happyGoto action_252
+action_223 (43#) = happyGoto action_260
+action_223 (50#) = happyGoto action_261
+action_223 (54#) = happyGoto action_262
+action_223 (55#) = happyGoto action_263
+action_223 x = happyTcHack x happyFail
+
+action_224 (174#) = happyShift action_51
+action_224 (12#) = happyGoto action_259
+action_224 x = happyTcHack x happyFail
+
+action_225 (104#) = happyShift action_257
+action_225 (174#) = happyShift action_51
+action_225 (12#) = happyGoto action_252
+action_225 (34#) = happyGoto action_253
+action_225 (45#) = happyGoto action_258
+action_225 (54#) = happyGoto action_255
+action_225 (55#) = happyGoto action_256
+action_225 x = happyTcHack x happyFail
+
+action_226 (104#) = happyShift action_257
+action_226 (174#) = happyShift action_51
+action_226 (12#) = happyGoto action_252
+action_226 (34#) = happyGoto action_253
+action_226 (45#) = happyGoto action_254
+action_226 (54#) = happyGoto action_255
+action_226 (55#) = happyGoto action_256
+action_226 x = happyTcHack x happyFail
+
+action_227 x = happyTcHack x happyReduce_269
+
+action_228 x = happyTcHack x happyReduce_270
+
+action_229 x = happyTcHack x happyReduce_271
+
+action_230 (106#) = happyShift action_74
+action_230 (107#) = happyShift action_75
+action_230 (123#) = happyShift action_76
+action_230 (171#) = happyShift action_48
+action_230 (174#) = happyShift action_51
+action_230 (9#) = happyGoto action_70
+action_230 (12#) = happyGoto action_71
+action_230 (92#) = happyGoto action_72
+action_230 (93#) = happyGoto action_251
+action_230 x = happyTcHack x happyReduce_273
+
+action_231 x = happyTcHack x happyReduce_272
+
+action_232 (100#) = happyShift action_250
+action_232 x = happyTcHack x happyFail
+
+action_233 x = happyTcHack x happyReduce_35
+
+action_234 x = happyTcHack x happyReduce_36
+
+action_235 (150#) = happyShift action_249
+action_235 x = happyTcHack x happyFail
+
+action_236 (150#) = happyShift action_248
+action_236 x = happyTcHack x happyFail
+
+action_237 x = happyTcHack x happyReduce_34
+
+action_238 (96#) = happyReduce_51
+action_238 (151#) = happyReduce_51
+action_238 (160#) = happyShift action_246
+action_238 (165#) = happyShift action_247
+action_238 (174#) = happyShift action_51
+action_238 (12#) = happyGoto action_241
+action_238 (24#) = happyGoto action_242
+action_238 (26#) = happyGoto action_243
+action_238 (32#) = happyGoto action_244
+action_238 (33#) = happyGoto action_245
+action_238 x = happyTcHack x happyReduce_65
+
+action_239 (96#) = happyShift action_240
+action_239 x = happyTcHack x happyFail
+
+action_240 (130#) = happyShift action_418
+action_240 x = happyTcHack x happyFail
+
+action_241 (104#) = happyShift action_416
+action_241 (106#) = happyShift action_417
+action_241 x = happyTcHack x happyReduce_68
+
+action_242 x = happyTcHack x happyReduce_15
+
+action_243 (151#) = happyShift action_356
+action_243 (28#) = happyGoto action_415
+action_243 x = happyTcHack x happyReduce_55
+
+action_244 (102#) = happyShift action_414
+action_244 x = happyTcHack x happyReduce_41
+
+action_245 (103#) = happyShift action_352
+action_245 (169#) = happyShift action_413
+action_245 x = happyTcHack x happyReduce_66
+
+action_246 (174#) = happyShift action_51
+action_246 (12#) = happyGoto action_412
+action_246 x = happyTcHack x happyFail
+
+action_247 (174#) = happyShift action_51
+action_247 (12#) = happyGoto action_241
+action_247 (32#) = happyGoto action_411
+action_247 (33#) = happyGoto action_350
+action_247 x = happyTcHack x happyReduce_65
+
+action_248 (174#) = happyShift action_51
+action_248 (12#) = happyGoto action_410
+action_248 x = happyTcHack x happyFail
+
+action_249 (174#) = happyShift action_51
+action_249 (12#) = happyGoto action_409
+action_249 x = happyTcHack x happyFail
+
+action_250 (98#) = happyShift action_408
+action_250 (174#) = happyShift action_51
+action_250 (12#) = happyGoto action_406
+action_250 (29#) = happyGoto action_407
+action_250 x = happyTcHack x happyFail
+
+action_251 x = happyTcHack x happyReduce_274
+
+action_252 x = happyTcHack x happyReduce_130
+
+action_253 (94#) = happyShift action_405
+action_253 x = happyTcHack x happyFail
+
+action_254 x = happyTcHack x happyReduce_93
+
+action_255 (96#) = happyShift action_106
+action_255 (98#) = happyShift action_107
+action_255 (103#) = happyShift action_398
+action_255 (104#) = happyShift action_108
+action_255 (110#) = happyShift action_109
+action_255 (111#) = happyShift action_110
+action_255 (114#) = happyShift action_111
+action_255 (121#) = happyShift action_112
+action_255 (170#) = happyShift action_6
+action_255 (171#) = happyShift action_48
+action_255 (172#) = happyShift action_49
+action_255 (174#) = happyShift action_51
+action_255 (8#) = happyGoto action_101
+action_255 (9#) = happyGoto action_102
+action_255 (10#) = happyGoto action_103
+action_255 (12#) = happyGoto action_104
+action_255 (67#) = happyGoto action_188
+action_255 (74#) = happyGoto action_404
+action_255 x = happyTcHack x happyReduce_132
+
+action_256 (95#) = happyShift action_402
+action_256 (100#) = happyShift action_403
+action_256 x = happyTcHack x happyFail
+
+action_257 (174#) = happyShift action_51
+action_257 (12#) = happyGoto action_401
+action_257 x = happyTcHack x happyFail
+
+action_258 x = happyTcHack x happyReduce_80
+
+action_259 (94#) = happyShift action_400
+action_259 x = happyTcHack x happyFail
+
+action_260 (94#) = happyShift action_399
+action_260 x = happyTcHack x happyFail
+
+action_261 x = happyTcHack x happyReduce_89
+
+action_262 (103#) = happyShift action_398
+action_262 x = happyTcHack x happyReduce_132
+
+action_263 (95#) = happyShift action_397
+action_263 x = happyTcHack x happyFail
+
+action_264 (104#) = happyShift action_257
+action_264 (174#) = happyShift action_51
+action_264 (12#) = happyGoto action_252
+action_264 (43#) = happyGoto action_260
+action_264 (50#) = happyGoto action_396
+action_264 (54#) = happyGoto action_262
+action_264 (55#) = happyGoto action_263
+action_264 x = happyTcHack x happyFail
+
+action_265 (104#) = happyShift action_257
+action_265 (174#) = happyShift action_51
+action_265 (12#) = happyGoto action_252
+action_265 (43#) = happyGoto action_260
+action_265 (50#) = happyGoto action_395
+action_265 (54#) = happyGoto action_262
+action_265 (55#) = happyGoto action_263
+action_265 x = happyTcHack x happyFail
+
+action_266 x = happyTcHack x happyReduce_91
+
+action_267 (95#) = happyShift action_394
+action_267 x = happyTcHack x happyReduce_107
+
+action_268 (94#) = happyShift action_393
+action_268 x = happyTcHack x happyFail
+
+action_269 x = happyTcHack x happyReduce_81
+
+action_270 (95#) = happyShift action_392
+action_270 x = happyTcHack x happyFail
+
+action_271 x = happyTcHack x happyReduce_82
+
+action_272 x = happyTcHack x happyReduce_90
+
+action_273 x = happyTcHack x happyReduce_84
+
+action_274 x = happyTcHack x happyReduce_83
+
+action_275 x = happyTcHack x happyReduce_85
+
+action_276 (94#) = happyShift action_391
+action_276 x = happyTcHack x happyFail
+
+action_277 x = happyTcHack x happyReduce_76
+
+action_278 (100#) = happyShift action_390
+action_278 x = happyTcHack x happyFail
+
+action_279 (95#) = happyShift action_389
+action_279 x = happyTcHack x happyFail
+
+action_280 (94#) = happyShift action_388
+action_280 x = happyTcHack x happyFail
+
+action_281 x = happyTcHack x happyReduce_88
+
+action_282 x = happyTcHack x happyReduce_78
+
+action_283 (95#) = happyShift action_387
+action_283 (103#) = happyShift action_156
+action_283 x = happyTcHack x happyReduce_128
+
+action_284 (94#) = happyShift action_386
+action_284 x = happyTcHack x happyFail
+
+action_285 x = happyTcHack x happyReduce_77
+
+action_286 x = happyTcHack x happyReduce_79
+
+action_287 (89#) = happyGoto action_385
+action_287 x = happyTcHack x happyReduce_262
+
+action_288 (94#) = happyShift action_384
+action_288 x = happyTcHack x happyFail
+
+action_289 x = happyTcHack x happyReduce_75
+
+action_290 (174#) = happyShift action_51
+action_290 (12#) = happyGoto action_383
+action_290 x = happyTcHack x happyFail
+
+action_291 x = happyTcHack x happyReduce_167
+
+action_292 (105#) = happyShift action_382
+action_292 x = happyTcHack x happyFail
+
+action_293 (97#) = happyShift action_381
+action_293 x = happyTcHack x happyFail
+
+action_294 x = happyTcHack x happyReduce_163
+
+action_295 (96#) = happyShift action_106
+action_295 (98#) = happyShift action_107
+action_295 (104#) = happyShift action_108
+action_295 (106#) = happyShift action_176
+action_295 (110#) = happyShift action_109
+action_295 (111#) = happyShift action_110
+action_295 (114#) = happyShift action_111
+action_295 (121#) = happyShift action_112
+action_295 (170#) = happyShift action_6
+action_295 (171#) = happyShift action_48
+action_295 (172#) = happyShift action_49
+action_295 (174#) = happyShift action_51
+action_295 (8#) = happyGoto action_101
+action_295 (9#) = happyGoto action_102
+action_295 (10#) = happyGoto action_103
+action_295 (12#) = happyGoto action_170
+action_295 (67#) = happyGoto action_171
+action_295 (68#) = happyGoto action_172
+action_295 (69#) = happyGoto action_203
+action_295 (82#) = happyGoto action_204
+action_295 (83#) = happyGoto action_380
+action_295 x = happyTcHack x happyFail
+
+action_296 (96#) = happyShift action_106
+action_296 (98#) = happyShift action_107
+action_296 (104#) = happyShift action_108
+action_296 (106#) = happyShift action_176
+action_296 (110#) = happyShift action_109
+action_296 (111#) = happyShift action_110
+action_296 (114#) = happyShift action_111
+action_296 (121#) = happyShift action_112
+action_296 (170#) = happyShift action_6
+action_296 (171#) = happyShift action_48
+action_296 (172#) = happyShift action_49
+action_296 (174#) = happyShift action_51
+action_296 (8#) = happyGoto action_101
+action_296 (9#) = happyGoto action_102
+action_296 (10#) = happyGoto action_103
+action_296 (12#) = happyGoto action_170
+action_296 (67#) = happyGoto action_171
+action_296 (68#) = happyGoto action_379
+action_296 x = happyTcHack x happyFail
+
+action_297 (96#) = happyShift action_106
+action_297 (98#) = happyShift action_107
+action_297 (104#) = happyShift action_108
+action_297 (106#) = happyShift action_176
+action_297 (110#) = happyShift action_109
+action_297 (111#) = happyShift action_110
+action_297 (114#) = happyShift action_111
+action_297 (121#) = happyShift action_112
+action_297 (170#) = happyShift action_6
+action_297 (171#) = happyShift action_48
+action_297 (172#) = happyShift action_49
+action_297 (174#) = happyShift action_51
+action_297 (8#) = happyGoto action_101
+action_297 (9#) = happyGoto action_102
+action_297 (10#) = happyGoto action_103
+action_297 (12#) = happyGoto action_170
+action_297 (67#) = happyGoto action_171
+action_297 (68#) = happyGoto action_378
+action_297 x = happyTcHack x happyFail
+
+action_298 (96#) = happyShift action_24
+action_298 (98#) = happyShift action_25
+action_298 (104#) = happyShift action_26
+action_298 (109#) = happyShift action_27
+action_298 (110#) = happyShift action_28
+action_298 (111#) = happyShift action_29
+action_298 (114#) = happyShift action_30
+action_298 (119#) = happyShift action_31
+action_298 (124#) = happyShift action_32
+action_298 (125#) = happyShift action_33
+action_298 (126#) = happyShift action_34
+action_298 (127#) = happyShift action_35
+action_298 (128#) = happyShift action_36
+action_298 (129#) = happyShift action_37
+action_298 (131#) = happyShift action_38
+action_298 (134#) = happyShift action_39
+action_298 (137#) = happyShift action_40
+action_298 (140#) = happyShift action_41
+action_298 (145#) = happyShift action_42
+action_298 (156#) = happyShift action_43
+action_298 (157#) = happyShift action_44
+action_298 (161#) = happyShift action_45
+action_298 (162#) = happyShift action_46
+action_298 (167#) = happyShift action_47
+action_298 (170#) = happyShift action_6
+action_298 (171#) = happyShift action_48
+action_298 (172#) = happyShift action_49
+action_298 (173#) = happyShift action_50
+action_298 (174#) = happyShift action_51
+action_298 (8#) = happyGoto action_10
+action_298 (9#) = happyGoto action_11
+action_298 (10#) = happyGoto action_12
+action_298 (11#) = happyGoto action_13
+action_298 (12#) = happyGoto action_14
+action_298 (58#) = happyGoto action_15
+action_298 (59#) = happyGoto action_16
+action_298 (60#) = happyGoto action_17
+action_298 (61#) = happyGoto action_18
+action_298 (62#) = happyGoto action_19
+action_298 (63#) = happyGoto action_377
+action_298 (64#) = happyGoto action_21
+action_298 (72#) = happyGoto action_22
+action_298 (77#) = happyGoto action_23
+action_298 x = happyTcHack x happyFail
+
+action_299 x = happyTcHack x happyReduce_212
+
+action_300 (174#) = happyShift action_51
+action_300 (12#) = happyGoto action_376
+action_300 x = happyTcHack x happyFail
+
+action_301 (96#) = happyShift action_106
+action_301 (98#) = happyShift action_107
+action_301 (104#) = happyShift action_108
+action_301 (110#) = happyShift action_109
+action_301 (111#) = happyShift action_110
+action_301 (114#) = happyShift action_111
+action_301 (121#) = happyShift action_112
+action_301 (170#) = happyShift action_6
+action_301 (171#) = happyShift action_48
+action_301 (172#) = happyShift action_49
+action_301 (174#) = happyShift action_51
+action_301 (8#) = happyGoto action_101
+action_301 (9#) = happyGoto action_102
+action_301 (10#) = happyGoto action_103
+action_301 (12#) = happyGoto action_104
+action_301 (67#) = happyGoto action_375
+action_301 x = happyTcHack x happyFail
+
+action_302 x = happyTcHack x happyReduce_169
+
+action_303 (96#) = happyShift action_24
+action_303 (98#) = happyShift action_25
+action_303 (104#) = happyShift action_26
+action_303 (109#) = happyShift action_27
+action_303 (110#) = happyShift action_28
+action_303 (111#) = happyShift action_29
+action_303 (114#) = happyShift action_30
+action_303 (119#) = happyShift action_31
+action_303 (124#) = happyShift action_32
+action_303 (125#) = happyShift action_33
+action_303 (126#) = happyShift action_34
+action_303 (127#) = happyShift action_35
+action_303 (128#) = happyShift action_36
+action_303 (129#) = happyShift action_37
+action_303 (131#) = happyShift action_38
+action_303 (134#) = happyShift action_39
+action_303 (137#) = happyShift action_40
+action_303 (140#) = happyShift action_41
+action_303 (145#) = happyShift action_42
+action_303 (156#) = happyShift action_43
+action_303 (157#) = happyShift action_44
+action_303 (161#) = happyShift action_45
+action_303 (162#) = happyShift action_46
+action_303 (167#) = happyShift action_47
+action_303 (170#) = happyShift action_6
+action_303 (171#) = happyShift action_48
+action_303 (172#) = happyShift action_49
+action_303 (173#) = happyShift action_50
+action_303 (174#) = happyShift action_51
+action_303 (8#) = happyGoto action_10
+action_303 (9#) = happyGoto action_11
+action_303 (10#) = happyGoto action_12
+action_303 (11#) = happyGoto action_13
+action_303 (12#) = happyGoto action_14
+action_303 (58#) = happyGoto action_15
+action_303 (59#) = happyGoto action_16
+action_303 (60#) = happyGoto action_17
+action_303 (61#) = happyGoto action_18
+action_303 (62#) = happyGoto action_19
+action_303 (63#) = happyGoto action_199
+action_303 (64#) = happyGoto action_21
+action_303 (65#) = happyGoto action_374
+action_303 (72#) = happyGoto action_22
+action_303 (77#) = happyGoto action_23
+action_303 x = happyTcHack x happyReduce_193
+
+action_304 (96#) = happyShift action_24
+action_304 (98#) = happyShift action_25
+action_304 (104#) = happyShift action_26
+action_304 (109#) = happyShift action_27
+action_304 (110#) = happyShift action_28
+action_304 (111#) = happyShift action_29
+action_304 (114#) = happyShift action_30
+action_304 (119#) = happyShift action_31
+action_304 (124#) = happyShift action_32
+action_304 (125#) = happyShift action_33
+action_304 (126#) = happyShift action_34
+action_304 (127#) = happyShift action_35
+action_304 (128#) = happyShift action_36
+action_304 (129#) = happyShift action_37
+action_304 (131#) = happyShift action_38
+action_304 (134#) = happyShift action_39
+action_304 (137#) = happyShift action_40
+action_304 (140#) = happyShift action_41
+action_304 (145#) = happyShift action_42
+action_304 (156#) = happyShift action_43
+action_304 (157#) = happyShift action_44
+action_304 (161#) = happyShift action_45
+action_304 (162#) = happyShift action_46
+action_304 (167#) = happyShift action_47
+action_304 (170#) = happyShift action_6
+action_304 (171#) = happyShift action_48
+action_304 (172#) = happyShift action_49
+action_304 (173#) = happyShift action_50
+action_304 (174#) = happyShift action_51
+action_304 (8#) = happyGoto action_10
+action_304 (9#) = happyGoto action_11
+action_304 (10#) = happyGoto action_12
+action_304 (11#) = happyGoto action_13
+action_304 (12#) = happyGoto action_14
+action_304 (58#) = happyGoto action_15
+action_304 (59#) = happyGoto action_16
+action_304 (60#) = happyGoto action_17
+action_304 (61#) = happyGoto action_18
+action_304 (62#) = happyGoto action_19
+action_304 (63#) = happyGoto action_371
+action_304 (64#) = happyGoto action_21
+action_304 (72#) = happyGoto action_22
+action_304 (77#) = happyGoto action_23
+action_304 (86#) = happyGoto action_372
+action_304 (87#) = happyGoto action_373
+action_304 x = happyTcHack x happyReduce_257
+
+action_305 (95#) = happyShift action_370
+action_305 x = happyTcHack x happyReduce_134
+
+action_306 x = happyTcHack x happyReduce_135
+
+action_307 x = happyTcHack x happyReduce_139
+
+action_308 x = happyTcHack x happyReduce_187
+
+action_309 (140#) = happyShift action_369
+action_309 x = happyTcHack x happyFail
+
+action_310 x = happyTcHack x happyReduce_189
+
+action_311 (96#) = happyShift action_106
+action_311 (98#) = happyShift action_107
+action_311 (104#) = happyShift action_108
+action_311 (110#) = happyShift action_109
+action_311 (111#) = happyShift action_110
+action_311 (114#) = happyShift action_111
+action_311 (121#) = happyShift action_112
+action_311 (170#) = happyShift action_6
+action_311 (171#) = happyShift action_48
+action_311 (172#) = happyShift action_49
+action_311 (174#) = happyShift action_51
+action_311 (8#) = happyGoto action_101
+action_311 (9#) = happyGoto action_102
+action_311 (10#) = happyGoto action_103
+action_311 (12#) = happyGoto action_104
+action_311 (67#) = happyGoto action_188
+action_311 (74#) = happyGoto action_189
+action_311 (84#) = happyGoto action_190
+action_311 (85#) = happyGoto action_368
+action_311 x = happyTcHack x happyReduce_253
+
+action_312 (96#) = happyShift action_24
+action_312 (98#) = happyShift action_25
+action_312 (104#) = happyShift action_26
+action_312 (109#) = happyShift action_27
+action_312 (110#) = happyShift action_28
+action_312 (111#) = happyShift action_29
+action_312 (114#) = happyShift action_30
+action_312 (119#) = happyShift action_31
+action_312 (124#) = happyShift action_32
+action_312 (125#) = happyShift action_33
+action_312 (126#) = happyShift action_34
+action_312 (127#) = happyShift action_35
+action_312 (128#) = happyShift action_36
+action_312 (129#) = happyShift action_37
+action_312 (131#) = happyShift action_38
+action_312 (134#) = happyShift action_39
+action_312 (137#) = happyShift action_40
+action_312 (140#) = happyShift action_41
+action_312 (145#) = happyShift action_42
+action_312 (156#) = happyShift action_43
+action_312 (157#) = happyShift action_44
+action_312 (161#) = happyShift action_45
+action_312 (162#) = happyShift action_46
+action_312 (167#) = happyShift action_47
+action_312 (170#) = happyShift action_6
+action_312 (171#) = happyShift action_48
+action_312 (172#) = happyShift action_49
+action_312 (173#) = happyShift action_50
+action_312 (174#) = happyShift action_51
+action_312 (8#) = happyGoto action_10
+action_312 (9#) = happyGoto action_11
+action_312 (10#) = happyGoto action_12
+action_312 (11#) = happyGoto action_13
+action_312 (12#) = happyGoto action_14
+action_312 (58#) = happyGoto action_15
+action_312 (59#) = happyGoto action_16
+action_312 (60#) = happyGoto action_17
+action_312 (61#) = happyGoto action_18
+action_312 (62#) = happyGoto action_19
+action_312 (63#) = happyGoto action_367
+action_312 (64#) = happyGoto action_21
+action_312 (72#) = happyGoto action_22
+action_312 (77#) = happyGoto action_23
+action_312 x = happyTcHack x happyFail
+
+action_313 x = happyTcHack x happyReduce_233
+
+action_314 (96#) = happyShift action_106
+action_314 (98#) = happyShift action_107
+action_314 (104#) = happyShift action_108
+action_314 (106#) = happyShift action_176
+action_314 (110#) = happyShift action_109
+action_314 (111#) = happyShift action_110
+action_314 (114#) = happyShift action_111
+action_314 (121#) = happyShift action_112
+action_314 (170#) = happyShift action_6
+action_314 (171#) = happyShift action_48
+action_314 (172#) = happyShift action_49
+action_314 (174#) = happyShift action_51
+action_314 (8#) = happyGoto action_101
+action_314 (9#) = happyGoto action_102
+action_314 (10#) = happyGoto action_103
+action_314 (12#) = happyGoto action_170
+action_314 (67#) = happyGoto action_171
+action_314 (68#) = happyGoto action_172
+action_314 (69#) = happyGoto action_203
+action_314 (82#) = happyGoto action_204
+action_314 (83#) = happyGoto action_366
+action_314 x = happyTcHack x happyFail
+
+action_315 x = happyTcHack x happyReduce_238
+
+action_316 x = happyTcHack x happyReduce_182
+
+action_317 (96#) = happyShift action_24
+action_317 (98#) = happyShift action_25
+action_317 (104#) = happyShift action_26
+action_317 (109#) = happyShift action_27
+action_317 (110#) = happyShift action_28
+action_317 (111#) = happyShift action_29
+action_317 (114#) = happyShift action_30
+action_317 (119#) = happyShift action_31
+action_317 (124#) = happyShift action_32
+action_317 (125#) = happyShift action_33
+action_317 (126#) = happyShift action_34
+action_317 (127#) = happyShift action_35
+action_317 (128#) = happyShift action_36
+action_317 (129#) = happyShift action_37
+action_317 (131#) = happyShift action_38
+action_317 (134#) = happyShift action_39
+action_317 (137#) = happyShift action_40
+action_317 (140#) = happyShift action_41
+action_317 (145#) = happyShift action_42
+action_317 (156#) = happyShift action_43
+action_317 (157#) = happyShift action_44
+action_317 (161#) = happyShift action_45
+action_317 (162#) = happyShift action_46
+action_317 (167#) = happyShift action_47
+action_317 (170#) = happyShift action_6
+action_317 (171#) = happyShift action_48
+action_317 (172#) = happyShift action_49
+action_317 (173#) = happyShift action_50
+action_317 (174#) = happyShift action_51
+action_317 (8#) = happyGoto action_10
+action_317 (9#) = happyGoto action_11
+action_317 (10#) = happyGoto action_12
+action_317 (11#) = happyGoto action_13
+action_317 (12#) = happyGoto action_14
+action_317 (58#) = happyGoto action_15
+action_317 (59#) = happyGoto action_16
+action_317 (60#) = happyGoto action_17
+action_317 (61#) = happyGoto action_18
+action_317 (62#) = happyGoto action_19
+action_317 (63#) = happyGoto action_365
+action_317 (64#) = happyGoto action_21
+action_317 (72#) = happyGoto action_22
+action_317 (77#) = happyGoto action_23
+action_317 x = happyTcHack x happyFail
+
+action_318 x = happyTcHack x happyReduce_205
+
+action_319 x = happyTcHack x happyReduce_209
+
+action_320 (174#) = happyShift action_51
+action_320 (12#) = happyGoto action_87
+action_320 (53#) = happyGoto action_180
+action_320 (70#) = happyGoto action_181
+action_320 (73#) = happyGoto action_364
+action_320 x = happyTcHack x happyReduce_229
+
+action_321 (96#) = happyShift action_106
+action_321 (98#) = happyShift action_107
+action_321 (104#) = happyShift action_108
+action_321 (106#) = happyShift action_176
+action_321 (110#) = happyShift action_109
+action_321 (111#) = happyShift action_110
+action_321 (114#) = happyShift action_111
+action_321 (121#) = happyShift action_112
+action_321 (170#) = happyShift action_6
+action_321 (171#) = happyShift action_48
+action_321 (172#) = happyShift action_49
+action_321 (174#) = happyShift action_51
+action_321 (8#) = happyGoto action_101
+action_321 (9#) = happyGoto action_102
+action_321 (10#) = happyGoto action_103
+action_321 (12#) = happyGoto action_170
+action_321 (67#) = happyGoto action_171
+action_321 (68#) = happyGoto action_172
+action_321 (69#) = happyGoto action_363
+action_321 x = happyTcHack x happyFail
+
+action_322 x = happyTcHack x happyReduce_204
+
+action_323 x = happyTcHack x happyReduce_211
+
+action_324 x = happyTcHack x happyReduce_199
+
+action_325 x = happyTcHack x happyReduce_216
+
+action_326 x = happyTcHack x happyReduce_210
+
+action_327 (96#) = happyShift action_106
+action_327 (98#) = happyShift action_107
+action_327 (104#) = happyShift action_108
+action_327 (106#) = happyShift action_176
+action_327 (110#) = happyShift action_109
+action_327 (111#) = happyShift action_110
+action_327 (114#) = happyShift action_111
+action_327 (121#) = happyShift action_112
+action_327 (170#) = happyShift action_6
+action_327 (171#) = happyShift action_48
+action_327 (172#) = happyShift action_49
+action_327 (174#) = happyShift action_51
+action_327 (8#) = happyGoto action_101
+action_327 (9#) = happyGoto action_102
+action_327 (10#) = happyGoto action_103
+action_327 (12#) = happyGoto action_170
+action_327 (67#) = happyGoto action_171
+action_327 (68#) = happyGoto action_172
+action_327 (69#) = happyGoto action_173
+action_327 (79#) = happyGoto action_174
+action_327 (81#) = happyGoto action_362
+action_327 x = happyTcHack x happyReduce_246
+
+action_328 x = happyTcHack x happyReduce_214
+
+action_329 (174#) = happyShift action_51
+action_329 (12#) = happyGoto action_361
+action_329 x = happyTcHack x happyFail
+
+action_330 (112#) = happyShift action_360
+action_330 x = happyTcHack x happyFail
+
+action_331 x = happyTcHack x happyReduce_241
+
+action_332 x = happyTcHack x happyReduce_245
+
+action_333 x = happyTcHack x happyReduce_160
+
+action_334 x = happyTcHack x happyReduce_150
+
+action_335 x = happyTcHack x happyReduce_197
+
+action_336 (99#) = happyShift action_359
+action_336 x = happyTcHack x happyFail
+
+action_337 x = happyTcHack x happyReduce_154
+
+action_338 (97#) = happyShift action_358
+action_338 x = happyTcHack x happyFail
+
+action_339 x = happyTcHack x happyReduce_129
+
+action_340 (97#) = happyShift action_357
+action_340 x = happyTcHack x happyFail
+
+action_341 x = happyTcHack x happyReduce_223
+
+action_342 (97#) = happyShift action_155
+action_342 (103#) = happyShift action_156
+action_342 x = happyTcHack x happyReduce_128
+
+action_343 x = happyTcHack x happyReduce_25
+
+action_344 (151#) = happyShift action_356
+action_344 (28#) = happyGoto action_355
+action_344 x = happyTcHack x happyReduce_55
+
+action_345 (102#) = happyShift action_354
+action_345 x = happyTcHack x happyReduce_27
+
+action_346 (103#) = happyShift action_352
+action_346 (169#) = happyShift action_353
+action_346 x = happyTcHack x happyReduce_66
+
+action_347 (174#) = happyShift action_51
+action_347 (12#) = happyGoto action_351
+action_347 x = happyTcHack x happyFail
+
+action_348 (174#) = happyShift action_51
+action_348 (12#) = happyGoto action_241
+action_348 (32#) = happyGoto action_349
+action_348 (33#) = happyGoto action_350
+action_348 x = happyTcHack x happyReduce_65
+
+action_349 x = happyTcHack x happyReduce_33
+
+action_350 (103#) = happyShift action_352
+action_350 x = happyTcHack x happyReduce_66
+
+action_351 x = happyTcHack x happyReduce_32
+
+action_352 (174#) = happyShift action_51
+action_352 (12#) = happyGoto action_241
+action_352 (32#) = happyGoto action_468
+action_352 (33#) = happyGoto action_350
+action_352 x = happyTcHack x happyReduce_65
+
+action_353 (98#) = happyShift action_408
+action_353 (174#) = happyShift action_51
+action_353 (12#) = happyGoto action_406
+action_353 (27#) = happyGoto action_467
+action_353 (29#) = happyGoto action_425
+action_353 x = happyTcHack x happyReduce_52
+
+action_354 (174#) = happyShift action_51
+action_354 (12#) = happyGoto action_241
+action_354 (33#) = happyGoto action_466
+action_354 x = happyTcHack x happyReduce_50
+
+action_355 x = happyTcHack x happyReduce_26
+
+action_356 (98#) = happyShift action_408
+action_356 (174#) = happyShift action_51
+action_356 (12#) = happyGoto action_406
+action_356 (27#) = happyGoto action_465
+action_356 (29#) = happyGoto action_425
+action_356 x = happyTcHack x happyReduce_52
+
+action_357 x = happyTcHack x happyReduce_188
+
+action_358 x = happyTcHack x happyReduce_159
+
+action_359 x = happyTcHack x happyReduce_239
+
+action_360 x = happyTcHack x happyReduce_155
+
+action_361 x = happyTcHack x happyReduce_201
+
+action_362 x = happyTcHack x happyReduce_248
+
+action_363 (108#) = happyShift action_296
+action_363 (117#) = happyShift action_297
+action_363 x = happyTcHack x happyReduce_221
+
+action_364 x = happyTcHack x happyReduce_231
+
+action_365 x = happyTcHack x happyReduce_183
+
+action_366 (97#) = happyShift action_464
+action_366 x = happyTcHack x happyFail
+
+action_367 x = happyTcHack x happyReduce_252
+
+action_368 x = happyTcHack x happyReduce_255
+
+action_369 (96#) = happyShift action_24
+action_369 (98#) = happyShift action_25
+action_369 (104#) = happyShift action_26
+action_369 (109#) = happyShift action_27
+action_369 (110#) = happyShift action_28
+action_369 (111#) = happyShift action_29
+action_369 (114#) = happyShift action_30
+action_369 (119#) = happyShift action_31
+action_369 (124#) = happyShift action_32
+action_369 (125#) = happyShift action_33
+action_369 (126#) = happyShift action_34
+action_369 (127#) = happyShift action_35
+action_369 (128#) = happyShift action_36
+action_369 (129#) = happyShift action_37
+action_369 (131#) = happyShift action_38
+action_369 (134#) = happyShift action_39
+action_369 (137#) = happyShift action_40
+action_369 (140#) = happyShift action_41
+action_369 (145#) = happyShift action_42
+action_369 (156#) = happyShift action_43
+action_369 (157#) = happyShift action_44
+action_369 (161#) = happyShift action_45
+action_369 (162#) = happyShift action_46
+action_369 (167#) = happyShift action_47
+action_369 (170#) = happyShift action_6
+action_369 (171#) = happyShift action_48
+action_369 (172#) = happyShift action_49
+action_369 (173#) = happyShift action_50
+action_369 (174#) = happyShift action_51
+action_369 (8#) = happyGoto action_10
+action_369 (9#) = happyGoto action_11
+action_369 (10#) = happyGoto action_12
+action_369 (11#) = happyGoto action_13
+action_369 (12#) = happyGoto action_14
+action_369 (58#) = happyGoto action_15
+action_369 (59#) = happyGoto action_16
+action_369 (60#) = happyGoto action_17
+action_369 (61#) = happyGoto action_18
+action_369 (62#) = happyGoto action_19
+action_369 (63#) = happyGoto action_463
+action_369 (64#) = happyGoto action_21
+action_369 (72#) = happyGoto action_22
+action_369 (77#) = happyGoto action_23
+action_369 x = happyTcHack x happyFail
+
+action_370 (96#) = happyShift action_24
+action_370 (98#) = happyShift action_25
+action_370 (104#) = happyShift action_26
+action_370 (109#) = happyShift action_27
+action_370 (110#) = happyShift action_28
+action_370 (111#) = happyShift action_29
+action_370 (114#) = happyShift action_30
+action_370 (119#) = happyShift action_31
+action_370 (124#) = happyShift action_32
+action_370 (125#) = happyShift action_33
+action_370 (126#) = happyShift action_34
+action_370 (127#) = happyShift action_35
+action_370 (128#) = happyShift action_36
+action_370 (129#) = happyShift action_37
+action_370 (131#) = happyShift action_38
+action_370 (134#) = happyShift action_39
+action_370 (137#) = happyShift action_40
+action_370 (140#) = happyShift action_41
+action_370 (145#) = happyShift action_42
+action_370 (156#) = happyShift action_43
+action_370 (157#) = happyShift action_44
+action_370 (161#) = happyShift action_45
+action_370 (162#) = happyShift action_46
+action_370 (167#) = happyShift action_47
+action_370 (170#) = happyShift action_6
+action_370 (171#) = happyShift action_48
+action_370 (172#) = happyShift action_49
+action_370 (173#) = happyShift action_50
+action_370 (174#) = happyShift action_51
+action_370 (8#) = happyGoto action_10
+action_370 (9#) = happyGoto action_11
+action_370 (10#) = happyGoto action_12
+action_370 (11#) = happyGoto action_13
+action_370 (12#) = happyGoto action_14
+action_370 (58#) = happyGoto action_15
+action_370 (59#) = happyGoto action_16
+action_370 (60#) = happyGoto action_17
+action_370 (61#) = happyGoto action_18
+action_370 (62#) = happyGoto action_19
+action_370 (63#) = happyGoto action_462
+action_370 (64#) = happyGoto action_21
+action_370 (72#) = happyGoto action_22
+action_370 (77#) = happyGoto action_23
+action_370 x = happyTcHack x happyFail
+
+action_371 (123#) = happyShift action_461
+action_371 x = happyTcHack x happyFail
+
+action_372 (94#) = happyShift action_460
+action_372 x = happyTcHack x happyReduce_258
+
+action_373 (97#) = happyShift action_459
+action_373 x = happyTcHack x happyFail
+
+action_374 x = happyTcHack x happyReduce_195
+
+action_375 x = happyTcHack x happyReduce_215
+
+action_376 (96#) = happyShift action_106
+action_376 (98#) = happyShift action_107
+action_376 (104#) = happyShift action_108
+action_376 (110#) = happyShift action_109
+action_376 (111#) = happyShift action_110
+action_376 (114#) = happyShift action_111
+action_376 (121#) = happyShift action_112
+action_376 (170#) = happyShift action_6
+action_376 (171#) = happyShift action_48
+action_376 (172#) = happyShift action_49
+action_376 (174#) = happyShift action_51
+action_376 (8#) = happyGoto action_101
+action_376 (9#) = happyGoto action_102
+action_376 (10#) = happyGoto action_103
+action_376 (12#) = happyGoto action_104
+action_376 (67#) = happyGoto action_188
+action_376 (74#) = happyGoto action_458
+action_376 x = happyTcHack x happyReduce_205
+
+action_377 x = happyTcHack x happyReduce_249
+
+action_378 x = happyTcHack x happyReduce_219
+
+action_379 x = happyTcHack x happyReduce_218
+
+action_380 x = happyTcHack x happyReduce_251
+
+action_381 x = happyTcHack x happyReduce_164
+
+action_382 x = happyTcHack x happyReduce_165
+
+action_383 (89#) = happyGoto action_457
+action_383 x = happyTcHack x happyReduce_262
+
+action_384 (104#) = happyShift action_290
+action_384 (174#) = happyShift action_51
+action_384 (12#) = happyGoto action_287
+action_384 (36#) = happyGoto action_288
+action_384 (46#) = happyGoto action_456
+action_384 x = happyTcHack x happyReduce_113
+
+action_385 (96#) = happyShift action_140
+action_385 (98#) = happyShift action_455
+action_385 (104#) = happyShift action_26
+action_385 (109#) = happyShift action_83
+action_385 (110#) = happyShift action_28
+action_385 (111#) = happyShift action_29
+action_385 (125#) = happyShift action_33
+action_385 (126#) = happyShift action_34
+action_385 (127#) = happyShift action_35
+action_385 (128#) = happyShift action_36
+action_385 (129#) = happyShift action_37
+action_385 (134#) = happyShift action_39
+action_385 (170#) = happyShift action_6
+action_385 (171#) = happyShift action_48
+action_385 (172#) = happyShift action_49
+action_385 (173#) = happyShift action_50
+action_385 (174#) = happyShift action_51
+action_385 (8#) = happyGoto action_10
+action_385 (9#) = happyGoto action_11
+action_385 (10#) = happyGoto action_12
+action_385 (11#) = happyGoto action_13
+action_385 (12#) = happyGoto action_79
+action_385 (58#) = happyGoto action_453
+action_385 (72#) = happyGoto action_22
+action_385 (88#) = happyGoto action_454
+action_385 x = happyTcHack x happyReduce_95
+
+action_386 (174#) = happyShift action_51
+action_386 (12#) = happyGoto action_451
+action_386 (38#) = happyGoto action_284
+action_386 (48#) = happyGoto action_452
+action_386 x = happyTcHack x happyReduce_117
+
+action_387 (174#) = happyShift action_51
+action_387 (12#) = happyGoto action_448
+action_387 (39#) = happyGoto action_449
+action_387 (40#) = happyGoto action_450
+action_387 x = happyTcHack x happyReduce_102
+
+action_388 (174#) = happyShift action_51
+action_388 (12#) = happyGoto action_279
+action_388 (44#) = happyGoto action_280
+action_388 (51#) = happyGoto action_447
+action_388 x = happyTcHack x happyReduce_123
+
+action_389 (174#) = happyShift action_51
+action_389 (12#) = happyGoto action_446
+action_389 x = happyTcHack x happyFail
+
+action_390 (96#) = happyShift action_24
+action_390 (98#) = happyShift action_25
+action_390 (104#) = happyShift action_26
+action_390 (109#) = happyShift action_27
+action_390 (110#) = happyShift action_28
+action_390 (111#) = happyShift action_29
+action_390 (114#) = happyShift action_30
+action_390 (119#) = happyShift action_31
+action_390 (124#) = happyShift action_32
+action_390 (125#) = happyShift action_33
+action_390 (126#) = happyShift action_34
+action_390 (127#) = happyShift action_35
+action_390 (128#) = happyShift action_36
+action_390 (129#) = happyShift action_37
+action_390 (131#) = happyShift action_38
+action_390 (134#) = happyShift action_39
+action_390 (137#) = happyShift action_40
+action_390 (140#) = happyShift action_41
+action_390 (145#) = happyShift action_42
+action_390 (156#) = happyShift action_43
+action_390 (157#) = happyShift action_44
+action_390 (161#) = happyShift action_45
+action_390 (162#) = happyShift action_46
+action_390 (167#) = happyShift action_47
+action_390 (170#) = happyShift action_6
+action_390 (171#) = happyShift action_48
+action_390 (172#) = happyShift action_49
+action_390 (173#) = happyShift action_50
+action_390 (174#) = happyShift action_51
+action_390 (8#) = happyGoto action_10
+action_390 (9#) = happyGoto action_11
+action_390 (10#) = happyGoto action_12
+action_390 (11#) = happyGoto action_13
+action_390 (12#) = happyGoto action_14
+action_390 (58#) = happyGoto action_15
+action_390 (59#) = happyGoto action_16
+action_390 (60#) = happyGoto action_17
+action_390 (61#) = happyGoto action_18
+action_390 (62#) = happyGoto action_19
+action_390 (63#) = happyGoto action_445
+action_390 (64#) = happyGoto action_21
+action_390 (72#) = happyGoto action_22
+action_390 (77#) = happyGoto action_23
+action_390 x = happyTcHack x happyFail
+
+action_391 (174#) = happyShift action_51
+action_391 (12#) = happyGoto action_87
+action_391 (37#) = happyGoto action_276
+action_391 (47#) = happyGoto action_444
+action_391 (53#) = happyGoto action_278
+action_391 x = happyTcHack x happyReduce_115
+
+action_392 (96#) = happyShift action_443
+action_392 x = happyTcHack x happyFail
+
+action_393 (174#) = happyShift action_51
+action_393 (12#) = happyGoto action_267
+action_393 (41#) = happyGoto action_268
+action_393 (49#) = happyGoto action_442
+action_393 x = happyTcHack x happyReduce_119
+
+action_394 (98#) = happyShift action_441
+action_394 (174#) = happyShift action_51
+action_394 (12#) = happyGoto action_438
+action_394 (42#) = happyGoto action_439
+action_394 (52#) = happyGoto action_440
+action_394 x = happyTcHack x happyReduce_125
+
+action_395 x = happyTcHack x happyReduce_87
+
+action_396 x = happyTcHack x happyReduce_86
+
+action_397 (96#) = happyShift action_24
+action_397 (98#) = happyShift action_25
+action_397 (104#) = happyShift action_26
+action_397 (109#) = happyShift action_27
+action_397 (110#) = happyShift action_28
+action_397 (111#) = happyShift action_29
+action_397 (114#) = happyShift action_30
+action_397 (119#) = happyShift action_31
+action_397 (124#) = happyShift action_32
+action_397 (125#) = happyShift action_33
+action_397 (126#) = happyShift action_34
+action_397 (127#) = happyShift action_35
+action_397 (128#) = happyShift action_36
+action_397 (129#) = happyShift action_37
+action_397 (131#) = happyShift action_38
+action_397 (134#) = happyShift action_39
+action_397 (137#) = happyShift action_40
+action_397 (140#) = happyShift action_41
+action_397 (145#) = happyShift action_42
+action_397 (156#) = happyShift action_43
+action_397 (157#) = happyShift action_44
+action_397 (161#) = happyShift action_45
+action_397 (162#) = happyShift action_46
+action_397 (167#) = happyShift action_47
+action_397 (170#) = happyShift action_6
+action_397 (171#) = happyShift action_48
+action_397 (172#) = happyShift action_49
+action_397 (173#) = happyShift action_50
+action_397 (174#) = happyShift action_51
+action_397 (8#) = happyGoto action_10
+action_397 (9#) = happyGoto action_11
+action_397 (10#) = happyGoto action_12
+action_397 (11#) = happyGoto action_13
+action_397 (12#) = happyGoto action_14
+action_397 (58#) = happyGoto action_15
+action_397 (59#) = happyGoto action_16
+action_397 (60#) = happyGoto action_17
+action_397 (61#) = happyGoto action_18
+action_397 (62#) = happyGoto action_19
+action_397 (63#) = happyGoto action_437
+action_397 (64#) = happyGoto action_21
+action_397 (72#) = happyGoto action_22
+action_397 (77#) = happyGoto action_23
+action_397 x = happyTcHack x happyFail
+
+action_398 (104#) = happyShift action_257
+action_398 (174#) = happyShift action_51
+action_398 (12#) = happyGoto action_252
+action_398 (54#) = happyGoto action_262
+action_398 (55#) = happyGoto action_436
+action_398 x = happyTcHack x happyFail
+
+action_399 (104#) = happyShift action_257
+action_399 (174#) = happyShift action_51
+action_399 (12#) = happyGoto action_252
+action_399 (43#) = happyGoto action_260
+action_399 (50#) = happyGoto action_435
+action_399 (54#) = happyGoto action_262
+action_399 (55#) = happyGoto action_263
+action_399 x = happyTcHack x happyReduce_121
+
+action_400 x = happyTcHack x happyReduce_94
+
+action_401 (105#) = happyShift action_434
+action_401 x = happyTcHack x happyFail
+
+action_402 (96#) = happyShift action_24
+action_402 (98#) = happyShift action_25
+action_402 (104#) = happyShift action_26
+action_402 (109#) = happyShift action_27
+action_402 (110#) = happyShift action_28
+action_402 (111#) = happyShift action_29
+action_402 (114#) = happyShift action_30
+action_402 (119#) = happyShift action_31
+action_402 (124#) = happyShift action_32
+action_402 (125#) = happyShift action_33
+action_402 (126#) = happyShift action_34
+action_402 (127#) = happyShift action_35
+action_402 (128#) = happyShift action_36
+action_402 (129#) = happyShift action_37
+action_402 (131#) = happyShift action_38
+action_402 (134#) = happyShift action_39
+action_402 (137#) = happyShift action_40
+action_402 (140#) = happyShift action_41
+action_402 (145#) = happyShift action_42
+action_402 (156#) = happyShift action_43
+action_402 (157#) = happyShift action_44
+action_402 (161#) = happyShift action_45
+action_402 (162#) = happyShift action_46
+action_402 (167#) = happyShift action_47
+action_402 (170#) = happyShift action_6
+action_402 (171#) = happyShift action_48
+action_402 (172#) = happyShift action_49
+action_402 (173#) = happyShift action_50
+action_402 (174#) = happyShift action_51
+action_402 (8#) = happyGoto action_10
+action_402 (9#) = happyGoto action_11
+action_402 (10#) = happyGoto action_12
+action_402 (11#) = happyGoto action_13
+action_402 (12#) = happyGoto action_14
+action_402 (58#) = happyGoto action_15
+action_402 (59#) = happyGoto action_16
+action_402 (60#) = happyGoto action_17
+action_402 (61#) = happyGoto action_18
+action_402 (62#) = happyGoto action_19
+action_402 (63#) = happyGoto action_433
+action_402 (64#) = happyGoto action_21
+action_402 (72#) = happyGoto action_22
+action_402 (77#) = happyGoto action_23
+action_402 x = happyTcHack x happyFail
+
+action_403 (96#) = happyShift action_24
+action_403 (98#) = happyShift action_25
+action_403 (104#) = happyShift action_26
+action_403 (109#) = happyShift action_27
+action_403 (110#) = happyShift action_28
+action_403 (111#) = happyShift action_29
+action_403 (114#) = happyShift action_30
+action_403 (119#) = happyShift action_31
+action_403 (124#) = happyShift action_32
+action_403 (125#) = happyShift action_33
+action_403 (126#) = happyShift action_34
+action_403 (127#) = happyShift action_35
+action_403 (128#) = happyShift action_36
+action_403 (129#) = happyShift action_37
+action_403 (131#) = happyShift action_38
+action_403 (134#) = happyShift action_39
+action_403 (137#) = happyShift action_40
+action_403 (140#) = happyShift action_41
+action_403 (145#) = happyShift action_42
+action_403 (156#) = happyShift action_43
+action_403 (157#) = happyShift action_44
+action_403 (161#) = happyShift action_45
+action_403 (162#) = happyShift action_46
+action_403 (167#) = happyShift action_47
+action_403 (170#) = happyShift action_6
+action_403 (171#) = happyShift action_48
+action_403 (172#) = happyShift action_49
+action_403 (173#) = happyShift action_50
+action_403 (174#) = happyShift action_51
+action_403 (8#) = happyGoto action_10
+action_403 (9#) = happyGoto action_11
+action_403 (10#) = happyGoto action_12
+action_403 (11#) = happyGoto action_13
+action_403 (12#) = happyGoto action_14
+action_403 (58#) = happyGoto action_15
+action_403 (59#) = happyGoto action_16
+action_403 (60#) = happyGoto action_17
+action_403 (61#) = happyGoto action_18
+action_403 (62#) = happyGoto action_19
+action_403 (63#) = happyGoto action_432
+action_403 (64#) = happyGoto action_21
+action_403 (72#) = happyGoto action_22
+action_403 (77#) = happyGoto action_23
+action_403 x = happyTcHack x happyFail
+
+action_404 (95#) = happyShift action_431
+action_404 x = happyTcHack x happyFail
+
+action_405 (104#) = happyShift action_257
+action_405 (174#) = happyShift action_51
+action_405 (12#) = happyGoto action_252
+action_405 (34#) = happyGoto action_253
+action_405 (45#) = happyGoto action_430
+action_405 (54#) = happyGoto action_255
+action_405 (55#) = happyGoto action_256
+action_405 x = happyTcHack x happyReduce_111
+
+action_406 x = happyTcHack x happyReduce_57
+
+action_407 (101#) = happyShift action_429
+action_407 x = happyTcHack x happyFail
+
+action_408 (142#) = happyShift action_427
+action_408 (144#) = happyShift action_428
+action_408 (31#) = happyGoto action_426
+action_408 x = happyTcHack x happyReduce_62
+
+action_409 x = happyTcHack x happyReduce_38
+
+action_410 x = happyTcHack x happyReduce_37
+
+action_411 x = happyTcHack x happyReduce_47
+
+action_412 x = happyTcHack x happyReduce_46
+
+action_413 (98#) = happyShift action_408
+action_413 (174#) = happyShift action_51
+action_413 (12#) = happyGoto action_406
+action_413 (27#) = happyGoto action_424
+action_413 (29#) = happyGoto action_425
+action_413 x = happyTcHack x happyReduce_52
+
+action_414 (174#) = happyShift action_51
+action_414 (12#) = happyGoto action_241
+action_414 (33#) = happyGoto action_423
+action_414 x = happyTcHack x happyReduce_50
+
+action_415 (96#) = happyShift action_422
+action_415 x = happyTcHack x happyFail
+
+action_416 (174#) = happyShift action_51
+action_416 (12#) = happyGoto action_87
+action_416 (53#) = happyGoto action_421
+action_416 x = happyTcHack x happyFail
+
+action_417 (104#) = happyShift action_420
+action_417 x = happyTcHack x happyFail
+
+action_418 (95#) = happyShift action_419
+action_418 x = happyTcHack x happyFail
+
+action_419 (174#) = happyShift action_51
+action_419 (12#) = happyGoto action_492
+action_419 x = happyTcHack x happyFail
+
+action_420 (174#) = happyShift action_51
+action_420 (12#) = happyGoto action_87
+action_420 (53#) = happyGoto action_491
+action_420 x = happyTcHack x happyFail
+
+action_421 (105#) = happyShift action_490
+action_421 x = happyTcHack x happyFail
+
+action_422 (25#) = happyGoto action_489
+action_422 x = happyTcHack x happyReduce_48
+
+action_423 (169#) = happyShift action_488
+action_423 x = happyTcHack x happyFail
+
+action_424 (102#) = happyShift action_487
+action_424 x = happyTcHack x happyReduce_42
+
+action_425 (103#) = happyShift action_486
+action_425 x = happyTcHack x happyReduce_53
+
+action_426 (174#) = happyShift action_51
+action_426 (12#) = happyGoto action_485
+action_426 x = happyTcHack x happyFail
+
+action_427 x = happyTcHack x happyReduce_63
+
+action_428 x = happyTcHack x happyReduce_64
+
+action_429 (98#) = happyShift action_408
+action_429 (174#) = happyShift action_51
+action_429 (12#) = happyGoto action_406
+action_429 (29#) = happyGoto action_484
+action_429 x = happyTcHack x happyFail
+
+action_430 x = happyTcHack x happyReduce_112
+
+action_431 (96#) = happyShift action_24
+action_431 (98#) = happyShift action_25
+action_431 (104#) = happyShift action_26
+action_431 (109#) = happyShift action_27
+action_431 (110#) = happyShift action_28
+action_431 (111#) = happyShift action_29
+action_431 (114#) = happyShift action_30
+action_431 (119#) = happyShift action_31
+action_431 (124#) = happyShift action_32
+action_431 (125#) = happyShift action_33
+action_431 (126#) = happyShift action_34
+action_431 (127#) = happyShift action_35
+action_431 (128#) = happyShift action_36
+action_431 (129#) = happyShift action_37
+action_431 (131#) = happyShift action_38
+action_431 (134#) = happyShift action_39
+action_431 (137#) = happyShift action_40
+action_431 (140#) = happyShift action_41
+action_431 (145#) = happyShift action_42
+action_431 (156#) = happyShift action_43
+action_431 (157#) = happyShift action_44
+action_431 (161#) = happyShift action_45
+action_431 (162#) = happyShift action_46
+action_431 (167#) = happyShift action_47
+action_431 (170#) = happyShift action_6
+action_431 (171#) = happyShift action_48
+action_431 (172#) = happyShift action_49
+action_431 (173#) = happyShift action_50
+action_431 (174#) = happyShift action_51
+action_431 (8#) = happyGoto action_10
+action_431 (9#) = happyGoto action_11
+action_431 (10#) = happyGoto action_12
+action_431 (11#) = happyGoto action_13
+action_431 (12#) = happyGoto action_14
+action_431 (58#) = happyGoto action_15
+action_431 (59#) = happyGoto action_16
+action_431 (60#) = happyGoto action_17
+action_431 (61#) = happyGoto action_18
+action_431 (62#) = happyGoto action_19
+action_431 (63#) = happyGoto action_483
+action_431 (64#) = happyGoto action_21
+action_431 (72#) = happyGoto action_22
+action_431 (77#) = happyGoto action_23
+action_431 x = happyTcHack x happyFail
+
+action_432 (95#) = happyShift action_482
+action_432 x = happyTcHack x happyReduce_71
+
+action_433 x = happyTcHack x happyReduce_72
+
+action_434 x = happyTcHack x happyReduce_131
+
+action_435 x = happyTcHack x happyReduce_122
+
+action_436 x = happyTcHack x happyReduce_133
+
+action_437 x = happyTcHack x happyReduce_109
+
+action_438 (89#) = happyGoto action_481
+action_438 x = happyTcHack x happyReduce_262
+
+action_439 (108#) = happyShift action_480
+action_439 x = happyTcHack x happyReduce_126
+
+action_440 x = happyTcHack x happyReduce_105
+
+action_441 (140#) = happyShift action_479
+action_441 x = happyTcHack x happyFail
+
+action_442 x = happyTcHack x happyReduce_120
+
+action_443 (25#) = happyGoto action_478
+action_443 x = happyTcHack x happyReduce_48
+
+action_444 x = happyTcHack x happyReduce_116
+
+action_445 x = happyTcHack x happyReduce_98
+
+action_446 x = happyTcHack x happyReduce_110
+
+action_447 x = happyTcHack x happyReduce_124
+
+action_448 (107#) = happyShift action_477
+action_448 x = happyTcHack x happyReduce_100
+
+action_449 (108#) = happyShift action_476
+action_449 x = happyTcHack x happyReduce_103
+
+action_450 x = happyTcHack x happyReduce_99
+
+action_451 (95#) = happyShift action_387
+action_451 x = happyTcHack x happyFail
+
+action_452 x = happyTcHack x happyReduce_118
+
+action_453 x = happyTcHack x happyReduce_261
+
+action_454 x = happyTcHack x happyReduce_263
+
+action_455 (96#) = happyShift action_24
+action_455 (98#) = happyShift action_25
+action_455 (104#) = happyShift action_26
+action_455 (109#) = happyShift action_27
+action_455 (110#) = happyShift action_28
+action_455 (111#) = happyShift action_29
+action_455 (114#) = happyShift action_30
+action_455 (119#) = happyShift action_31
+action_455 (121#) = happyShift action_100
+action_455 (124#) = happyShift action_32
+action_455 (125#) = happyShift action_33
+action_455 (126#) = happyShift action_34
+action_455 (127#) = happyShift action_35
+action_455 (128#) = happyShift action_36
+action_455 (129#) = happyShift action_37
+action_455 (131#) = happyShift action_38
+action_455 (134#) = happyShift action_39
+action_455 (137#) = happyShift action_40
+action_455 (140#) = happyShift action_123
+action_455 (145#) = happyShift action_42
+action_455 (156#) = happyShift action_43
+action_455 (157#) = happyShift action_44
+action_455 (161#) = happyShift action_45
+action_455 (162#) = happyShift action_46
+action_455 (167#) = happyShift action_47
+action_455 (170#) = happyShift action_6
+action_455 (171#) = happyShift action_48
+action_455 (172#) = happyShift action_49
+action_455 (173#) = happyShift action_50
+action_455 (174#) = happyShift action_51
+action_455 (8#) = happyGoto action_10
+action_455 (9#) = happyGoto action_11
+action_455 (10#) = happyGoto action_12
+action_455 (11#) = happyGoto action_13
+action_455 (12#) = happyGoto action_120
+action_455 (58#) = happyGoto action_15
+action_455 (59#) = happyGoto action_16
+action_455 (60#) = happyGoto action_17
+action_455 (61#) = happyGoto action_18
+action_455 (62#) = happyGoto action_19
+action_455 (63#) = happyGoto action_121
+action_455 (64#) = happyGoto action_21
+action_455 (72#) = happyGoto action_22
+action_455 (75#) = happyGoto action_97
+action_455 (76#) = happyGoto action_475
+action_455 (77#) = happyGoto action_23
+action_455 x = happyTcHack x happyReduce_236
+
+action_456 x = happyTcHack x happyReduce_114
+
+action_457 (96#) = happyShift action_140
+action_457 (98#) = happyShift action_455
+action_457 (104#) = happyShift action_26
+action_457 (105#) = happyShift action_474
+action_457 (109#) = happyShift action_83
+action_457 (110#) = happyShift action_28
+action_457 (111#) = happyShift action_29
+action_457 (125#) = happyShift action_33
+action_457 (126#) = happyShift action_34
+action_457 (127#) = happyShift action_35
+action_457 (128#) = happyShift action_36
+action_457 (129#) = happyShift action_37
+action_457 (134#) = happyShift action_39
+action_457 (170#) = happyShift action_6
+action_457 (171#) = happyShift action_48
+action_457 (172#) = happyShift action_49
+action_457 (173#) = happyShift action_50
+action_457 (174#) = happyShift action_51
+action_457 (8#) = happyGoto action_10
+action_457 (9#) = happyGoto action_11
+action_457 (10#) = happyGoto action_12
+action_457 (11#) = happyGoto action_13
+action_457 (12#) = happyGoto action_79
+action_457 (58#) = happyGoto action_453
+action_457 (72#) = happyGoto action_22
+action_457 (88#) = happyGoto action_454
+action_457 x = happyTcHack x happyFail
+
+action_458 x = happyTcHack x happyReduce_213
+
+action_459 x = happyTcHack x happyReduce_168
+
+action_460 (96#) = happyShift action_24
+action_460 (98#) = happyShift action_25
+action_460 (104#) = happyShift action_26
+action_460 (109#) = happyShift action_27
+action_460 (110#) = happyShift action_28
+action_460 (111#) = happyShift action_29
+action_460 (114#) = happyShift action_30
+action_460 (119#) = happyShift action_31
+action_460 (124#) = happyShift action_32
+action_460 (125#) = happyShift action_33
+action_460 (126#) = happyShift action_34
+action_460 (127#) = happyShift action_35
+action_460 (128#) = happyShift action_36
+action_460 (129#) = happyShift action_37
+action_460 (131#) = happyShift action_38
+action_460 (134#) = happyShift action_39
+action_460 (137#) = happyShift action_40
+action_460 (140#) = happyShift action_41
+action_460 (145#) = happyShift action_42
+action_460 (156#) = happyShift action_43
+action_460 (157#) = happyShift action_44
+action_460 (161#) = happyShift action_45
+action_460 (162#) = happyShift action_46
+action_460 (167#) = happyShift action_47
+action_460 (170#) = happyShift action_6
+action_460 (171#) = happyShift action_48
+action_460 (172#) = happyShift action_49
+action_460 (173#) = happyShift action_50
+action_460 (174#) = happyShift action_51
+action_460 (8#) = happyGoto action_10
+action_460 (9#) = happyGoto action_11
+action_460 (10#) = happyGoto action_12
+action_460 (11#) = happyGoto action_13
+action_460 (12#) = happyGoto action_14
+action_460 (58#) = happyGoto action_15
+action_460 (59#) = happyGoto action_16
+action_460 (60#) = happyGoto action_17
+action_460 (61#) = happyGoto action_18
+action_460 (62#) = happyGoto action_19
+action_460 (63#) = happyGoto action_371
+action_460 (64#) = happyGoto action_21
+action_460 (72#) = happyGoto action_22
+action_460 (77#) = happyGoto action_23
+action_460 (86#) = happyGoto action_372
+action_460 (87#) = happyGoto action_473
+action_460 x = happyTcHack x happyReduce_257
+
+action_461 (96#) = happyShift action_24
+action_461 (98#) = happyShift action_25
+action_461 (104#) = happyShift action_26
+action_461 (109#) = happyShift action_27
+action_461 (110#) = happyShift action_28
+action_461 (111#) = happyShift action_29
+action_461 (114#) = happyShift action_30
+action_461 (119#) = happyShift action_31
+action_461 (124#) = happyShift action_32
+action_461 (125#) = happyShift action_33
+action_461 (126#) = happyShift action_34
+action_461 (127#) = happyShift action_35
+action_461 (128#) = happyShift action_36
+action_461 (129#) = happyShift action_37
+action_461 (131#) = happyShift action_38
+action_461 (134#) = happyShift action_39
+action_461 (137#) = happyShift action_40
+action_461 (140#) = happyShift action_41
+action_461 (145#) = happyShift action_42
+action_461 (156#) = happyShift action_43
+action_461 (157#) = happyShift action_44
+action_461 (161#) = happyShift action_45
+action_461 (162#) = happyShift action_46
+action_461 (167#) = happyShift action_47
+action_461 (170#) = happyShift action_6
+action_461 (171#) = happyShift action_48
+action_461 (172#) = happyShift action_49
+action_461 (173#) = happyShift action_50
+action_461 (174#) = happyShift action_51
+action_461 (8#) = happyGoto action_10
+action_461 (9#) = happyGoto action_11
+action_461 (10#) = happyGoto action_12
+action_461 (11#) = happyGoto action_13
+action_461 (12#) = happyGoto action_14
+action_461 (58#) = happyGoto action_15
+action_461 (59#) = happyGoto action_16
+action_461 (60#) = happyGoto action_17
+action_461 (61#) = happyGoto action_18
+action_461 (62#) = happyGoto action_19
+action_461 (63#) = happyGoto action_472
+action_461 (64#) = happyGoto action_21
+action_461 (72#) = happyGoto action_22
+action_461 (77#) = happyGoto action_23
+action_461 x = happyTcHack x happyFail
+
+action_462 x = happyTcHack x happyReduce_136
+
+action_463 x = happyTcHack x happyReduce_186
+
+action_464 x = happyTcHack x happyReduce_166
+
+action_465 (140#) = happyShift action_471
+action_465 x = happyTcHack x happyFail
+
+action_466 (169#) = happyShift action_470
+action_466 x = happyTcHack x happyFail
+
+action_467 (102#) = happyShift action_469
+action_467 x = happyTcHack x happyReduce_28
+
+action_468 x = happyTcHack x happyReduce_67
+
+action_469 (151#) = happyShift action_356
+action_469 (28#) = happyGoto action_510
+action_469 x = happyTcHack x happyReduce_55
+
+action_470 (98#) = happyShift action_408
+action_470 (174#) = happyShift action_51
+action_470 (12#) = happyGoto action_406
+action_470 (27#) = happyGoto action_509
+action_470 (29#) = happyGoto action_425
+action_470 x = happyTcHack x happyReduce_52
+
+action_471 x = happyTcHack x happyReduce_56
+
+action_472 x = happyTcHack x happyReduce_256
+
+action_473 x = happyTcHack x happyReduce_259
+
+action_474 (96#) = happyShift action_508
+action_474 x = happyTcHack x happyReduce_96
+
+action_475 (100#) = happyShift action_507
+action_475 x = happyTcHack x happyFail
+
+action_476 (174#) = happyShift action_51
+action_476 (12#) = happyGoto action_448
+action_476 (39#) = happyGoto action_449
+action_476 (40#) = happyGoto action_506
+action_476 x = happyTcHack x happyReduce_102
+
+action_477 (174#) = happyShift action_51
+action_477 (12#) = happyGoto action_505
+action_477 x = happyTcHack x happyFail
+
+action_478 (97#) = happyShift action_504
+action_478 (132#) = happyShift action_210
+action_478 (134#) = happyShift action_211
+action_478 (135#) = happyShift action_212
+action_478 (136#) = happyShift action_213
+action_478 (138#) = happyShift action_214
+action_478 (146#) = happyShift action_215
+action_478 (147#) = happyShift action_216
+action_478 (148#) = happyShift action_217
+action_478 (149#) = happyShift action_218
+action_478 (152#) = happyShift action_219
+action_478 (154#) = happyShift action_220
+action_478 (155#) = happyShift action_221
+action_478 (156#) = happyShift action_222
+action_478 (158#) = happyShift action_223
+action_478 (163#) = happyShift action_224
+action_478 (164#) = happyShift action_225
+action_478 (166#) = happyShift action_226
+action_478 (35#) = happyGoto action_209
+action_478 x = happyTcHack x happyFail
+
+action_479 (174#) = happyShift action_51
+action_479 (12#) = happyGoto action_503
+action_479 x = happyTcHack x happyFail
+
+action_480 (174#) = happyShift action_51
+action_480 (12#) = happyGoto action_438
+action_480 (42#) = happyGoto action_439
+action_480 (52#) = happyGoto action_502
+action_480 x = happyTcHack x happyReduce_125
+
+action_481 (96#) = happyShift action_140
+action_481 (98#) = happyShift action_455
+action_481 (104#) = happyShift action_26
+action_481 (109#) = happyShift action_83
+action_481 (110#) = happyShift action_28
+action_481 (111#) = happyShift action_29
+action_481 (125#) = happyShift action_33
+action_481 (126#) = happyShift action_34
+action_481 (127#) = happyShift action_35
+action_481 (128#) = happyShift action_36
+action_481 (129#) = happyShift action_37
+action_481 (134#) = happyShift action_39
+action_481 (170#) = happyShift action_6
+action_481 (171#) = happyShift action_48
+action_481 (172#) = happyShift action_49
+action_481 (173#) = happyShift action_50
+action_481 (174#) = happyShift action_51
+action_481 (8#) = happyGoto action_10
+action_481 (9#) = happyGoto action_11
+action_481 (10#) = happyGoto action_12
+action_481 (11#) = happyGoto action_13
+action_481 (12#) = happyGoto action_79
+action_481 (58#) = happyGoto action_453
+action_481 (72#) = happyGoto action_22
+action_481 (88#) = happyGoto action_454
+action_481 x = happyTcHack x happyReduce_108
+
+action_482 (96#) = happyShift action_24
+action_482 (98#) = happyShift action_25
+action_482 (104#) = happyShift action_26
+action_482 (109#) = happyShift action_27
+action_482 (110#) = happyShift action_28
+action_482 (111#) = happyShift action_29
+action_482 (114#) = happyShift action_30
+action_482 (119#) = happyShift action_31
+action_482 (124#) = happyShift action_32
+action_482 (125#) = happyShift action_33
+action_482 (126#) = happyShift action_34
+action_482 (127#) = happyShift action_35
+action_482 (128#) = happyShift action_36
+action_482 (129#) = happyShift action_37
+action_482 (131#) = happyShift action_38
+action_482 (134#) = happyShift action_39
+action_482 (137#) = happyShift action_40
+action_482 (140#) = happyShift action_41
+action_482 (145#) = happyShift action_42
+action_482 (156#) = happyShift action_43
+action_482 (157#) = happyShift action_44
+action_482 (161#) = happyShift action_45
+action_482 (162#) = happyShift action_46
+action_482 (167#) = happyShift action_47
+action_482 (170#) = happyShift action_6
+action_482 (171#) = happyShift action_48
+action_482 (172#) = happyShift action_49
+action_482 (173#) = happyShift action_50
+action_482 (174#) = happyShift action_51
+action_482 (8#) = happyGoto action_10
+action_482 (9#) = happyGoto action_11
+action_482 (10#) = happyGoto action_12
+action_482 (11#) = happyGoto action_13
+action_482 (12#) = happyGoto action_14
+action_482 (58#) = happyGoto action_15
+action_482 (59#) = happyGoto action_16
+action_482 (60#) = happyGoto action_17
+action_482 (61#) = happyGoto action_18
+action_482 (62#) = happyGoto action_19
+action_482 (63#) = happyGoto action_501
+action_482 (64#) = happyGoto action_21
+action_482 (72#) = happyGoto action_22
+action_482 (77#) = happyGoto action_23
+action_482 x = happyTcHack x happyFail
+
+action_483 x = happyTcHack x happyReduce_73
+
+action_484 x = happyTcHack x happyReduce_39
+
+action_485 (95#) = happyShift action_499
+action_485 (99#) = happyShift action_500
+action_485 x = happyTcHack x happyFail
+
+action_486 (98#) = happyShift action_408
+action_486 (174#) = happyShift action_51
+action_486 (12#) = happyGoto action_406
+action_486 (27#) = happyGoto action_498
+action_486 (29#) = happyGoto action_425
+action_486 x = happyTcHack x happyReduce_52
+
+action_487 (151#) = happyShift action_356
+action_487 (28#) = happyGoto action_497
+action_487 x = happyTcHack x happyReduce_55
+
+action_488 (98#) = happyShift action_408
+action_488 (174#) = happyShift action_51
+action_488 (12#) = happyGoto action_406
+action_488 (27#) = happyGoto action_496
+action_488 (29#) = happyGoto action_425
+action_488 x = happyTcHack x happyReduce_52
+
+action_489 (97#) = happyShift action_495
+action_489 (132#) = happyShift action_210
+action_489 (134#) = happyShift action_211
+action_489 (135#) = happyShift action_212
+action_489 (136#) = happyShift action_213
+action_489 (138#) = happyShift action_214
+action_489 (146#) = happyShift action_215
+action_489 (147#) = happyShift action_216
+action_489 (148#) = happyShift action_217
+action_489 (149#) = happyShift action_218
+action_489 (152#) = happyShift action_219
+action_489 (154#) = happyShift action_220
+action_489 (155#) = happyShift action_221
+action_489 (156#) = happyShift action_222
+action_489 (158#) = happyShift action_223
+action_489 (163#) = happyShift action_224
+action_489 (164#) = happyShift action_225
+action_489 (166#) = happyShift action_226
+action_489 (35#) = happyGoto action_209
+action_489 x = happyTcHack x happyFail
+
+action_490 x = happyTcHack x happyReduce_69
+
+action_491 (105#) = happyShift action_494
+action_491 x = happyTcHack x happyFail
+
+action_492 (94#) = happyShift action_493
+action_492 x = happyTcHack x happyFail
+
+action_493 (174#) = happyShift action_51
+action_493 (12#) = happyGoto action_519
+action_493 (16#) = happyGoto action_520
+action_493 (17#) = happyGoto action_521
+action_493 x = happyTcHack x happyReduce_17
+
+action_494 x = happyTcHack x happyReduce_70
+
+action_495 x = happyTcHack x happyReduce_40
+
+action_496 (102#) = happyShift action_518
+action_496 x = happyTcHack x happyReduce_44
+
+action_497 (96#) = happyShift action_517
+action_497 x = happyTcHack x happyFail
+
+action_498 x = happyTcHack x happyReduce_54
+
+action_499 (174#) = happyShift action_51
+action_499 (12#) = happyGoto action_516
+action_499 x = happyTcHack x happyFail
+
+action_500 x = happyTcHack x happyReduce_58
+
+action_501 x = happyTcHack x happyReduce_74
+
+action_502 x = happyTcHack x happyReduce_127
+
+action_503 (99#) = happyShift action_515
+action_503 x = happyTcHack x happyFail
+
+action_504 (94#) = happyShift action_514
+action_504 x = happyTcHack x happyFail
+
+action_505 x = happyTcHack x happyReduce_101
+
+action_506 x = happyTcHack x happyReduce_104
+
+action_507 (96#) = happyShift action_24
+action_507 (98#) = happyShift action_25
+action_507 (104#) = happyShift action_26
+action_507 (109#) = happyShift action_27
+action_507 (110#) = happyShift action_28
+action_507 (111#) = happyShift action_29
+action_507 (114#) = happyShift action_30
+action_507 (119#) = happyShift action_31
+action_507 (124#) = happyShift action_32
+action_507 (125#) = happyShift action_33
+action_507 (126#) = happyShift action_34
+action_507 (127#) = happyShift action_35
+action_507 (128#) = happyShift action_36
+action_507 (129#) = happyShift action_37
+action_507 (131#) = happyShift action_38
+action_507 (134#) = happyShift action_39
+action_507 (137#) = happyShift action_40
+action_507 (140#) = happyShift action_41
+action_507 (145#) = happyShift action_42
+action_507 (156#) = happyShift action_43
+action_507 (157#) = happyShift action_44
+action_507 (161#) = happyShift action_45
+action_507 (162#) = happyShift action_46
+action_507 (167#) = happyShift action_47
+action_507 (170#) = happyShift action_6
+action_507 (171#) = happyShift action_48
+action_507 (172#) = happyShift action_49
+action_507 (173#) = happyShift action_50
+action_507 (174#) = happyShift action_51
+action_507 (8#) = happyGoto action_10
+action_507 (9#) = happyGoto action_11
+action_507 (10#) = happyGoto action_12
+action_507 (11#) = happyGoto action_13
+action_507 (12#) = happyGoto action_14
+action_507 (58#) = happyGoto action_15
+action_507 (59#) = happyGoto action_16
+action_507 (60#) = happyGoto action_17
+action_507 (61#) = happyGoto action_18
+action_507 (62#) = happyGoto action_19
+action_507 (63#) = happyGoto action_513
+action_507 (64#) = happyGoto action_21
+action_507 (72#) = happyGoto action_22
+action_507 (77#) = happyGoto action_23
+action_507 x = happyTcHack x happyFail
+
+action_508 (170#) = happyShift action_6
+action_508 (8#) = happyGoto action_512
+action_508 x = happyTcHack x happyFail
+
+action_509 (102#) = happyShift action_511
+action_509 x = happyTcHack x happyReduce_30
+
+action_510 x = happyTcHack x happyReduce_29
+
+action_511 (151#) = happyShift action_356
+action_511 (28#) = happyGoto action_530
+action_511 x = happyTcHack x happyReduce_55
+
+action_512 (97#) = happyShift action_529
+action_512 x = happyTcHack x happyFail
+
+action_513 (99#) = happyShift action_528
+action_513 x = happyTcHack x happyFail
+
+action_514 x = happyTcHack x happyReduce_92
+
+action_515 x = happyTcHack x happyReduce_106
+
+action_516 (99#) = happyShift action_527
+action_516 x = happyTcHack x happyFail
+
+action_517 (25#) = happyGoto action_526
+action_517 x = happyTcHack x happyReduce_48
+
+action_518 (151#) = happyShift action_356
+action_518 (28#) = happyGoto action_525
+action_518 x = happyTcHack x happyReduce_55
+
+action_519 (95#) = happyShift action_524
+action_519 x = happyTcHack x happyFail
+
+action_520 (94#) = happyShift action_523
+action_520 x = happyTcHack x happyReduce_18
+
+action_521 (97#) = happyShift action_522
+action_521 x = happyTcHack x happyFail
+
+action_522 x = happyTcHack x happyReduce_14
+
+action_523 (174#) = happyShift action_51
+action_523 (12#) = happyGoto action_519
+action_523 (16#) = happyGoto action_520
+action_523 (17#) = happyGoto action_535
+action_523 x = happyTcHack x happyReduce_17
+
+action_524 (174#) = happyShift action_51
+action_524 (12#) = happyGoto action_533
+action_524 (18#) = happyGoto action_534
+action_524 x = happyTcHack x happyFail
+
+action_525 (96#) = happyShift action_532
+action_525 x = happyTcHack x happyFail
+
+action_526 (97#) = happyShift action_531
+action_526 (132#) = happyShift action_210
+action_526 (134#) = happyShift action_211
+action_526 (135#) = happyShift action_212
+action_526 (136#) = happyShift action_213
+action_526 (138#) = happyShift action_214
+action_526 (146#) = happyShift action_215
+action_526 (147#) = happyShift action_216
+action_526 (148#) = happyShift action_217
+action_526 (149#) = happyShift action_218
+action_526 (152#) = happyShift action_219
+action_526 (154#) = happyShift action_220
+action_526 (155#) = happyShift action_221
+action_526 (156#) = happyShift action_222
+action_526 (158#) = happyShift action_223
+action_526 (163#) = happyShift action_224
+action_526 (164#) = happyShift action_225
+action_526 (166#) = happyShift action_226
+action_526 (35#) = happyGoto action_209
+action_526 x = happyTcHack x happyFail
+
+action_527 x = happyTcHack x happyReduce_59
+
+action_528 x = happyTcHack x happyReduce_260
+
+action_529 x = happyTcHack x happyReduce_97
+
+action_530 x = happyTcHack x happyReduce_31
+
+action_531 x = happyTcHack x happyReduce_43
+
+action_532 (25#) = happyGoto action_537
+action_532 x = happyTcHack x happyReduce_48
+
+action_533 (19#) = happyGoto action_536
+action_533 x = happyTcHack x happyReduce_21
+
+action_534 x = happyTcHack x happyReduce_16
+
+action_535 x = happyTcHack x happyReduce_19
+
+action_536 (98#) = happyShift action_540
+action_536 (20#) = happyGoto action_539
+action_536 x = happyTcHack x happyReduce_20
+
+action_537 (97#) = happyShift action_538
+action_537 (132#) = happyShift action_210
+action_537 (134#) = happyShift action_211
+action_537 (135#) = happyShift action_212
+action_537 (136#) = happyShift action_213
+action_537 (138#) = happyShift action_214
+action_537 (146#) = happyShift action_215
+action_537 (147#) = happyShift action_216
+action_537 (148#) = happyShift action_217
+action_537 (149#) = happyShift action_218
+action_537 (152#) = happyShift action_219
+action_537 (154#) = happyShift action_220
+action_537 (155#) = happyShift action_221
+action_537 (156#) = happyShift action_222
+action_537 (158#) = happyShift action_223
+action_537 (163#) = happyShift action_224
+action_537 (164#) = happyShift action_225
+action_537 (166#) = happyShift action_226
+action_537 (35#) = happyGoto action_209
+action_537 x = happyTcHack x happyFail
+
+action_538 x = happyTcHack x happyReduce_45
+
+action_539 x = happyTcHack x happyReduce_22
+
+action_540 (164#) = happyShift action_541
+action_540 x = happyTcHack x happyFail
+
+action_541 (140#) = happyShift action_542
+action_541 (153#) = happyShift action_543
+action_541 x = happyTcHack x happyFail
+
+action_542 (98#) = happyShift action_408
+action_542 (174#) = happyShift action_51
+action_542 (12#) = happyGoto action_406
+action_542 (29#) = happyGoto action_545
+action_542 x = happyTcHack x happyFail
+
+action_543 (98#) = happyShift action_408
+action_543 (174#) = happyShift action_51
+action_543 (12#) = happyGoto action_406
+action_543 (29#) = happyGoto action_544
+action_543 x = happyTcHack x happyFail
+
+action_544 (99#) = happyShift action_547
+action_544 x = happyTcHack x happyFail
+
+action_545 (99#) = happyShift action_546
+action_545 x = happyTcHack x happyFail
+
+action_546 x = happyTcHack x happyReduce_23
+
+action_547 x = happyTcHack x happyReduce_24
+
+happyReduce_5 = happySpecReduce_1 8# happyReduction_5
+happyReduction_5 (HappyTerminal (PT _ (TI happy_var_1)))
+ = HappyAbsSyn8
+ ((read happy_var_1) :: Integer
+ )
+happyReduction_5 _ = notHappyAtAll
+
+happyReduce_6 = happySpecReduce_1 9# happyReduction_6
+happyReduction_6 (HappyTerminal (PT _ (TL happy_var_1)))
+ = HappyAbsSyn9
+ (happy_var_1
+ )
+happyReduction_6 _ = notHappyAtAll
+
+happyReduce_7 = happySpecReduce_1 10# happyReduction_7
+happyReduction_7 (HappyTerminal (PT _ (TD happy_var_1)))
+ = HappyAbsSyn10
+ ((read happy_var_1) :: Double
+ )
+happyReduction_7 _ = notHappyAtAll
+
+happyReduce_8 = happySpecReduce_1 11# happyReduction_8
+happyReduction_8 (HappyTerminal (PT _ (T_LString happy_var_1)))
+ = HappyAbsSyn11
+ (LString (happy_var_1)
+ )
+happyReduction_8 _ = notHappyAtAll
+
+happyReduce_9 = happySpecReduce_1 12# happyReduction_9
+happyReduction_9 (HappyTerminal happy_var_1)
+ = HappyAbsSyn12
+ (PIdent (mkPosToken happy_var_1)
+ )
+happyReduction_9 _ = notHappyAtAll
+
+happyReduce_10 = happySpecReduce_1 13# happyReduction_10
+happyReduction_10 (HappyAbsSyn14 happy_var_1)
+ = HappyAbsSyn13
+ (Gr (reverse happy_var_1)
+ )
+happyReduction_10 _ = notHappyAtAll
+
+happyReduce_11 = happySpecReduce_0 14# happyReduction_11
+happyReduction_11 = HappyAbsSyn14
+ ([]
+ )
+
+happyReduce_12 = happySpecReduce_2 14# happyReduction_12
+happyReduction_12 (HappyAbsSyn15 happy_var_2)
+ (HappyAbsSyn14 happy_var_1)
+ = HappyAbsSyn14
+ (flip (:) happy_var_1 happy_var_2
+ )
+happyReduction_12 _ _ = notHappyAtAll
+
+happyReduce_13 = happySpecReduce_2 15# happyReduction_13
+happyReduction_13 _
+ (HappyAbsSyn15 happy_var_1)
+ = HappyAbsSyn15
+ (happy_var_1
+ )
+happyReduction_13 _ _ = notHappyAtAll
+
+happyReduce_14 = happyReduce 10# 15# happyReduction_14
+happyReduction_14 (_ `HappyStk`
+ (HappyAbsSyn17 happy_var_9) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_7) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn15
+ (MMain happy_var_2 happy_var_7 happy_var_9
+ ) `HappyStk` happyRest
+
+happyReduce_15 = happyReduce 4# 15# happyReduction_15
+happyReduction_15 ((HappyAbsSyn22 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn23 happy_var_2) `HappyStk`
+ (HappyAbsSyn30 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn15
+ (MModule happy_var_1 happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_16 = happySpecReduce_3 16# happyReduction_16
+happyReduction_16 (HappyAbsSyn18 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn16
+ (ConcSpec happy_var_1 happy_var_3
+ )
+happyReduction_16 _ _ _ = notHappyAtAll
+
+happyReduce_17 = happySpecReduce_0 17# happyReduction_17
+happyReduction_17 = HappyAbsSyn17
+ ([]
+ )
+
+happyReduce_18 = happySpecReduce_1 17# happyReduction_18
+happyReduction_18 (HappyAbsSyn16 happy_var_1)
+ = HappyAbsSyn17
+ ((:[]) happy_var_1
+ )
+happyReduction_18 _ = notHappyAtAll
+
+happyReduce_19 = happySpecReduce_3 17# happyReduction_19
+happyReduction_19 (HappyAbsSyn17 happy_var_3)
+ _
+ (HappyAbsSyn16 happy_var_1)
+ = HappyAbsSyn17
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_19 _ _ _ = notHappyAtAll
+
+happyReduce_20 = happySpecReduce_2 18# happyReduction_20
+happyReduction_20 (HappyAbsSyn19 happy_var_2)
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn18
+ (ConcExp happy_var_1 (reverse happy_var_2)
+ )
+happyReduction_20 _ _ = notHappyAtAll
+
+happyReduce_21 = happySpecReduce_0 19# happyReduction_21
+happyReduction_21 = HappyAbsSyn19
+ ([]
+ )
+
+happyReduce_22 = happySpecReduce_2 19# happyReduction_22
+happyReduction_22 (HappyAbsSyn20 happy_var_2)
+ (HappyAbsSyn19 happy_var_1)
+ = HappyAbsSyn19
+ (flip (:) happy_var_1 happy_var_2
+ )
+happyReduction_22 _ _ = notHappyAtAll
+
+happyReduce_23 = happyReduce 5# 20# happyReduction_23
+happyReduction_23 (_ `HappyStk`
+ (HappyAbsSyn29 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn20
+ (TransferIn happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_24 = happyReduce 5# 20# happyReduction_24
+happyReduction_24 (_ `HappyStk`
+ (HappyAbsSyn29 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn20
+ (TransferOut happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_25 = happyReduce 4# 21# happyReduction_25
+happyReduction_25 ((HappyAbsSyn22 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn23 happy_var_2) `HappyStk`
+ (HappyAbsSyn30 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn15
+ (MModule happy_var_1 happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_26 = happySpecReduce_2 22# happyReduction_26
+happyReduction_26 (HappyAbsSyn28 happy_var_2)
+ (HappyAbsSyn26 happy_var_1)
+ = HappyAbsSyn22
+ (MBody happy_var_1 happy_var_2 []
+ )
+happyReduction_26 _ _ = notHappyAtAll
+
+happyReduce_27 = happySpecReduce_1 22# happyReduction_27
+happyReduction_27 (HappyAbsSyn32 happy_var_1)
+ = HappyAbsSyn22
+ (MNoBody happy_var_1
+ )
+happyReduction_27 _ = notHappyAtAll
+
+happyReduce_28 = happySpecReduce_3 22# happyReduction_28
+happyReduction_28 (HappyAbsSyn27 happy_var_3)
+ _
+ (HappyAbsSyn33 happy_var_1)
+ = HappyAbsSyn22
+ (MWith happy_var_1 happy_var_3
+ )
+happyReduction_28 _ _ _ = notHappyAtAll
+
+happyReduce_29 = happyReduce 5# 22# happyReduction_29
+happyReduction_29 ((HappyAbsSyn28 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn27 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithBody happy_var_1 happy_var_3 happy_var_5 []
+ ) `HappyStk` happyRest
+
+happyReduce_30 = happyReduce 5# 22# happyReduction_30
+happyReduction_30 ((HappyAbsSyn27 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn32 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithE happy_var_1 happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_31 = happyReduce 7# 22# happyReduction_31
+happyReduction_31 ((HappyAbsSyn28 happy_var_7) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn27 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn32 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithEBody happy_var_1 happy_var_3 happy_var_5 happy_var_7 []
+ ) `HappyStk` happyRest
+
+happyReduce_32 = happySpecReduce_2 22# happyReduction_32
+happyReduction_32 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn22
+ (MReuse happy_var_2
+ )
+happyReduction_32 _ _ = notHappyAtAll
+
+happyReduce_33 = happySpecReduce_2 22# happyReduction_33
+happyReduction_33 (HappyAbsSyn32 happy_var_2)
+ _
+ = HappyAbsSyn22
+ (MUnion happy_var_2
+ )
+happyReduction_33 _ _ = notHappyAtAll
+
+happyReduce_34 = happySpecReduce_2 23# happyReduction_34
+happyReduction_34 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn23
+ (MTAbstract happy_var_2
+ )
+happyReduction_34 _ _ = notHappyAtAll
+
+happyReduce_35 = happySpecReduce_2 23# happyReduction_35
+happyReduction_35 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn23
+ (MTResource happy_var_2
+ )
+happyReduction_35 _ _ = notHappyAtAll
+
+happyReduce_36 = happySpecReduce_2 23# happyReduction_36
+happyReduction_36 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn23
+ (MTInterface happy_var_2
+ )
+happyReduction_36 _ _ = notHappyAtAll
+
+happyReduce_37 = happyReduce 4# 23# happyReduction_37
+happyReduction_37 ((HappyAbsSyn12 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn23
+ (MTConcrete happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_38 = happyReduce 4# 23# happyReduction_38
+happyReduction_38 ((HappyAbsSyn12 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn23
+ (MTInstance happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_39 = happyReduce 6# 23# happyReduction_39
+happyReduction_39 ((HappyAbsSyn29 happy_var_6) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn29 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn23
+ (MTTransfer happy_var_2 happy_var_4 happy_var_6
+ ) `HappyStk` happyRest
+
+happyReduce_40 = happyReduce 5# 24# happyReduction_40
+happyReduction_40 (_ `HappyStk`
+ (HappyAbsSyn25 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn28 happy_var_2) `HappyStk`
+ (HappyAbsSyn26 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MBody happy_var_1 happy_var_2 (reverse happy_var_4)
+ ) `HappyStk` happyRest
+
+happyReduce_41 = happySpecReduce_1 24# happyReduction_41
+happyReduction_41 (HappyAbsSyn32 happy_var_1)
+ = HappyAbsSyn22
+ (MNoBody happy_var_1
+ )
+happyReduction_41 _ = notHappyAtAll
+
+happyReduce_42 = happySpecReduce_3 24# happyReduction_42
+happyReduction_42 (HappyAbsSyn27 happy_var_3)
+ _
+ (HappyAbsSyn33 happy_var_1)
+ = HappyAbsSyn22
+ (MWith happy_var_1 happy_var_3
+ )
+happyReduction_42 _ _ _ = notHappyAtAll
+
+happyReduce_43 = happyReduce 8# 24# happyReduction_43
+happyReduction_43 (_ `HappyStk`
+ (HappyAbsSyn25 happy_var_7) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn28 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn27 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithBody happy_var_1 happy_var_3 happy_var_5 (reverse happy_var_7)
+ ) `HappyStk` happyRest
+
+happyReduce_44 = happyReduce 5# 24# happyReduction_44
+happyReduction_44 ((HappyAbsSyn27 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn32 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithE happy_var_1 happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_45 = happyReduce 10# 24# happyReduction_45
+happyReduction_45 (_ `HappyStk`
+ (HappyAbsSyn25 happy_var_9) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn28 happy_var_7) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn27 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn33 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn32 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn22
+ (MWithEBody happy_var_1 happy_var_3 happy_var_5 happy_var_7 (reverse happy_var_9)
+ ) `HappyStk` happyRest
+
+happyReduce_46 = happySpecReduce_2 24# happyReduction_46
+happyReduction_46 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn22
+ (MReuse happy_var_2
+ )
+happyReduction_46 _ _ = notHappyAtAll
+
+happyReduce_47 = happySpecReduce_2 24# happyReduction_47
+happyReduction_47 (HappyAbsSyn32 happy_var_2)
+ _
+ = HappyAbsSyn22
+ (MUnion happy_var_2
+ )
+happyReduction_47 _ _ = notHappyAtAll
+
+happyReduce_48 = happySpecReduce_0 25# happyReduction_48
+happyReduction_48 = HappyAbsSyn25
+ ([]
+ )
+
+happyReduce_49 = happySpecReduce_2 25# happyReduction_49
+happyReduction_49 (HappyAbsSyn35 happy_var_2)
+ (HappyAbsSyn25 happy_var_1)
+ = HappyAbsSyn25
+ (flip (:) happy_var_1 happy_var_2
+ )
+happyReduction_49 _ _ = notHappyAtAll
+
+happyReduce_50 = happySpecReduce_2 26# happyReduction_50
+happyReduction_50 _
+ (HappyAbsSyn32 happy_var_1)
+ = HappyAbsSyn26
+ (Ext happy_var_1
+ )
+happyReduction_50 _ _ = notHappyAtAll
+
+happyReduce_51 = happySpecReduce_0 26# happyReduction_51
+happyReduction_51 = HappyAbsSyn26
+ (NoExt
+ )
+
+happyReduce_52 = happySpecReduce_0 27# happyReduction_52
+happyReduction_52 = HappyAbsSyn27
+ ([]
+ )
+
+happyReduce_53 = happySpecReduce_1 27# happyReduction_53
+happyReduction_53 (HappyAbsSyn29 happy_var_1)
+ = HappyAbsSyn27
+ ((:[]) happy_var_1
+ )
+happyReduction_53 _ = notHappyAtAll
+
+happyReduce_54 = happySpecReduce_3 27# happyReduction_54
+happyReduction_54 (HappyAbsSyn27 happy_var_3)
+ _
+ (HappyAbsSyn29 happy_var_1)
+ = HappyAbsSyn27
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_54 _ _ _ = notHappyAtAll
+
+happyReduce_55 = happySpecReduce_0 28# happyReduction_55
+happyReduction_55 = HappyAbsSyn28
+ (NoOpens
+ )
+
+happyReduce_56 = happySpecReduce_3 28# happyReduction_56
+happyReduction_56 _
+ (HappyAbsSyn27 happy_var_2)
+ _
+ = HappyAbsSyn28
+ (OpenIn happy_var_2
+ )
+happyReduction_56 _ _ _ = notHappyAtAll
+
+happyReduce_57 = happySpecReduce_1 29# happyReduction_57
+happyReduction_57 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn29
+ (OName happy_var_1
+ )
+happyReduction_57 _ = notHappyAtAll
+
+happyReduce_58 = happyReduce 4# 29# happyReduction_58
+happyReduction_58 (_ `HappyStk`
+ (HappyAbsSyn12 happy_var_3) `HappyStk`
+ (HappyAbsSyn31 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn29
+ (OQualQO happy_var_2 happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_59 = happyReduce 6# 29# happyReduction_59
+happyReduction_59 (_ `HappyStk`
+ (HappyAbsSyn12 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_3) `HappyStk`
+ (HappyAbsSyn31 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn29
+ (OQual happy_var_2 happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_60 = happySpecReduce_0 30# happyReduction_60
+happyReduction_60 = HappyAbsSyn30
+ (CMCompl
+ )
+
+happyReduce_61 = happySpecReduce_1 30# happyReduction_61
+happyReduction_61 _
+ = HappyAbsSyn30
+ (CMIncompl
+ )
+
+happyReduce_62 = happySpecReduce_0 31# happyReduction_62
+happyReduction_62 = HappyAbsSyn31
+ (QOCompl
+ )
+
+happyReduce_63 = happySpecReduce_1 31# happyReduction_63
+happyReduction_63 _
+ = HappyAbsSyn31
+ (QOIncompl
+ )
+
+happyReduce_64 = happySpecReduce_1 31# happyReduction_64
+happyReduction_64 _
+ = HappyAbsSyn31
+ (QOInterface
+ )
+
+happyReduce_65 = happySpecReduce_0 32# happyReduction_65
+happyReduction_65 = HappyAbsSyn32
+ ([]
+ )
+
+happyReduce_66 = happySpecReduce_1 32# happyReduction_66
+happyReduction_66 (HappyAbsSyn33 happy_var_1)
+ = HappyAbsSyn32
+ ((:[]) happy_var_1
+ )
+happyReduction_66 _ = notHappyAtAll
+
+happyReduce_67 = happySpecReduce_3 32# happyReduction_67
+happyReduction_67 (HappyAbsSyn32 happy_var_3)
+ _
+ (HappyAbsSyn33 happy_var_1)
+ = HappyAbsSyn32
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_67 _ _ _ = notHappyAtAll
+
+happyReduce_68 = happySpecReduce_1 33# happyReduction_68
+happyReduction_68 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn33
+ (IAll happy_var_1
+ )
+happyReduction_68 _ = notHappyAtAll
+
+happyReduce_69 = happyReduce 4# 33# happyReduction_69
+happyReduction_69 (_ `HappyStk`
+ (HappyAbsSyn53 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn33
+ (ISome happy_var_1 happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_70 = happyReduce 5# 33# happyReduction_70
+happyReduction_70 (_ `HappyStk`
+ (HappyAbsSyn53 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn33
+ (IMinus happy_var_1 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_71 = happySpecReduce_3 34# happyReduction_71
+happyReduction_71 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn55 happy_var_1)
+ = HappyAbsSyn34
+ (DDecl happy_var_1 happy_var_3
+ )
+happyReduction_71 _ _ _ = notHappyAtAll
+
+happyReduce_72 = happySpecReduce_3 34# happyReduction_72
+happyReduction_72 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn55 happy_var_1)
+ = HappyAbsSyn34
+ (DDef happy_var_1 happy_var_3
+ )
+happyReduction_72 _ _ _ = notHappyAtAll
+
+happyReduce_73 = happyReduce 4# 34# happyReduction_73
+happyReduction_73 ((HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn74 happy_var_2) `HappyStk`
+ (HappyAbsSyn54 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn34
+ (DPatt happy_var_1 happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_74 = happyReduce 5# 34# happyReduction_74
+happyReduction_74 ((HappyAbsSyn58 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn55 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn34
+ (DFull happy_var_1 happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_75 = happySpecReduce_2 35# happyReduction_75
+happyReduction_75 (HappyAbsSyn46 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefCat happy_var_2
+ )
+happyReduction_75 _ _ = notHappyAtAll
+
+happyReduce_76 = happySpecReduce_2 35# happyReduction_76
+happyReduction_76 (HappyAbsSyn47 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefFun happy_var_2
+ )
+happyReduction_76 _ _ = notHappyAtAll
+
+happyReduce_77 = happySpecReduce_2 35# happyReduction_77
+happyReduction_77 (HappyAbsSyn47 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefFunData happy_var_2
+ )
+happyReduction_77 _ _ = notHappyAtAll
+
+happyReduce_78 = happySpecReduce_2 35# happyReduction_78
+happyReduction_78 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefDef happy_var_2
+ )
+happyReduction_78 _ _ = notHappyAtAll
+
+happyReduce_79 = happySpecReduce_2 35# happyReduction_79
+happyReduction_79 (HappyAbsSyn48 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefData happy_var_2
+ )
+happyReduction_79 _ _ = notHappyAtAll
+
+happyReduce_80 = happySpecReduce_2 35# happyReduction_80
+happyReduction_80 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefTrans happy_var_2
+ )
+happyReduction_80 _ _ = notHappyAtAll
+
+happyReduce_81 = happySpecReduce_2 35# happyReduction_81
+happyReduction_81 (HappyAbsSyn49 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefPar happy_var_2
+ )
+happyReduction_81 _ _ = notHappyAtAll
+
+happyReduce_82 = happySpecReduce_2 35# happyReduction_82
+happyReduction_82 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefOper happy_var_2
+ )
+happyReduction_82 _ _ = notHappyAtAll
+
+happyReduce_83 = happySpecReduce_2 35# happyReduction_83
+happyReduction_83 (HappyAbsSyn50 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefLincat happy_var_2
+ )
+happyReduction_83 _ _ = notHappyAtAll
+
+happyReduce_84 = happySpecReduce_2 35# happyReduction_84
+happyReduction_84 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefLindef happy_var_2
+ )
+happyReduction_84 _ _ = notHappyAtAll
+
+happyReduce_85 = happySpecReduce_2 35# happyReduction_85
+happyReduction_85 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefLin happy_var_2
+ )
+happyReduction_85 _ _ = notHappyAtAll
+
+happyReduce_86 = happySpecReduce_3 35# happyReduction_86
+happyReduction_86 (HappyAbsSyn50 happy_var_3)
+ _
+ _
+ = HappyAbsSyn35
+ (DefPrintCat happy_var_3
+ )
+happyReduction_86 _ _ _ = notHappyAtAll
+
+happyReduce_87 = happySpecReduce_3 35# happyReduction_87
+happyReduction_87 (HappyAbsSyn50 happy_var_3)
+ _
+ _
+ = HappyAbsSyn35
+ (DefPrintFun happy_var_3
+ )
+happyReduction_87 _ _ _ = notHappyAtAll
+
+happyReduce_88 = happySpecReduce_2 35# happyReduction_88
+happyReduction_88 (HappyAbsSyn51 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefFlag happy_var_2
+ )
+happyReduction_88 _ _ = notHappyAtAll
+
+happyReduce_89 = happySpecReduce_2 35# happyReduction_89
+happyReduction_89 (HappyAbsSyn50 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefPrintOld happy_var_2
+ )
+happyReduction_89 _ _ = notHappyAtAll
+
+happyReduce_90 = happySpecReduce_2 35# happyReduction_90
+happyReduction_90 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefLintype happy_var_2
+ )
+happyReduction_90 _ _ = notHappyAtAll
+
+happyReduce_91 = happySpecReduce_2 35# happyReduction_91
+happyReduction_91 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefPattern happy_var_2
+ )
+happyReduction_91 _ _ = notHappyAtAll
+
+happyReduce_92 = happyReduce 7# 35# happyReduction_92
+happyReduction_92 (_ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn25 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn35
+ (DefPackage happy_var_2 (reverse happy_var_5)
+ ) `HappyStk` happyRest
+
+happyReduce_93 = happySpecReduce_2 35# happyReduction_93
+happyReduction_93 (HappyAbsSyn45 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefVars happy_var_2
+ )
+happyReduction_93 _ _ = notHappyAtAll
+
+happyReduce_94 = happySpecReduce_3 35# happyReduction_94
+happyReduction_94 _
+ (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn35
+ (DefTokenizer happy_var_2
+ )
+happyReduction_94 _ _ _ = notHappyAtAll
+
+happyReduce_95 = happySpecReduce_2 36# happyReduction_95
+happyReduction_95 (HappyAbsSyn89 happy_var_2)
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn36
+ (SimpleCatDef happy_var_1 (reverse happy_var_2)
+ )
+happyReduction_95 _ _ = notHappyAtAll
+
+happyReduce_96 = happyReduce 4# 36# happyReduction_96
+happyReduction_96 (_ `HappyStk`
+ (HappyAbsSyn89 happy_var_3) `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn36
+ (ListCatDef happy_var_2 (reverse happy_var_3)
+ ) `HappyStk` happyRest
+
+happyReduce_97 = happyReduce 7# 36# happyReduction_97
+happyReduction_97 (_ `HappyStk`
+ (HappyAbsSyn8 happy_var_6) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn89 happy_var_3) `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn36
+ (ListSizeCatDef happy_var_2 (reverse happy_var_3) happy_var_6
+ ) `HappyStk` happyRest
+
+happyReduce_98 = happySpecReduce_3 37# happyReduction_98
+happyReduction_98 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn53 happy_var_1)
+ = HappyAbsSyn37
+ (FunDef happy_var_1 happy_var_3
+ )
+happyReduction_98 _ _ _ = notHappyAtAll
+
+happyReduce_99 = happySpecReduce_3 38# happyReduction_99
+happyReduction_99 (HappyAbsSyn40 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn38
+ (DataDef happy_var_1 happy_var_3
+ )
+happyReduction_99 _ _ _ = notHappyAtAll
+
+happyReduce_100 = happySpecReduce_1 39# happyReduction_100
+happyReduction_100 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn39
+ (DataId happy_var_1
+ )
+happyReduction_100 _ = notHappyAtAll
+
+happyReduce_101 = happySpecReduce_3 39# happyReduction_101
+happyReduction_101 (HappyAbsSyn12 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn39
+ (DataQId happy_var_1 happy_var_3
+ )
+happyReduction_101 _ _ _ = notHappyAtAll
+
+happyReduce_102 = happySpecReduce_0 40# happyReduction_102
+happyReduction_102 = HappyAbsSyn40
+ ([]
+ )
+
+happyReduce_103 = happySpecReduce_1 40# happyReduction_103
+happyReduction_103 (HappyAbsSyn39 happy_var_1)
+ = HappyAbsSyn40
+ ((:[]) happy_var_1
+ )
+happyReduction_103 _ = notHappyAtAll
+
+happyReduce_104 = happySpecReduce_3 40# happyReduction_104
+happyReduction_104 (HappyAbsSyn40 happy_var_3)
+ _
+ (HappyAbsSyn39 happy_var_1)
+ = HappyAbsSyn40
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_104 _ _ _ = notHappyAtAll
+
+happyReduce_105 = happySpecReduce_3 41# happyReduction_105
+happyReduction_105 (HappyAbsSyn52 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn41
+ (ParDefDir happy_var_1 happy_var_3
+ )
+happyReduction_105 _ _ _ = notHappyAtAll
+
+happyReduce_106 = happyReduce 6# 41# happyReduction_106
+happyReduction_106 (_ `HappyStk`
+ (HappyAbsSyn12 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn41
+ (ParDefIndir happy_var_1 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_107 = happySpecReduce_1 41# happyReduction_107
+happyReduction_107 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn41
+ (ParDefAbs happy_var_1
+ )
+happyReduction_107 _ = notHappyAtAll
+
+happyReduce_108 = happySpecReduce_2 42# happyReduction_108
+happyReduction_108 (HappyAbsSyn89 happy_var_2)
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn42
+ (ParConstr happy_var_1 (reverse happy_var_2)
+ )
+happyReduction_108 _ _ = notHappyAtAll
+
+happyReduce_109 = happySpecReduce_3 43# happyReduction_109
+happyReduction_109 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn55 happy_var_1)
+ = HappyAbsSyn43
+ (PrintDef happy_var_1 happy_var_3
+ )
+happyReduction_109 _ _ _ = notHappyAtAll
+
+happyReduce_110 = happySpecReduce_3 44# happyReduction_110
+happyReduction_110 (HappyAbsSyn12 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn44
+ (FlagDef happy_var_1 happy_var_3
+ )
+happyReduction_110 _ _ _ = notHappyAtAll
+
+happyReduce_111 = happySpecReduce_2 45# happyReduction_111
+happyReduction_111 _
+ (HappyAbsSyn34 happy_var_1)
+ = HappyAbsSyn45
+ ((:[]) happy_var_1
+ )
+happyReduction_111 _ _ = notHappyAtAll
+
+happyReduce_112 = happySpecReduce_3 45# happyReduction_112
+happyReduction_112 (HappyAbsSyn45 happy_var_3)
+ _
+ (HappyAbsSyn34 happy_var_1)
+ = HappyAbsSyn45
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_112 _ _ _ = notHappyAtAll
+
+happyReduce_113 = happySpecReduce_2 46# happyReduction_113
+happyReduction_113 _
+ (HappyAbsSyn36 happy_var_1)
+ = HappyAbsSyn46
+ ((:[]) happy_var_1
+ )
+happyReduction_113 _ _ = notHappyAtAll
+
+happyReduce_114 = happySpecReduce_3 46# happyReduction_114
+happyReduction_114 (HappyAbsSyn46 happy_var_3)
+ _
+ (HappyAbsSyn36 happy_var_1)
+ = HappyAbsSyn46
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_114 _ _ _ = notHappyAtAll
+
+happyReduce_115 = happySpecReduce_2 47# happyReduction_115
+happyReduction_115 _
+ (HappyAbsSyn37 happy_var_1)
+ = HappyAbsSyn47
+ ((:[]) happy_var_1
+ )
+happyReduction_115 _ _ = notHappyAtAll
+
+happyReduce_116 = happySpecReduce_3 47# happyReduction_116
+happyReduction_116 (HappyAbsSyn47 happy_var_3)
+ _
+ (HappyAbsSyn37 happy_var_1)
+ = HappyAbsSyn47
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_116 _ _ _ = notHappyAtAll
+
+happyReduce_117 = happySpecReduce_2 48# happyReduction_117
+happyReduction_117 _
+ (HappyAbsSyn38 happy_var_1)
+ = HappyAbsSyn48
+ ((:[]) happy_var_1
+ )
+happyReduction_117 _ _ = notHappyAtAll
+
+happyReduce_118 = happySpecReduce_3 48# happyReduction_118
+happyReduction_118 (HappyAbsSyn48 happy_var_3)
+ _
+ (HappyAbsSyn38 happy_var_1)
+ = HappyAbsSyn48
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_118 _ _ _ = notHappyAtAll
+
+happyReduce_119 = happySpecReduce_2 49# happyReduction_119
+happyReduction_119 _
+ (HappyAbsSyn41 happy_var_1)
+ = HappyAbsSyn49
+ ((:[]) happy_var_1
+ )
+happyReduction_119 _ _ = notHappyAtAll
+
+happyReduce_120 = happySpecReduce_3 49# happyReduction_120
+happyReduction_120 (HappyAbsSyn49 happy_var_3)
+ _
+ (HappyAbsSyn41 happy_var_1)
+ = HappyAbsSyn49
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_120 _ _ _ = notHappyAtAll
+
+happyReduce_121 = happySpecReduce_2 50# happyReduction_121
+happyReduction_121 _
+ (HappyAbsSyn43 happy_var_1)
+ = HappyAbsSyn50
+ ((:[]) happy_var_1
+ )
+happyReduction_121 _ _ = notHappyAtAll
+
+happyReduce_122 = happySpecReduce_3 50# happyReduction_122
+happyReduction_122 (HappyAbsSyn50 happy_var_3)
+ _
+ (HappyAbsSyn43 happy_var_1)
+ = HappyAbsSyn50
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_122 _ _ _ = notHappyAtAll
+
+happyReduce_123 = happySpecReduce_2 51# happyReduction_123
+happyReduction_123 _
+ (HappyAbsSyn44 happy_var_1)
+ = HappyAbsSyn51
+ ((:[]) happy_var_1
+ )
+happyReduction_123 _ _ = notHappyAtAll
+
+happyReduce_124 = happySpecReduce_3 51# happyReduction_124
+happyReduction_124 (HappyAbsSyn51 happy_var_3)
+ _
+ (HappyAbsSyn44 happy_var_1)
+ = HappyAbsSyn51
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_124 _ _ _ = notHappyAtAll
+
+happyReduce_125 = happySpecReduce_0 52# happyReduction_125
+happyReduction_125 = HappyAbsSyn52
+ ([]
+ )
+
+happyReduce_126 = happySpecReduce_1 52# happyReduction_126
+happyReduction_126 (HappyAbsSyn42 happy_var_1)
+ = HappyAbsSyn52
+ ((:[]) happy_var_1
+ )
+happyReduction_126 _ = notHappyAtAll
+
+happyReduce_127 = happySpecReduce_3 52# happyReduction_127
+happyReduction_127 (HappyAbsSyn52 happy_var_3)
+ _
+ (HappyAbsSyn42 happy_var_1)
+ = HappyAbsSyn52
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_127 _ _ _ = notHappyAtAll
+
+happyReduce_128 = happySpecReduce_1 53# happyReduction_128
+happyReduction_128 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn53
+ ((:[]) happy_var_1
+ )
+happyReduction_128 _ = notHappyAtAll
+
+happyReduce_129 = happySpecReduce_3 53# happyReduction_129
+happyReduction_129 (HappyAbsSyn53 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn53
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_129 _ _ _ = notHappyAtAll
+
+happyReduce_130 = happySpecReduce_1 54# happyReduction_130
+happyReduction_130 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn54
+ (IdentName happy_var_1
+ )
+happyReduction_130 _ = notHappyAtAll
+
+happyReduce_131 = happySpecReduce_3 54# happyReduction_131
+happyReduction_131 _
+ (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn54
+ (ListName happy_var_2
+ )
+happyReduction_131 _ _ _ = notHappyAtAll
+
+happyReduce_132 = happySpecReduce_1 55# happyReduction_132
+happyReduction_132 (HappyAbsSyn54 happy_var_1)
+ = HappyAbsSyn55
+ ((:[]) happy_var_1
+ )
+happyReduction_132 _ = notHappyAtAll
+
+happyReduce_133 = happySpecReduce_3 55# happyReduction_133
+happyReduction_133 (HappyAbsSyn55 happy_var_3)
+ _
+ (HappyAbsSyn54 happy_var_1)
+ = HappyAbsSyn55
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_133 _ _ _ = notHappyAtAll
+
+happyReduce_134 = happySpecReduce_3 56# happyReduction_134
+happyReduction_134 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn53 happy_var_1)
+ = HappyAbsSyn56
+ (LDDecl happy_var_1 happy_var_3
+ )
+happyReduction_134 _ _ _ = notHappyAtAll
+
+happyReduce_135 = happySpecReduce_3 56# happyReduction_135
+happyReduction_135 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn53 happy_var_1)
+ = HappyAbsSyn56
+ (LDDef happy_var_1 happy_var_3
+ )
+happyReduction_135 _ _ _ = notHappyAtAll
+
+happyReduce_136 = happyReduce 5# 56# happyReduction_136
+happyReduction_136 ((HappyAbsSyn58 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn53 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn56
+ (LDFull happy_var_1 happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_137 = happySpecReduce_0 57# happyReduction_137
+happyReduction_137 = HappyAbsSyn57
+ ([]
+ )
+
+happyReduce_138 = happySpecReduce_1 57# happyReduction_138
+happyReduction_138 (HappyAbsSyn56 happy_var_1)
+ = HappyAbsSyn57
+ ((:[]) happy_var_1
+ )
+happyReduction_138 _ = notHappyAtAll
+
+happyReduce_139 = happySpecReduce_3 57# happyReduction_139
+happyReduction_139 (HappyAbsSyn57 happy_var_3)
+ _
+ (HappyAbsSyn56 happy_var_1)
+ = HappyAbsSyn57
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_139 _ _ _ = notHappyAtAll
+
+happyReduce_140 = happySpecReduce_1 58# happyReduction_140
+happyReduction_140 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn58
+ (EIdent happy_var_1
+ )
+happyReduction_140 _ = notHappyAtAll
+
+happyReduce_141 = happySpecReduce_3 58# happyReduction_141
+happyReduction_141 _
+ (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (EConstr happy_var_2
+ )
+happyReduction_141 _ _ _ = notHappyAtAll
+
+happyReduce_142 = happySpecReduce_3 58# happyReduction_142
+happyReduction_142 _
+ (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (ECons happy_var_2
+ )
+happyReduction_142 _ _ _ = notHappyAtAll
+
+happyReduce_143 = happySpecReduce_1 58# happyReduction_143
+happyReduction_143 (HappyAbsSyn72 happy_var_1)
+ = HappyAbsSyn58
+ (ESort happy_var_1
+ )
+happyReduction_143 _ = notHappyAtAll
+
+happyReduce_144 = happySpecReduce_1 58# happyReduction_144
+happyReduction_144 (HappyAbsSyn9 happy_var_1)
+ = HappyAbsSyn58
+ (EString happy_var_1
+ )
+happyReduction_144 _ = notHappyAtAll
+
+happyReduce_145 = happySpecReduce_1 58# happyReduction_145
+happyReduction_145 (HappyAbsSyn8 happy_var_1)
+ = HappyAbsSyn58
+ (EInt happy_var_1
+ )
+happyReduction_145 _ = notHappyAtAll
+
+happyReduce_146 = happySpecReduce_1 58# happyReduction_146
+happyReduction_146 (HappyAbsSyn10 happy_var_1)
+ = HappyAbsSyn58
+ (EFloat happy_var_1
+ )
+happyReduction_146 _ = notHappyAtAll
+
+happyReduce_147 = happySpecReduce_1 58# happyReduction_147
+happyReduction_147 _
+ = HappyAbsSyn58
+ (EMeta
+ )
+
+happyReduce_148 = happySpecReduce_2 58# happyReduction_148
+happyReduction_148 _
+ _
+ = HappyAbsSyn58
+ (EEmpty
+ )
+
+happyReduce_149 = happySpecReduce_1 58# happyReduction_149
+happyReduction_149 _
+ = HappyAbsSyn58
+ (EData
+ )
+
+happyReduce_150 = happyReduce 4# 58# happyReduction_150
+happyReduction_150 (_ `HappyStk`
+ (HappyAbsSyn66 happy_var_3) `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EList happy_var_2 happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_151 = happySpecReduce_3 58# happyReduction_151
+happyReduction_151 _
+ (HappyAbsSyn9 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (EStrings happy_var_2
+ )
+happyReduction_151 _ _ _ = notHappyAtAll
+
+happyReduce_152 = happySpecReduce_3 58# happyReduction_152
+happyReduction_152 _
+ (HappyAbsSyn57 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (ERecord happy_var_2
+ )
+happyReduction_152 _ _ _ = notHappyAtAll
+
+happyReduce_153 = happySpecReduce_3 58# happyReduction_153
+happyReduction_153 _
+ (HappyAbsSyn80 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (ETuple happy_var_2
+ )
+happyReduction_153 _ _ _ = notHappyAtAll
+
+happyReduce_154 = happyReduce 4# 58# happyReduction_154
+happyReduction_154 (_ `HappyStk`
+ (HappyAbsSyn12 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EIndir happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_155 = happyReduce 5# 58# happyReduction_155
+happyReduction_155 (_ `HappyStk`
+ (HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ETyped happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_156 = happySpecReduce_3 58# happyReduction_156
+happyReduction_156 _
+ (HappyAbsSyn58 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (happy_var_2
+ )
+happyReduction_156 _ _ _ = notHappyAtAll
+
+happyReduce_157 = happySpecReduce_1 58# happyReduction_157
+happyReduction_157 (HappyAbsSyn11 happy_var_1)
+ = HappyAbsSyn58
+ (ELString happy_var_1
+ )
+happyReduction_157 _ = notHappyAtAll
+
+happyReduce_158 = happySpecReduce_3 59# happyReduction_158
+happyReduction_158 (HappyAbsSyn71 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (EProj happy_var_1 happy_var_3
+ )
+happyReduction_158 _ _ _ = notHappyAtAll
+
+happyReduce_159 = happyReduce 5# 59# happyReduction_159
+happyReduction_159 (_ `HappyStk`
+ (HappyAbsSyn12 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EQConstr happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_160 = happyReduce 4# 59# happyReduction_160
+happyReduction_160 ((HappyAbsSyn12 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EQCons happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_161 = happySpecReduce_1 59# happyReduction_161
+happyReduction_161 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_161 _ = notHappyAtAll
+
+happyReduce_162 = happySpecReduce_2 60# happyReduction_162
+happyReduction_162 (HappyAbsSyn58 happy_var_2)
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (EApp happy_var_1 happy_var_2
+ )
+happyReduction_162 _ _ = notHappyAtAll
+
+happyReduce_163 = happyReduce 4# 60# happyReduction_163
+happyReduction_163 (_ `HappyStk`
+ (HappyAbsSyn83 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ETable happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_164 = happyReduce 5# 60# happyReduction_164
+happyReduction_164 (_ `HappyStk`
+ (HappyAbsSyn83 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ETTable happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_165 = happyReduce 5# 60# happyReduction_165
+happyReduction_165 (_ `HappyStk`
+ (HappyAbsSyn65 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EVTable happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_166 = happyReduce 6# 60# happyReduction_166
+happyReduction_166 (_ `HappyStk`
+ (HappyAbsSyn83 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ECase happy_var_2 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_167 = happyReduce 4# 60# happyReduction_167
+happyReduction_167 (_ `HappyStk`
+ (HappyAbsSyn65 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EVariants happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_168 = happyReduce 6# 60# happyReduction_168
+happyReduction_168 (_ `HappyStk`
+ (HappyAbsSyn87 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EPre happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_169 = happyReduce 4# 60# happyReduction_169
+happyReduction_169 (_ `HappyStk`
+ (HappyAbsSyn65 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EStrs happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_170 = happySpecReduce_3 60# happyReduction_170
+happyReduction_170 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn58
+ (EConAt happy_var_1 happy_var_3
+ )
+happyReduction_170 _ _ _ = notHappyAtAll
+
+happyReduce_171 = happySpecReduce_2 60# happyReduction_171
+happyReduction_171 (HappyAbsSyn67 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (EPatt happy_var_2
+ )
+happyReduction_171 _ _ = notHappyAtAll
+
+happyReduce_172 = happySpecReduce_2 60# happyReduction_172
+happyReduction_172 (HappyAbsSyn58 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (EPattType happy_var_2
+ )
+happyReduction_172 _ _ = notHappyAtAll
+
+happyReduce_173 = happySpecReduce_1 60# happyReduction_173
+happyReduction_173 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_173 _ = notHappyAtAll
+
+happyReduce_174 = happySpecReduce_2 60# happyReduction_174
+happyReduction_174 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (ELin happy_var_2
+ )
+happyReduction_174 _ _ = notHappyAtAll
+
+happyReduce_175 = happySpecReduce_3 61# happyReduction_175
+happyReduction_175 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (ESelect happy_var_1 happy_var_3
+ )
+happyReduction_175 _ _ _ = notHappyAtAll
+
+happyReduce_176 = happySpecReduce_3 61# happyReduction_176
+happyReduction_176 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (ETupTyp happy_var_1 happy_var_3
+ )
+happyReduction_176 _ _ _ = notHappyAtAll
+
+happyReduce_177 = happySpecReduce_3 61# happyReduction_177
+happyReduction_177 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (EExtend happy_var_1 happy_var_3
+ )
+happyReduction_177 _ _ _ = notHappyAtAll
+
+happyReduce_178 = happySpecReduce_1 61# happyReduction_178
+happyReduction_178 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_178 _ = notHappyAtAll
+
+happyReduce_179 = happySpecReduce_3 62# happyReduction_179
+happyReduction_179 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (EGlue happy_var_1 happy_var_3
+ )
+happyReduction_179 _ _ _ = notHappyAtAll
+
+happyReduce_180 = happySpecReduce_1 62# happyReduction_180
+happyReduction_180 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_180 _ = notHappyAtAll
+
+happyReduce_181 = happySpecReduce_3 63# happyReduction_181
+happyReduction_181 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (EConcat happy_var_1 happy_var_3
+ )
+happyReduction_181 _ _ _ = notHappyAtAll
+
+happyReduce_182 = happyReduce 4# 63# happyReduction_182
+happyReduction_182 ((HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn76 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EAbstr happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_183 = happyReduce 5# 63# happyReduction_183
+happyReduction_183 ((HappyAbsSyn58 happy_var_5) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn76 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ECTable happy_var_3 happy_var_5
+ ) `HappyStk` happyRest
+
+happyReduce_184 = happySpecReduce_3 63# happyReduction_184
+happyReduction_184 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn77 happy_var_1)
+ = HappyAbsSyn58
+ (EProd happy_var_1 happy_var_3
+ )
+happyReduction_184 _ _ _ = notHappyAtAll
+
+happyReduce_185 = happySpecReduce_3 63# happyReduction_185
+happyReduction_185 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (ETType happy_var_1 happy_var_3
+ )
+happyReduction_185 _ _ _ = notHappyAtAll
+
+happyReduce_186 = happyReduce 6# 63# happyReduction_186
+happyReduction_186 ((HappyAbsSyn58 happy_var_6) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn57 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ELet happy_var_3 happy_var_6
+ ) `HappyStk` happyRest
+
+happyReduce_187 = happyReduce 4# 63# happyReduction_187
+happyReduction_187 ((HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn57 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (ELetb happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_188 = happyReduce 5# 63# happyReduction_188
+happyReduction_188 (_ `HappyStk`
+ (HappyAbsSyn57 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn58 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EWhere happy_var_1 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_189 = happyReduce 4# 63# happyReduction_189
+happyReduction_189 (_ `HappyStk`
+ (HappyAbsSyn85 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn58
+ (EEqs happy_var_3
+ ) `HappyStk` happyRest
+
+happyReduce_190 = happySpecReduce_3 63# happyReduction_190
+happyReduction_190 (HappyAbsSyn9 happy_var_3)
+ (HappyAbsSyn58 happy_var_2)
+ _
+ = HappyAbsSyn58
+ (EExample happy_var_2 happy_var_3
+ )
+happyReduction_190 _ _ _ = notHappyAtAll
+
+happyReduce_191 = happySpecReduce_1 63# happyReduction_191
+happyReduction_191 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_191 _ = notHappyAtAll
+
+happyReduce_192 = happySpecReduce_1 64# happyReduction_192
+happyReduction_192 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn58
+ (happy_var_1
+ )
+happyReduction_192 _ = notHappyAtAll
+
+happyReduce_193 = happySpecReduce_0 65# happyReduction_193
+happyReduction_193 = HappyAbsSyn65
+ ([]
+ )
+
+happyReduce_194 = happySpecReduce_1 65# happyReduction_194
+happyReduction_194 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn65
+ ((:[]) happy_var_1
+ )
+happyReduction_194 _ = notHappyAtAll
+
+happyReduce_195 = happySpecReduce_3 65# happyReduction_195
+happyReduction_195 (HappyAbsSyn65 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn65
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_195 _ _ _ = notHappyAtAll
+
+happyReduce_196 = happySpecReduce_0 66# happyReduction_196
+happyReduction_196 = HappyAbsSyn66
+ (NilExp
+ )
+
+happyReduce_197 = happySpecReduce_2 66# happyReduction_197
+happyReduction_197 (HappyAbsSyn66 happy_var_2)
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn66
+ (ConsExp happy_var_1 happy_var_2
+ )
+happyReduction_197 _ _ = notHappyAtAll
+
+happyReduce_198 = happySpecReduce_1 67# happyReduction_198
+happyReduction_198 _
+ = HappyAbsSyn67
+ (PChar
+ )
+
+happyReduce_199 = happySpecReduce_3 67# happyReduction_199
+happyReduction_199 _
+ (HappyAbsSyn9 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PChars happy_var_2
+ )
+happyReduction_199 _ _ _ = notHappyAtAll
+
+happyReduce_200 = happySpecReduce_2 67# happyReduction_200
+happyReduction_200 (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PMacro happy_var_2
+ )
+happyReduction_200 _ _ = notHappyAtAll
+
+happyReduce_201 = happyReduce 4# 67# happyReduction_201
+happyReduction_201 ((HappyAbsSyn12 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn67
+ (PM happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_202 = happySpecReduce_1 67# happyReduction_202
+happyReduction_202 _
+ = HappyAbsSyn67
+ (PW
+ )
+
+happyReduce_203 = happySpecReduce_1 67# happyReduction_203
+happyReduction_203 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn67
+ (PV happy_var_1
+ )
+happyReduction_203 _ = notHappyAtAll
+
+happyReduce_204 = happySpecReduce_3 67# happyReduction_204
+happyReduction_204 _
+ (HappyAbsSyn12 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PCon happy_var_2
+ )
+happyReduction_204 _ _ _ = notHappyAtAll
+
+happyReduce_205 = happySpecReduce_3 67# happyReduction_205
+happyReduction_205 (HappyAbsSyn12 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn67
+ (PQ happy_var_1 happy_var_3
+ )
+happyReduction_205 _ _ _ = notHappyAtAll
+
+happyReduce_206 = happySpecReduce_1 67# happyReduction_206
+happyReduction_206 (HappyAbsSyn8 happy_var_1)
+ = HappyAbsSyn67
+ (PInt happy_var_1
+ )
+happyReduction_206 _ = notHappyAtAll
+
+happyReduce_207 = happySpecReduce_1 67# happyReduction_207
+happyReduction_207 (HappyAbsSyn10 happy_var_1)
+ = HappyAbsSyn67
+ (PFloat happy_var_1
+ )
+happyReduction_207 _ = notHappyAtAll
+
+happyReduce_208 = happySpecReduce_1 67# happyReduction_208
+happyReduction_208 (HappyAbsSyn9 happy_var_1)
+ = HappyAbsSyn67
+ (PStr happy_var_1
+ )
+happyReduction_208 _ = notHappyAtAll
+
+happyReduce_209 = happySpecReduce_3 67# happyReduction_209
+happyReduction_209 _
+ (HappyAbsSyn73 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PR happy_var_2
+ )
+happyReduction_209 _ _ _ = notHappyAtAll
+
+happyReduce_210 = happySpecReduce_3 67# happyReduction_210
+happyReduction_210 _
+ (HappyAbsSyn81 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PTup happy_var_2
+ )
+happyReduction_210 _ _ _ = notHappyAtAll
+
+happyReduce_211 = happySpecReduce_3 67# happyReduction_211
+happyReduction_211 _
+ (HappyAbsSyn67 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (happy_var_2
+ )
+happyReduction_211 _ _ _ = notHappyAtAll
+
+happyReduce_212 = happySpecReduce_2 68# happyReduction_212
+happyReduction_212 (HappyAbsSyn74 happy_var_2)
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn67
+ (PC happy_var_1 happy_var_2
+ )
+happyReduction_212 _ _ = notHappyAtAll
+
+happyReduce_213 = happyReduce 4# 68# happyReduction_213
+happyReduction_213 ((HappyAbsSyn74 happy_var_4) `HappyStk`
+ (HappyAbsSyn12 happy_var_3) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn12 happy_var_1) `HappyStk`
+ happyRest)
+ = HappyAbsSyn67
+ (PQC happy_var_1 happy_var_3 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_214 = happySpecReduce_2 68# happyReduction_214
+happyReduction_214 _
+ (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn67
+ (PRep happy_var_1
+ )
+happyReduction_214 _ _ = notHappyAtAll
+
+happyReduce_215 = happySpecReduce_3 68# happyReduction_215
+happyReduction_215 (HappyAbsSyn67 happy_var_3)
+ _
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn67
+ (PAs happy_var_1 happy_var_3
+ )
+happyReduction_215 _ _ _ = notHappyAtAll
+
+happyReduce_216 = happySpecReduce_2 68# happyReduction_216
+happyReduction_216 (HappyAbsSyn67 happy_var_2)
+ _
+ = HappyAbsSyn67
+ (PNeg happy_var_2
+ )
+happyReduction_216 _ _ = notHappyAtAll
+
+happyReduce_217 = happySpecReduce_1 68# happyReduction_217
+happyReduction_217 (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn67
+ (happy_var_1
+ )
+happyReduction_217 _ = notHappyAtAll
+
+happyReduce_218 = happySpecReduce_3 69# happyReduction_218
+happyReduction_218 (HappyAbsSyn67 happy_var_3)
+ _
+ (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn67
+ (PDisj happy_var_1 happy_var_3
+ )
+happyReduction_218 _ _ _ = notHappyAtAll
+
+happyReduce_219 = happySpecReduce_3 69# happyReduction_219
+happyReduction_219 (HappyAbsSyn67 happy_var_3)
+ _
+ (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn67
+ (PSeq happy_var_1 happy_var_3
+ )
+happyReduction_219 _ _ _ = notHappyAtAll
+
+happyReduce_220 = happySpecReduce_1 69# happyReduction_220
+happyReduction_220 (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn67
+ (happy_var_1
+ )
+happyReduction_220 _ = notHappyAtAll
+
+happyReduce_221 = happySpecReduce_3 70# happyReduction_221
+happyReduction_221 (HappyAbsSyn67 happy_var_3)
+ _
+ (HappyAbsSyn53 happy_var_1)
+ = HappyAbsSyn70
+ (PA happy_var_1 happy_var_3
+ )
+happyReduction_221 _ _ _ = notHappyAtAll
+
+happyReduce_222 = happySpecReduce_1 71# happyReduction_222
+happyReduction_222 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn71
+ (LIdent happy_var_1
+ )
+happyReduction_222 _ = notHappyAtAll
+
+happyReduce_223 = happySpecReduce_2 71# happyReduction_223
+happyReduction_223 (HappyAbsSyn8 happy_var_2)
+ _
+ = HappyAbsSyn71
+ (LVar happy_var_2
+ )
+happyReduction_223 _ _ = notHappyAtAll
+
+happyReduce_224 = happySpecReduce_1 72# happyReduction_224
+happyReduction_224 _
+ = HappyAbsSyn72
+ (Sort_Type
+ )
+
+happyReduce_225 = happySpecReduce_1 72# happyReduction_225
+happyReduction_225 _
+ = HappyAbsSyn72
+ (Sort_PType
+ )
+
+happyReduce_226 = happySpecReduce_1 72# happyReduction_226
+happyReduction_226 _
+ = HappyAbsSyn72
+ (Sort_Tok
+ )
+
+happyReduce_227 = happySpecReduce_1 72# happyReduction_227
+happyReduction_227 _
+ = HappyAbsSyn72
+ (Sort_Str
+ )
+
+happyReduce_228 = happySpecReduce_1 72# happyReduction_228
+happyReduction_228 _
+ = HappyAbsSyn72
+ (Sort_Strs
+ )
+
+happyReduce_229 = happySpecReduce_0 73# happyReduction_229
+happyReduction_229 = HappyAbsSyn73
+ ([]
+ )
+
+happyReduce_230 = happySpecReduce_1 73# happyReduction_230
+happyReduction_230 (HappyAbsSyn70 happy_var_1)
+ = HappyAbsSyn73
+ ((:[]) happy_var_1
+ )
+happyReduction_230 _ = notHappyAtAll
+
+happyReduce_231 = happySpecReduce_3 73# happyReduction_231
+happyReduction_231 (HappyAbsSyn73 happy_var_3)
+ _
+ (HappyAbsSyn70 happy_var_1)
+ = HappyAbsSyn73
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_231 _ _ _ = notHappyAtAll
+
+happyReduce_232 = happySpecReduce_1 74# happyReduction_232
+happyReduction_232 (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn74
+ ((:[]) happy_var_1
+ )
+happyReduction_232 _ = notHappyAtAll
+
+happyReduce_233 = happySpecReduce_2 74# happyReduction_233
+happyReduction_233 (HappyAbsSyn74 happy_var_2)
+ (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn74
+ ((:) happy_var_1 happy_var_2
+ )
+happyReduction_233 _ _ = notHappyAtAll
+
+happyReduce_234 = happySpecReduce_1 75# happyReduction_234
+happyReduction_234 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn75
+ (BIdent happy_var_1
+ )
+happyReduction_234 _ = notHappyAtAll
+
+happyReduce_235 = happySpecReduce_1 75# happyReduction_235
+happyReduction_235 _
+ = HappyAbsSyn75
+ (BWild
+ )
+
+happyReduce_236 = happySpecReduce_0 76# happyReduction_236
+happyReduction_236 = HappyAbsSyn76
+ ([]
+ )
+
+happyReduce_237 = happySpecReduce_1 76# happyReduction_237
+happyReduction_237 (HappyAbsSyn75 happy_var_1)
+ = HappyAbsSyn76
+ ((:[]) happy_var_1
+ )
+happyReduction_237 _ = notHappyAtAll
+
+happyReduce_238 = happySpecReduce_3 76# happyReduction_238
+happyReduction_238 (HappyAbsSyn76 happy_var_3)
+ _
+ (HappyAbsSyn75 happy_var_1)
+ = HappyAbsSyn76
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_238 _ _ _ = notHappyAtAll
+
+happyReduce_239 = happyReduce 5# 77# happyReduction_239
+happyReduction_239 (_ `HappyStk`
+ (HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn76 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn77
+ (DDec happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_240 = happySpecReduce_1 77# happyReduction_240
+happyReduction_240 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn77
+ (DExp happy_var_1
+ )
+happyReduction_240 _ = notHappyAtAll
+
+happyReduce_241 = happySpecReduce_1 78# happyReduction_241
+happyReduction_241 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn78
+ (TComp happy_var_1
+ )
+happyReduction_241 _ = notHappyAtAll
+
+happyReduce_242 = happySpecReduce_1 79# happyReduction_242
+happyReduction_242 (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn79
+ (PTComp happy_var_1
+ )
+happyReduction_242 _ = notHappyAtAll
+
+happyReduce_243 = happySpecReduce_0 80# happyReduction_243
+happyReduction_243 = HappyAbsSyn80
+ ([]
+ )
+
+happyReduce_244 = happySpecReduce_1 80# happyReduction_244
+happyReduction_244 (HappyAbsSyn78 happy_var_1)
+ = HappyAbsSyn80
+ ((:[]) happy_var_1
+ )
+happyReduction_244 _ = notHappyAtAll
+
+happyReduce_245 = happySpecReduce_3 80# happyReduction_245
+happyReduction_245 (HappyAbsSyn80 happy_var_3)
+ _
+ (HappyAbsSyn78 happy_var_1)
+ = HappyAbsSyn80
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_245 _ _ _ = notHappyAtAll
+
+happyReduce_246 = happySpecReduce_0 81# happyReduction_246
+happyReduction_246 = HappyAbsSyn81
+ ([]
+ )
+
+happyReduce_247 = happySpecReduce_1 81# happyReduction_247
+happyReduction_247 (HappyAbsSyn79 happy_var_1)
+ = HappyAbsSyn81
+ ((:[]) happy_var_1
+ )
+happyReduction_247 _ = notHappyAtAll
+
+happyReduce_248 = happySpecReduce_3 81# happyReduction_248
+happyReduction_248 (HappyAbsSyn81 happy_var_3)
+ _
+ (HappyAbsSyn79 happy_var_1)
+ = HappyAbsSyn81
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_248 _ _ _ = notHappyAtAll
+
+happyReduce_249 = happySpecReduce_3 82# happyReduction_249
+happyReduction_249 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn67 happy_var_1)
+ = HappyAbsSyn82
+ (Case happy_var_1 happy_var_3
+ )
+happyReduction_249 _ _ _ = notHappyAtAll
+
+happyReduce_250 = happySpecReduce_1 83# happyReduction_250
+happyReduction_250 (HappyAbsSyn82 happy_var_1)
+ = HappyAbsSyn83
+ ((:[]) happy_var_1
+ )
+happyReduction_250 _ = notHappyAtAll
+
+happyReduce_251 = happySpecReduce_3 83# happyReduction_251
+happyReduction_251 (HappyAbsSyn83 happy_var_3)
+ _
+ (HappyAbsSyn82 happy_var_1)
+ = HappyAbsSyn83
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_251 _ _ _ = notHappyAtAll
+
+happyReduce_252 = happySpecReduce_3 84# happyReduction_252
+happyReduction_252 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn74 happy_var_1)
+ = HappyAbsSyn84
+ (Equ happy_var_1 happy_var_3
+ )
+happyReduction_252 _ _ _ = notHappyAtAll
+
+happyReduce_253 = happySpecReduce_0 85# happyReduction_253
+happyReduction_253 = HappyAbsSyn85
+ ([]
+ )
+
+happyReduce_254 = happySpecReduce_1 85# happyReduction_254
+happyReduction_254 (HappyAbsSyn84 happy_var_1)
+ = HappyAbsSyn85
+ ((:[]) happy_var_1
+ )
+happyReduction_254 _ = notHappyAtAll
+
+happyReduce_255 = happySpecReduce_3 85# happyReduction_255
+happyReduction_255 (HappyAbsSyn85 happy_var_3)
+ _
+ (HappyAbsSyn84 happy_var_1)
+ = HappyAbsSyn85
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_255 _ _ _ = notHappyAtAll
+
+happyReduce_256 = happySpecReduce_3 86# happyReduction_256
+happyReduction_256 (HappyAbsSyn58 happy_var_3)
+ _
+ (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn86
+ (Alt happy_var_1 happy_var_3
+ )
+happyReduction_256 _ _ _ = notHappyAtAll
+
+happyReduce_257 = happySpecReduce_0 87# happyReduction_257
+happyReduction_257 = HappyAbsSyn87
+ ([]
+ )
+
+happyReduce_258 = happySpecReduce_1 87# happyReduction_258
+happyReduction_258 (HappyAbsSyn86 happy_var_1)
+ = HappyAbsSyn87
+ ((:[]) happy_var_1
+ )
+happyReduction_258 _ = notHappyAtAll
+
+happyReduce_259 = happySpecReduce_3 87# happyReduction_259
+happyReduction_259 (HappyAbsSyn87 happy_var_3)
+ _
+ (HappyAbsSyn86 happy_var_1)
+ = HappyAbsSyn87
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_259 _ _ _ = notHappyAtAll
+
+happyReduce_260 = happyReduce 5# 88# happyReduction_260
+happyReduction_260 (_ `HappyStk`
+ (HappyAbsSyn58 happy_var_4) `HappyStk`
+ _ `HappyStk`
+ (HappyAbsSyn76 happy_var_2) `HappyStk`
+ _ `HappyStk`
+ happyRest)
+ = HappyAbsSyn88
+ (DDDec happy_var_2 happy_var_4
+ ) `HappyStk` happyRest
+
+happyReduce_261 = happySpecReduce_1 88# happyReduction_261
+happyReduction_261 (HappyAbsSyn58 happy_var_1)
+ = HappyAbsSyn88
+ (DDExp happy_var_1
+ )
+happyReduction_261 _ = notHappyAtAll
+
+happyReduce_262 = happySpecReduce_0 89# happyReduction_262
+happyReduction_262 = HappyAbsSyn89
+ ([]
+ )
+
+happyReduce_263 = happySpecReduce_2 89# happyReduction_263
+happyReduction_263 (HappyAbsSyn88 happy_var_2)
+ (HappyAbsSyn89 happy_var_1)
+ = HappyAbsSyn89
+ (flip (:) happy_var_1 happy_var_2
+ )
+happyReduction_263 _ _ = notHappyAtAll
+
+happyReduce_264 = happySpecReduce_2 90# happyReduction_264
+happyReduction_264 (HappyAbsSyn25 happy_var_2)
+ (HappyAbsSyn91 happy_var_1)
+ = HappyAbsSyn90
+ (OldGr happy_var_1 (reverse happy_var_2)
+ )
+happyReduction_264 _ _ = notHappyAtAll
+
+happyReduce_265 = happySpecReduce_0 91# happyReduction_265
+happyReduction_265 = HappyAbsSyn91
+ (NoIncl
+ )
+
+happyReduce_266 = happySpecReduce_2 91# happyReduction_266
+happyReduction_266 (HappyAbsSyn93 happy_var_2)
+ _
+ = HappyAbsSyn91
+ (Incl happy_var_2
+ )
+happyReduction_266 _ _ = notHappyAtAll
+
+happyReduce_267 = happySpecReduce_1 92# happyReduction_267
+happyReduction_267 (HappyAbsSyn9 happy_var_1)
+ = HappyAbsSyn92
+ (FString happy_var_1
+ )
+happyReduction_267 _ = notHappyAtAll
+
+happyReduce_268 = happySpecReduce_1 92# happyReduction_268
+happyReduction_268 (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn92
+ (FIdent happy_var_1
+ )
+happyReduction_268 _ = notHappyAtAll
+
+happyReduce_269 = happySpecReduce_2 92# happyReduction_269
+happyReduction_269 (HappyAbsSyn92 happy_var_2)
+ _
+ = HappyAbsSyn92
+ (FSlash happy_var_2
+ )
+happyReduction_269 _ _ = notHappyAtAll
+
+happyReduce_270 = happySpecReduce_2 92# happyReduction_270
+happyReduction_270 (HappyAbsSyn92 happy_var_2)
+ _
+ = HappyAbsSyn92
+ (FDot happy_var_2
+ )
+happyReduction_270 _ _ = notHappyAtAll
+
+happyReduce_271 = happySpecReduce_2 92# happyReduction_271
+happyReduction_271 (HappyAbsSyn92 happy_var_2)
+ _
+ = HappyAbsSyn92
+ (FMinus happy_var_2
+ )
+happyReduction_271 _ _ = notHappyAtAll
+
+happyReduce_272 = happySpecReduce_2 92# happyReduction_272
+happyReduction_272 (HappyAbsSyn92 happy_var_2)
+ (HappyAbsSyn12 happy_var_1)
+ = HappyAbsSyn92
+ (FAddId happy_var_1 happy_var_2
+ )
+happyReduction_272 _ _ = notHappyAtAll
+
+happyReduce_273 = happySpecReduce_2 93# happyReduction_273
+happyReduction_273 _
+ (HappyAbsSyn92 happy_var_1)
+ = HappyAbsSyn93
+ ((:[]) happy_var_1
+ )
+happyReduction_273 _ _ = notHappyAtAll
+
+happyReduce_274 = happySpecReduce_3 93# happyReduction_274
+happyReduction_274 (HappyAbsSyn93 happy_var_3)
+ _
+ (HappyAbsSyn92 happy_var_1)
+ = HappyAbsSyn93
+ ((:) happy_var_1 happy_var_3
+ )
+happyReduction_274 _ _ _ = notHappyAtAll
+
+happyNewToken action sts stk [] =
+ action 176# 176# notHappyAtAll (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 {
+ PT _ (TS ";") -> cont 94#;
+ PT _ (TS "=") -> cont 95#;
+ PT _ (TS "{") -> cont 96#;
+ PT _ (TS "}") -> cont 97#;
+ PT _ (TS "(") -> cont 98#;
+ PT _ (TS ")") -> cont 99#;
+ PT _ (TS ":") -> cont 100#;
+ PT _ (TS "->") -> cont 101#;
+ PT _ (TS "**") -> cont 102#;
+ PT _ (TS ",") -> cont 103#;
+ PT _ (TS "[") -> cont 104#;
+ PT _ (TS "]") -> cont 105#;
+ PT _ (TS "-") -> cont 106#;
+ PT _ (TS ".") -> cont 107#;
+ PT _ (TS "|") -> cont 108#;
+ PT _ (TS "%") -> cont 109#;
+ PT _ (TS "?") -> cont 110#;
+ PT _ (TS "<") -> cont 111#;
+ PT _ (TS ">") -> cont 112#;
+ PT _ (TS "@") -> cont 113#;
+ PT _ (TS "#") -> cont 114#;
+ PT _ (TS "!") -> cont 115#;
+ PT _ (TS "*") -> cont 116#;
+ PT _ (TS "+") -> cont 117#;
+ PT _ (TS "++") -> cont 118#;
+ PT _ (TS "\\") -> cont 119#;
+ PT _ (TS "=>") -> cont 120#;
+ PT _ (TS "_") -> cont 121#;
+ PT _ (TS "$") -> cont 122#;
+ PT _ (TS "/") -> cont 123#;
+ PT _ (TS "Lin") -> cont 124#;
+ PT _ (TS "PType") -> cont 125#;
+ PT _ (TS "Str") -> cont 126#;
+ PT _ (TS "Strs") -> cont 127#;
+ PT _ (TS "Tok") -> cont 128#;
+ PT _ (TS "Type") -> cont 129#;
+ PT _ (TS "abstract") -> cont 130#;
+ PT _ (TS "case") -> cont 131#;
+ PT _ (TS "cat") -> cont 132#;
+ PT _ (TS "concrete") -> cont 133#;
+ PT _ (TS "data") -> cont 134#;
+ PT _ (TS "def") -> cont 135#;
+ PT _ (TS "flags") -> cont 136#;
+ PT _ (TS "fn") -> cont 137#;
+ PT _ (TS "fun") -> cont 138#;
+ PT _ (TS "grammar") -> cont 139#;
+ PT _ (TS "in") -> cont 140#;
+ PT _ (TS "include") -> cont 141#;
+ PT _ (TS "incomplete") -> cont 142#;
+ PT _ (TS "instance") -> cont 143#;
+ PT _ (TS "interface") -> cont 144#;
+ PT _ (TS "let") -> cont 145#;
+ PT _ (TS "lin") -> cont 146#;
+ PT _ (TS "lincat") -> cont 147#;
+ PT _ (TS "lindef") -> cont 148#;
+ PT _ (TS "lintype") -> cont 149#;
+ PT _ (TS "of") -> cont 150#;
+ PT _ (TS "open") -> cont 151#;
+ PT _ (TS "oper") -> cont 152#;
+ PT _ (TS "out") -> cont 153#;
+ PT _ (TS "package") -> cont 154#;
+ PT _ (TS "param") -> cont 155#;
+ PT _ (TS "pattern") -> cont 156#;
+ PT _ (TS "pre") -> cont 157#;
+ PT _ (TS "printname") -> cont 158#;
+ PT _ (TS "resource") -> cont 159#;
+ PT _ (TS "reuse") -> cont 160#;
+ PT _ (TS "strs") -> cont 161#;
+ PT _ (TS "table") -> cont 162#;
+ PT _ (TS "tokenizer") -> cont 163#;
+ PT _ (TS "transfer") -> cont 164#;
+ PT _ (TS "union") -> cont 165#;
+ PT _ (TS "var") -> cont 166#;
+ PT _ (TS "variants") -> cont 167#;
+ PT _ (TS "where") -> cont 168#;
+ PT _ (TS "with") -> cont 169#;
+ PT _ (TI happy_dollar_dollar) -> cont 170#;
+ PT _ (TL happy_dollar_dollar) -> cont 171#;
+ PT _ (TD happy_dollar_dollar) -> cont 172#;
+ PT _ (T_LString happy_dollar_dollar) -> cont 173#;
+ PT _ (T_PIdent _) -> cont 174#;
+ _ -> cont 175#;
+ _ -> happyError' (tk:tks)
+ }
+
+happyError_ tk tks = happyError' (tk:tks)
+
+happyThen :: () => Err a -> (a -> Err b) -> Err b
+happyThen = (thenM)
+happyReturn :: () => a -> Err a
+happyReturn = (returnM)
+happyThen1 m k tks = (thenM) m (\a -> k a tks)
+happyReturn1 :: () => a -> b -> Err a
+happyReturn1 = \a tks -> (returnM) a
+happyError' :: () => [Token] -> Err a
+happyError' = happyError
+
+pGrammar tks = happySomeParser where
+ happySomeParser = happyThen (happyParse action_0 tks) (\x -> case x of {HappyAbsSyn13 z -> happyReturn z; _other -> notHappyAtAll })
+
+pModDef tks = happySomeParser where
+ happySomeParser = happyThen (happyParse action_1 tks) (\x -> case x of {HappyAbsSyn15 z -> happyReturn z; _other -> notHappyAtAll })
+
+pOldGrammar tks = happySomeParser where
+ happySomeParser = happyThen (happyParse action_2 tks) (\x -> case x of {HappyAbsSyn90 z -> happyReturn z; _other -> notHappyAtAll })
+
+pExp tks = happySomeParser where
+ happySomeParser = happyThen (happyParse action_3 tks) (\x -> case x of {HappyAbsSyn58 z -> happyReturn z; _other -> notHappyAtAll })
+
+pModHeader tks = happySomeParser where
+ happySomeParser = happyThen (happyParse action_4 tks) (\x -> case x of {HappyAbsSyn15 z -> happyReturn z; _other -> notHappyAtAll })
+
+happySeq = happyDontSeq
+
+
+returnM :: a -> Err a
+returnM = return
+
+thenM :: Err a -> (a -> Err b) -> Err b
+thenM = (>>=)
+
+happyError :: [Token] -> Err a
+happyError ts =
+ Bad $ "syntax error at " ++ tokenPos ts ++
+ case ts of
+ [] -> []
+ [Err _] -> " due to lexer error"
+ _ -> " before " ++ unwords (map prToken (take 4 ts))
+
+myLexer = tokens
+{-# LINE 1 "templates/GenericTemplate.hs" #-}
+{-# LINE 1 "templates/GenericTemplate.hs" #-}
+{-# LINE 1 "<built-in>" #-}
+{-# LINE 1 "<command line>" #-}
+{-# LINE 1 "templates/GenericTemplate.hs" #-}
+-- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp
+
+{-# LINE 28 "templates/GenericTemplate.hs" #-}
+
+
+
+
+
+
+
+
+{-# LINE 49 "templates/GenericTemplate.hs" #-}
+
+{-# LINE 59 "templates/GenericTemplate.hs" #-}
+
+{-# LINE 68 "templates/GenericTemplate.hs" #-}
+
+infixr 9 `HappyStk`
+data HappyStk a = HappyStk a (HappyStk a)
+
+-----------------------------------------------------------------------------
+-- starting the parse
+
+happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll
+
+-----------------------------------------------------------------------------
+-- Accepting the parse
+
+-- If the current token is 1#, it means we've just accepted a partial
+-- parse (a %partial parser). We must ignore the saved token on the top of
+-- the stack in this case.
+happyAccept 1# tk st sts (_ `HappyStk` ans `HappyStk` _) =
+ happyReturn1 ans
+happyAccept j tk st sts (HappyStk ans _) =
+ (happyTcHack j ) (happyReturn1 ans)
+
+-----------------------------------------------------------------------------
+-- Arrays only: do the next action
+
+{-# LINE 155 "templates/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 `HappyStk` _) =
+ let i = (case x of { HappyErrorToken (I# (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))`HappyStk`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 `HappyStk` 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`HappyStk`stk')
+ = let r = fn v1 in
+ happySeq r (action nt j tk st sts (r `HappyStk` stk'))
+
+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`HappyStk`v2`HappyStk`stk')
+ = let r = fn v1 v2 in
+ happySeq r (action nt j tk st sts (r `HappyStk` stk'))
+
+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`HappyStk`v2`HappyStk`v3`HappyStk`stk')
+ = let r = fn v1 v2 v3 in
+ happySeq r (action nt j tk st sts (r `HappyStk` stk'))
+
+happyReduce k i fn 1# tk st sts stk
+ = happyFail 1# tk st sts stk
+happyReduce k nt fn j tk st sts stk
+ = case happyDrop (k -# (1# :: Int#)) sts of
+ sts1@(((st1@(HappyState (action))):(_))) ->
+ let r = fn stk in -- it doesn't hurt to always seq here...
+ happyDoSeq r (action nt j tk st1 sts1 r)
+
+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 tk) (\r -> action nt j tk st1 sts1 (r `HappyStk` drop_stk))
+ where sts1@(((st1@(HappyState (action))):(_))) = happyDrop k ((st):(sts))
+ drop_stk = happyDropStk k stk
+
+happyMonad2Reduce k nt fn 1# tk st sts stk
+ = happyFail 1# tk st sts stk
+happyMonad2Reduce k nt fn j tk st sts stk =
+ happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))
+ where sts1@(((st1@(HappyState (action))):(_))) = happyDrop k ((st):(sts))
+ drop_stk = happyDropStk k stk
+
+
+
+
+
+ new_state = action
+
+
+happyDrop 0# l = l
+happyDrop n ((_):(t)) = happyDrop (n -# (1# :: Int#)) t
+
+happyDropStk 0# l = l
+happyDropStk n (x `HappyStk` xs) = happyDropStk (n -# (1#::Int#)) xs
+
+-----------------------------------------------------------------------------
+-- Moving to a new state after a reduction
+
+{-# LINE 253 "templates/GenericTemplate.hs" #-}
+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_ tk
+
+{- 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 `HappyStk` _ `HappyStk` stk) =
+-- trace ("discarding state, depth " ++ show (length stk)) $
+ action 1# 1# tk (HappyState (action)) sts ((saved_tok`HappyStk`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# (i))) `HappyStk` stk)
+
+-- Internal happy errors:
+
+notHappyAtAll = error "Internal Happy error\n"
+
+-----------------------------------------------------------------------------
+-- Hack to get the typechecker to accept our action functions
+
+
+happyTcHack :: Int# -> a -> a
+happyTcHack x y = y
+{-# INLINE happyTcHack #-}
+
+
+-----------------------------------------------------------------------------
+-- Seq-ing. If the --strict flag is given, then Happy emits
+-- happySeq = happyDoSeq
+-- otherwise it emits
+-- happySeq = happyDontSeq
+
+happyDoSeq, happyDontSeq :: a -> b -> b
+happyDoSeq a b = a `seq` b
+happyDontSeq a b = b
+
+-----------------------------------------------------------------------------
+-- 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.
+
+{-# LINE 317 "templates/GenericTemplate.hs" #-}
+{-# 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.
diff --git a/src/GF/Source/ParGF.y b/src/GF/Source/ParGF.y
index 309ef2af3..2109434e5 100644
--- a/src/GF/Source/ParGF.y
+++ b/src/GF/Source/ParGF.y
@@ -1,7 +1,7 @@
-- This Happy file was machine-generated by the BNF converter
{
{-# OPTIONS -fno-warn-incomplete-patterns -fno-warn-overlapping-patterns #-}
- module GF.Source.ParGF (pGrammar, pModDef, pOldGrammar, pExp, myLexer) where --H
+ module GF.Source.ParGF (pGrammar, pModDef, pOldGrammar, pExp, pModHeader, myLexer) where --H
import GF.Source.AbsGF --H
import GF.Source.LexGF --H
import GF.Infra.Ident --H
@@ -12,6 +12,7 @@ import GF.Data.ErrM --H
%name pModDef ModDef
%name pOldGrammar OldGrammar
%name pExp Exp
+%partial pModHeader ModHeader
-- no lexer declaration
%monad { Err } { thenM } { returnM }
@@ -38,6 +39,7 @@ import GF.Data.ErrM --H
'<' { PT _ (TS "<") }
'>' { PT _ (TS ">") }
'@' { PT _ (TS "@") }
+ '#' { PT _ (TS "#") }
'!' { PT _ (TS "!") }
'*' { PT _ (TS "*") }
'+' { PT _ (TS "+") }
@@ -94,21 +96,21 @@ import GF.Data.ErrM --H
'where' { PT _ (TS "where") }
'with' { PT _ (TS "with") }
-L_ident { PT _ (TV $$) }
L_integ { PT _ (TI $$) }
L_quoted { PT _ (TL $$) }
L_doubl { PT _ (TD $$) }
L_LString { PT _ (T_LString $$) }
+L_PIdent { PT _ (T_PIdent _) }
L_err { _ }
%%
-Ident :: { Ident } : L_ident { identC $1 } --H
Integer :: { Integer } : L_integ { (read $1) :: Integer }
String :: { String } : L_quoted { $1 }
Double :: { Double } : L_doubl { (read $1) :: Double }
LString :: { LString} : L_LString { LString ($1)}
+PIdent :: { PIdent} : L_PIdent { PIdent (mkPosToken $1)}
Grammar :: { Grammar }
Grammar : ListModDef { Gr (reverse $1) }
@@ -121,12 +123,12 @@ ListModDef : {- empty -} { [] }
ModDef :: { ModDef }
ModDef : ModDef ';' { $1 }
- | 'grammar' Ident '=' '{' 'abstract' '=' Ident ';' ListConcSpec '}' { MMain $2 $7 $9 }
+ | 'grammar' PIdent '=' '{' 'abstract' '=' PIdent ';' ListConcSpec '}' { MMain $2 $7 $9 }
| ComplMod ModType '=' ModBody { MModule $1 $2 $4 }
ConcSpec :: { ConcSpec }
-ConcSpec : Ident '=' ConcExp { ConcSpec $1 $3 }
+ConcSpec : PIdent '=' ConcExp { ConcSpec $1 $3 }
ListConcSpec :: { [ConcSpec] }
@@ -136,7 +138,7 @@ ListConcSpec : {- empty -} { [] }
ConcExp :: { ConcExp }
-ConcExp : Ident ListTransfer { ConcExp $1 (reverse $2) }
+ConcExp : PIdent ListTransfer { ConcExp $1 (reverse $2) }
ListTransfer :: { [Transfer] }
@@ -149,13 +151,28 @@ Transfer : '(' 'transfer' 'in' Open ')' { TransferIn $4 }
| '(' 'transfer' 'out' Open ')' { TransferOut $4 }
+ModHeader :: { ModDef }
+ModHeader : ComplMod ModType '=' ModHeaderBody { MModule $1 $2 $4 }
+
+
+ModHeaderBody :: { ModBody }
+ModHeaderBody : Extend Opens { MBody $1 $2 [] }
+ | ListIncluded { MNoBody $1 }
+ | Included 'with' ListOpen { MWith $1 $3 }
+ | Included 'with' ListOpen '**' Opens { MWithBody $1 $3 $5 [] }
+ | ListIncluded '**' Included 'with' ListOpen { MWithE $1 $3 $5 }
+ | ListIncluded '**' Included 'with' ListOpen '**' Opens { MWithEBody $1 $3 $5 $7 [] }
+ | 'reuse' PIdent { MReuse $2 }
+ | 'union' ListIncluded { MUnion $2 }
+
+
ModType :: { ModType }
-ModType : 'abstract' Ident { MTAbstract $2 }
- | 'resource' Ident { MTResource $2 }
- | 'interface' Ident { MTInterface $2 }
- | 'concrete' Ident 'of' Ident { MTConcrete $2 $4 }
- | 'instance' Ident 'of' Ident { MTInstance $2 $4 }
- | 'transfer' Ident ':' Open '->' Open { MTTransfer $2 $4 $6 }
+ModType : 'abstract' PIdent { MTAbstract $2 }
+ | 'resource' PIdent { MTResource $2 }
+ | 'interface' PIdent { MTInterface $2 }
+ | 'concrete' PIdent 'of' PIdent { MTConcrete $2 $4 }
+ | 'instance' PIdent 'of' PIdent { MTInstance $2 $4 }
+ | 'transfer' PIdent ':' Open '->' Open { MTTransfer $2 $4 $6 }
ModBody :: { ModBody }
@@ -165,7 +182,7 @@ ModBody : Extend Opens '{' ListTopDef '}' { MBody $1 $2 (reverse $4) }
| Included 'with' ListOpen '**' Opens '{' ListTopDef '}' { MWithBody $1 $3 $5 (reverse $7) }
| ListIncluded '**' Included 'with' ListOpen { MWithE $1 $3 $5 }
| ListIncluded '**' Included 'with' ListOpen '**' Opens '{' ListTopDef '}' { MWithEBody $1 $3 $5 $7 (reverse $9) }
- | 'reuse' Ident { MReuse $2 }
+ | 'reuse' PIdent { MReuse $2 }
| 'union' ListIncluded { MUnion $2 }
@@ -191,9 +208,9 @@ Opens : {- empty -} { NoOpens }
Open :: { Open }
-Open : Ident { OName $1 }
- | '(' QualOpen Ident ')' { OQualQO $2 $3 }
- | '(' QualOpen Ident '=' Ident ')' { OQual $2 $3 $5 }
+Open : PIdent { OName $1 }
+ | '(' QualOpen PIdent ')' { OQualQO $2 $3 }
+ | '(' QualOpen PIdent '=' PIdent ')' { OQual $2 $3 $5 }
ComplMod :: { ComplMod }
@@ -214,9 +231,9 @@ ListIncluded : {- empty -} { [] }
Included :: { Included }
-Included : Ident { IAll $1 }
- | Ident '[' ListIdent ']' { ISome $1 $3 }
- | Ident '-' '[' ListIdent ']' { IMinus $1 $4 }
+Included : PIdent { IAll $1 }
+ | PIdent '[' ListPIdent ']' { ISome $1 $3 }
+ | PIdent '-' '[' ListPIdent ']' { IMinus $1 $4 }
Def :: { Def }
@@ -244,28 +261,28 @@ TopDef : 'cat' ListCatDef { DefCat $2 }
| 'printname' ListPrintDef { DefPrintOld $2 }
| 'lintype' ListDef { DefLintype $2 }
| 'pattern' ListDef { DefPattern $2 }
- | 'package' Ident '=' '{' ListTopDef '}' ';' { DefPackage $2 (reverse $5) }
+ | 'package' PIdent '=' '{' ListTopDef '}' ';' { DefPackage $2 (reverse $5) }
| 'var' ListDef { DefVars $2 }
- | 'tokenizer' Ident ';' { DefTokenizer $2 }
+ | 'tokenizer' PIdent ';' { DefTokenizer $2 }
CatDef :: { CatDef }
-CatDef : Ident ListDDecl { SimpleCatDef $1 (reverse $2) }
- | '[' Ident ListDDecl ']' { ListCatDef $2 (reverse $3) }
- | '[' Ident ListDDecl ']' '{' Integer '}' { ListSizeCatDef $2 (reverse $3) $6 }
+CatDef : PIdent ListDDecl { SimpleCatDef $1 (reverse $2) }
+ | '[' PIdent ListDDecl ']' { ListCatDef $2 (reverse $3) }
+ | '[' PIdent ListDDecl ']' '{' Integer '}' { ListSizeCatDef $2 (reverse $3) $6 }
FunDef :: { FunDef }
-FunDef : ListIdent ':' Exp { FunDef $1 $3 }
+FunDef : ListPIdent ':' Exp { FunDef $1 $3 }
DataDef :: { DataDef }
-DataDef : Ident '=' ListDataConstr { DataDef $1 $3 }
+DataDef : PIdent '=' ListDataConstr { DataDef $1 $3 }
DataConstr :: { DataConstr }
-DataConstr : Ident { DataId $1 }
- | Ident '.' Ident { DataQId $1 $3 }
+DataConstr : PIdent { DataId $1 }
+ | PIdent '.' PIdent { DataQId $1 $3 }
ListDataConstr :: { [DataConstr] }
@@ -275,13 +292,13 @@ ListDataConstr : {- empty -} { [] }
ParDef :: { ParDef }
-ParDef : Ident '=' ListParConstr { ParDefDir $1 $3 }
- | Ident '=' '(' 'in' Ident ')' { ParDefIndir $1 $5 }
- | Ident { ParDefAbs $1 }
+ParDef : PIdent '=' ListParConstr { ParDefDir $1 $3 }
+ | PIdent '=' '(' 'in' PIdent ')' { ParDefIndir $1 $5 }
+ | PIdent { ParDefAbs $1 }
ParConstr :: { ParConstr }
-ParConstr : Ident ListDDecl { ParConstr $1 (reverse $2) }
+ParConstr : PIdent ListDDecl { ParConstr $1 (reverse $2) }
PrintDef :: { PrintDef }
@@ -289,7 +306,7 @@ PrintDef : ListName '=' Exp { PrintDef $1 $3 }
FlagDef :: { FlagDef }
-FlagDef : Ident '=' Ident { FlagDef $1 $3 }
+FlagDef : PIdent '=' PIdent { FlagDef $1 $3 }
ListDef :: { [Def] }
@@ -333,14 +350,14 @@ ListParConstr : {- empty -} { [] }
| ParConstr '|' ListParConstr { (:) $1 $3 }
-ListIdent :: { [Ident] }
-ListIdent : Ident { (:[]) $1 }
- | Ident ',' ListIdent { (:) $1 $3 }
+ListPIdent :: { [PIdent] }
+ListPIdent : PIdent { (:[]) $1 }
+ | PIdent ',' ListPIdent { (:) $1 $3 }
Name :: { Name }
-Name : Ident { IdentName $1 }
- | '[' Ident ']' { ListName $2 }
+Name : PIdent { IdentName $1 }
+ | '[' PIdent ']' { ListName $2 }
ListName :: { [Name] }
@@ -349,9 +366,9 @@ ListName : Name { (:[]) $1 }
LocDef :: { LocDef }
-LocDef : ListIdent ':' Exp { LDDecl $1 $3 }
- | ListIdent '=' Exp { LDDef $1 $3 }
- | ListIdent ':' Exp '=' Exp { LDFull $1 $3 $5 }
+LocDef : ListPIdent ':' Exp { LDDecl $1 $3 }
+ | ListPIdent '=' Exp { LDDef $1 $3 }
+ | ListPIdent ':' Exp '=' Exp { LDFull $1 $3 $5 }
ListLocDef :: { [LocDef] }
@@ -361,9 +378,9 @@ ListLocDef : {- empty -} { [] }
Exp6 :: { Exp }
-Exp6 : Ident { EIdent $1 }
- | '{' Ident '}' { EConstr $2 }
- | '%' Ident '%' { ECons $2 }
+Exp6 : PIdent { EIdent $1 }
+ | '{' PIdent '}' { EConstr $2 }
+ | '%' PIdent '%' { ECons $2 }
| Sort { ESort $1 }
| String { EString $1 }
| Integer { EInt $1 }
@@ -371,11 +388,11 @@ Exp6 : Ident { EIdent $1 }
| '?' { EMeta }
| '[' ']' { EEmpty }
| 'data' { EData }
- | '[' Ident Exps ']' { EList $2 $3 }
+ | '[' PIdent Exps ']' { EList $2 $3 }
| '[' String ']' { EStrings $2 }
| '{' ListLocDef '}' { ERecord $2 }
| '<' ListTupleComp '>' { ETuple $2 }
- | '(' 'in' Ident ')' { EIndir $3 }
+ | '(' 'in' PIdent ')' { EIndir $3 }
| '<' Exp ':' Exp '>' { ETyped $2 $4 }
| '(' Exp ')' { $2 }
| LString { ELString $1 }
@@ -383,8 +400,8 @@ Exp6 : Ident { EIdent $1 }
Exp5 :: { Exp }
Exp5 : Exp5 '.' Label { EProj $1 $3 }
- | '{' Ident '.' Ident '}' { EQConstr $2 $4 }
- | '%' Ident '.' Ident { EQCons $2 $4 }
+ | '{' PIdent '.' PIdent '}' { EQConstr $2 $4 }
+ | '%' PIdent '.' PIdent { EQCons $2 $4 }
| Exp6 { $1 }
@@ -397,9 +414,11 @@ Exp4 : Exp4 Exp5 { EApp $1 $2 }
| 'variants' '{' ListExp '}' { EVariants $3 }
| 'pre' '{' Exp ';' ListAltern '}' { EPre $3 $5 }
| 'strs' '{' ListExp '}' { EStrs $3 }
- | Ident '@' Exp6 { EConAt $1 $3 }
+ | PIdent '@' Exp6 { EConAt $1 $3 }
+ | '#' Patt2 { EPatt $2 }
+ | 'pattern' Exp5 { EPattType $2 }
| Exp5 { $1 }
- | 'Lin' Ident { ELin $2 }
+ | 'Lin' PIdent { ELin $2 }
Exp3 :: { Exp }
@@ -444,10 +463,14 @@ Exps : {- empty -} { NilExp }
Patt2 :: { Patt }
-Patt2 : '_' { PW }
- | Ident { PV $1 }
- | '{' Ident '}' { PCon $2 }
- | Ident '.' Ident { PQ $1 $3 }
+Patt2 : '?' { PChar }
+ | '[' String ']' { PChars $2 }
+ | '#' PIdent { PMacro $2 }
+ | '#' PIdent '.' PIdent { PM $2 $4 }
+ | '_' { PW }
+ | PIdent { PV $1 }
+ | '{' PIdent '}' { PCon $2 }
+ | PIdent '.' PIdent { PQ $1 $3 }
| Integer { PInt $1 }
| Double { PFloat $1 }
| String { PStr $1 }
@@ -457,10 +480,10 @@ Patt2 : '_' { PW }
Patt1 :: { Patt }
-Patt1 : Ident ListPatt { PC $1 $2 }
- | Ident '.' Ident ListPatt { PQC $1 $3 $4 }
+Patt1 : PIdent ListPatt { PC $1 $2 }
+ | PIdent '.' PIdent ListPatt { PQC $1 $3 $4 }
| Patt2 '*' { PRep $1 }
- | Ident '@' Patt2 { PAs $1 $3 }
+ | PIdent '@' Patt2 { PAs $1 $3 }
| '-' Patt2 { PNeg $2 }
| Patt2 { $1 }
@@ -472,11 +495,11 @@ Patt : Patt '|' Patt1 { PDisj $1 $3 }
PattAss :: { PattAss }
-PattAss : ListIdent '=' Patt { PA $1 $3 }
+PattAss : ListPIdent '=' Patt { PA $1 $3 }
Label :: { Label }
-Label : Ident { LIdent $1 }
+Label : PIdent { LIdent $1 }
| '$' Integer { LVar $2 }
@@ -500,7 +523,7 @@ ListPatt : Patt2 { (:[]) $1 }
Bind :: { Bind }
-Bind : Ident { BIdent $1 }
+Bind : PIdent { BIdent $1 }
| '_' { BWild }
@@ -585,11 +608,11 @@ Include : {- empty -} { NoIncl }
FileName :: { FileName }
FileName : String { FString $1 }
- | Ident { FIdent $1 }
+ | PIdent { FIdent $1 }
| '/' FileName { FSlash $2 }
| '.' FileName { FDot $2 }
| '-' FileName { FMinus $2 }
- | Ident FileName { FAddId $1 $2 }
+ | PIdent FileName { FAddId $1 $2 }
ListFileName :: { [FileName] }