Index: ghc-7.8.4/compiler/cmm/CmmParse.y.source =================================================================== --- ghc-7.8.4.orig/compiler/cmm/CmmParse.y.source +++ ghc-7.8.4/compiler/cmm/CmmParse.y.source @@ -571,6 +571,10 @@ importName : NAME { ($1, mkForeignLabel $1 Nothing ForeignLabelInExternalPackage IsFunction) } + -- as previous 'NAME', but 'IsData' + | 'CLOSURE' NAME + { ($2, mkForeignLabel $2 Nothing ForeignLabelInExternalPackage IsData) } + -- A label imported with an explicit packageId. | STRING NAME { ($2, mkCmmCodeLabel (fsToPackageId (mkFastString $1)) $2) } Index: ghc-7.8.4/rts/Exception.cmm =================================================================== --- ghc-7.8.4.orig/rts/Exception.cmm +++ ghc-7.8.4/rts/Exception.cmm @@ -13,7 +13,7 @@ #include "Cmm.h" #include "RaiseAsync.h" -import ghczmprim_GHCziTypes_True_closure; +import CLOSURE ghczmprim_GHCziTypes_True_closure; /* ----------------------------------------------------------------------------- Exception Primitives Index: ghc-7.8.4/rts/PrimOps.cmm =================================================================== --- ghc-7.8.4.orig/rts/PrimOps.cmm +++ ghc-7.8.4/rts/PrimOps.cmm @@ -27,12 +27,12 @@ import pthread_mutex_lock; import pthread_mutex_unlock; #endif -import base_ControlziExceptionziBase_nestedAtomically_closure; +import CLOSURE base_ControlziExceptionziBase_nestedAtomically_closure; import EnterCriticalSection; import LeaveCriticalSection; -import ghczmprim_GHCziTypes_False_closure; +import CLOSURE ghczmprim_GHCziTypes_False_closure; #if defined(USE_MINIINTERPRETER) || !defined(mingw32_HOST_OS) -import sm_mutex; +import CLOSURE sm_mutex; #endif /*----------------------------------------------------------------------------- Index: ghc-7.8.4/compiler/cmm/CmmParse.hs =================================================================== --- ghc-7.8.4.orig/compiler/cmm/CmmParse.hs +++ ghc-7.8.4/compiler/cmm/CmmParse.hs @@ -1,5 +1,4 @@ {-# OPTIONS_GHC -w #-} -{-# OPTIONS -fglasgow-exts -cpp #-} {-# LANGUAGE BangPatterns #-} -- required for versions of Happy before 1.18.6 {-# OPTIONS -Wwarn -w #-} -- The above warning supression flag is a temporary kludge. @@ -64,676 +63,3859 @@ import System.Exit import Data.Maybe #include "HsVersions.h" -import qualified Data.Array as Happy_Data_Array -import qualified GHC.Exts as Happy_GHC_Exts import Control.Applicative(Applicative(..)) import Control.Monad (ap) --- parser produced by Happy Version 1.19.4 +-- parser produced by Happy Version 1.19.5 -newtype HappyAbsSyn = HappyAbsSyn HappyAny -#if __GLASGOW_HASKELL__ >= 607 -type HappyAny = Happy_GHC_Exts.Any -#else -type HappyAny = forall a . a -#endif -happyIn4 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn4 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn4 #-} -happyOut4 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut4 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut4 #-} -happyIn5 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn5 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn5 #-} -happyOut5 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut5 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut5 #-} -happyIn6 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn6 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn6 #-} -happyOut6 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut6 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut6 #-} -happyIn7 :: (CmmParse CLabel) -> (HappyAbsSyn ) -happyIn7 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn7 #-} -happyOut7 :: (HappyAbsSyn ) -> (CmmParse CLabel) -happyOut7 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut7 #-} -happyIn8 :: ([CmmParse [CmmStatic]]) -> (HappyAbsSyn ) -happyIn8 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn8 #-} -happyOut8 :: (HappyAbsSyn ) -> ([CmmParse [CmmStatic]]) -happyOut8 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut8 #-} -happyIn9 :: (CmmParse [CmmStatic]) -> (HappyAbsSyn ) -happyIn9 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn9 #-} -happyOut9 :: (HappyAbsSyn ) -> (CmmParse [CmmStatic]) -happyOut9 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut9 #-} -happyIn10 :: ([CmmParse CmmExpr]) -> (HappyAbsSyn ) -happyIn10 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn10 #-} -happyOut10 :: (HappyAbsSyn ) -> ([CmmParse CmmExpr]) -happyOut10 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut10 #-} -happyIn11 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn11 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn11 #-} -happyOut11 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut11 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut11 #-} -happyIn12 :: (Convention) -> (HappyAbsSyn ) -happyIn12 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn12 #-} -happyOut12 :: (HappyAbsSyn ) -> (Convention) -happyOut12 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut12 #-} -happyIn13 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn13 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn13 #-} -happyOut13 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut13 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut13 #-} -happyIn14 :: (CmmParse (CLabel, Maybe CmmInfoTable, [LocalReg])) -> (HappyAbsSyn ) -happyIn14 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn14 #-} -happyOut14 :: (HappyAbsSyn ) -> (CmmParse (CLabel, Maybe CmmInfoTable, [LocalReg])) -happyOut14 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut14 #-} -happyIn15 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn15 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn15 #-} -happyOut15 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut15 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut15 #-} -happyIn16 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn16 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn16 #-} -happyOut16 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut16 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut16 #-} -happyIn17 :: ([(FastString, CLabel)]) -> (HappyAbsSyn ) -happyIn17 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn17 #-} -happyOut17 :: (HappyAbsSyn ) -> ([(FastString, CLabel)]) -happyOut17 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut17 #-} -happyIn18 :: ((FastString, CLabel)) -> (HappyAbsSyn ) -happyIn18 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn18 #-} -happyOut18 :: (HappyAbsSyn ) -> ((FastString, CLabel)) -happyOut18 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut18 #-} -happyIn19 :: ([FastString]) -> (HappyAbsSyn ) -happyIn19 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn19 #-} -happyOut19 :: (HappyAbsSyn ) -> ([FastString]) -happyOut19 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut19 #-} -happyIn20 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn20 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn20 #-} -happyOut20 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut20 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut20 #-} -happyIn21 :: (CmmParse CmmExpr) -> (HappyAbsSyn ) -happyIn21 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn21 #-} -happyOut21 :: (HappyAbsSyn ) -> (CmmParse CmmExpr) -happyOut21 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut21 #-} -happyIn22 :: (CmmReturnInfo) -> (HappyAbsSyn ) -happyIn22 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn22 #-} -happyOut22 :: (HappyAbsSyn ) -> (CmmReturnInfo) -happyOut22 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut22 #-} -happyIn23 :: (CmmParse BoolExpr) -> (HappyAbsSyn ) -happyIn23 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn23 #-} -happyOut23 :: (HappyAbsSyn ) -> (CmmParse BoolExpr) -happyOut23 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut23 #-} -happyIn24 :: (CmmParse BoolExpr) -> (HappyAbsSyn ) -happyIn24 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn24 #-} -happyOut24 :: (HappyAbsSyn ) -> (CmmParse BoolExpr) -happyOut24 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut24 #-} -happyIn25 :: (Safety) -> (HappyAbsSyn ) -happyIn25 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn25 #-} -happyOut25 :: (HappyAbsSyn ) -> (Safety) -happyOut25 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut25 #-} -happyIn26 :: ([GlobalReg]) -> (HappyAbsSyn ) -happyIn26 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn26 #-} -happyOut26 :: (HappyAbsSyn ) -> ([GlobalReg]) -happyOut26 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut26 #-} -happyIn27 :: ([GlobalReg]) -> (HappyAbsSyn ) -happyIn27 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn27 #-} -happyOut27 :: (HappyAbsSyn ) -> ([GlobalReg]) -happyOut27 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut27 #-} -happyIn28 :: (Maybe (Int,Int)) -> (HappyAbsSyn ) -happyIn28 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn28 #-} -happyOut28 :: (HappyAbsSyn ) -> (Maybe (Int,Int)) -happyOut28 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut28 #-} -happyIn29 :: ([CmmParse ([Int],Either BlockId (CmmParse ()))]) -> (HappyAbsSyn ) -happyIn29 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn29 #-} -happyOut29 :: (HappyAbsSyn ) -> ([CmmParse ([Int],Either BlockId (CmmParse ()))]) -happyOut29 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut29 #-} -happyIn30 :: (CmmParse ([Int],Either BlockId (CmmParse ()))) -> (HappyAbsSyn ) -happyIn30 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn30 #-} -happyOut30 :: (HappyAbsSyn ) -> (CmmParse ([Int],Either BlockId (CmmParse ()))) -happyOut30 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut30 #-} -happyIn31 :: (CmmParse (Either BlockId (CmmParse ()))) -> (HappyAbsSyn ) -happyIn31 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn31 #-} -happyOut31 :: (HappyAbsSyn ) -> (CmmParse (Either BlockId (CmmParse ()))) -happyOut31 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut31 #-} -happyIn32 :: ([Int]) -> (HappyAbsSyn ) -happyIn32 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn32 #-} -happyOut32 :: (HappyAbsSyn ) -> ([Int]) -happyOut32 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut32 #-} -happyIn33 :: (Maybe (CmmParse ())) -> (HappyAbsSyn ) -happyIn33 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn33 #-} -happyOut33 :: (HappyAbsSyn ) -> (Maybe (CmmParse ())) -happyOut33 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut33 #-} -happyIn34 :: (CmmParse ()) -> (HappyAbsSyn ) -happyIn34 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn34 #-} -happyOut34 :: (HappyAbsSyn ) -> (CmmParse ()) -happyOut34 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut34 #-} -happyIn35 :: (CmmParse CmmExpr) -> (HappyAbsSyn ) -happyIn35 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn35 #-} -happyOut35 :: (HappyAbsSyn ) -> (CmmParse CmmExpr) -happyOut35 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut35 #-} -happyIn36 :: (CmmParse CmmExpr) -> (HappyAbsSyn ) -happyIn36 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn36 #-} -happyOut36 :: (HappyAbsSyn ) -> (CmmParse CmmExpr) -happyOut36 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut36 #-} -happyIn37 :: (CmmType) -> (HappyAbsSyn ) -happyIn37 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn37 #-} -happyOut37 :: (HappyAbsSyn ) -> (CmmType) -happyOut37 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut37 #-} -happyIn38 :: ([CmmParse (CmmExpr, ForeignHint)]) -> (HappyAbsSyn ) -happyIn38 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn38 #-} -happyOut38 :: (HappyAbsSyn ) -> ([CmmParse (CmmExpr, ForeignHint)]) -happyOut38 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut38 #-} -happyIn39 :: ([CmmParse (CmmExpr, ForeignHint)]) -> (HappyAbsSyn ) -happyIn39 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn39 #-} -happyOut39 :: (HappyAbsSyn ) -> ([CmmParse (CmmExpr, ForeignHint)]) -happyOut39 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut39 #-} -happyIn40 :: (CmmParse (CmmExpr, ForeignHint)) -> (HappyAbsSyn ) -happyIn40 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn40 #-} -happyOut40 :: (HappyAbsSyn ) -> (CmmParse (CmmExpr, ForeignHint)) -happyOut40 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut40 #-} -happyIn41 :: ([CmmParse CmmExpr]) -> (HappyAbsSyn ) -happyIn41 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn41 #-} -happyOut41 :: (HappyAbsSyn ) -> ([CmmParse CmmExpr]) -happyOut41 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut41 #-} -happyIn42 :: ([CmmParse CmmExpr]) -> (HappyAbsSyn ) -happyIn42 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn42 #-} -happyOut42 :: (HappyAbsSyn ) -> ([CmmParse CmmExpr]) -happyOut42 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut42 #-} -happyIn43 :: (CmmParse CmmExpr) -> (HappyAbsSyn ) -happyIn43 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn43 #-} -happyOut43 :: (HappyAbsSyn ) -> (CmmParse CmmExpr) -happyOut43 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut43 #-} -happyIn44 :: ([CmmParse (LocalReg, ForeignHint)]) -> (HappyAbsSyn ) -happyIn44 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn44 #-} -happyOut44 :: (HappyAbsSyn ) -> ([CmmParse (LocalReg, ForeignHint)]) -happyOut44 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut44 #-} -happyIn45 :: ([CmmParse (LocalReg, ForeignHint)]) -> (HappyAbsSyn ) -happyIn45 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn45 #-} -happyOut45 :: (HappyAbsSyn ) -> ([CmmParse (LocalReg, ForeignHint)]) -happyOut45 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut45 #-} -happyIn46 :: (CmmParse (LocalReg, ForeignHint)) -> (HappyAbsSyn ) -happyIn46 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn46 #-} -happyOut46 :: (HappyAbsSyn ) -> (CmmParse (LocalReg, ForeignHint)) -happyOut46 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut46 #-} -happyIn47 :: (CmmParse LocalReg) -> (HappyAbsSyn ) -happyIn47 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn47 #-} -happyOut47 :: (HappyAbsSyn ) -> (CmmParse LocalReg) -happyOut47 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut47 #-} -happyIn48 :: (CmmParse CmmReg) -> (HappyAbsSyn ) -happyIn48 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn48 #-} -happyOut48 :: (HappyAbsSyn ) -> (CmmParse CmmReg) -happyOut48 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut48 #-} -happyIn49 :: (Maybe [CmmParse LocalReg]) -> (HappyAbsSyn ) -happyIn49 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn49 #-} -happyOut49 :: (HappyAbsSyn ) -> (Maybe [CmmParse LocalReg]) -happyOut49 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut49 #-} -happyIn50 :: ([CmmParse LocalReg]) -> (HappyAbsSyn ) -happyIn50 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn50 #-} -happyOut50 :: (HappyAbsSyn ) -> ([CmmParse LocalReg]) -happyOut50 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut50 #-} -happyIn51 :: ([CmmParse LocalReg]) -> (HappyAbsSyn ) -happyIn51 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn51 #-} -happyOut51 :: (HappyAbsSyn ) -> ([CmmParse LocalReg]) -happyOut51 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut51 #-} -happyIn52 :: (CmmParse LocalReg) -> (HappyAbsSyn ) -happyIn52 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn52 #-} -happyOut52 :: (HappyAbsSyn ) -> (CmmParse LocalReg) -happyOut52 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut52 #-} -happyIn53 :: (CmmType) -> (HappyAbsSyn ) -happyIn53 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn53 #-} -happyOut53 :: (HappyAbsSyn ) -> (CmmType) -happyOut53 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut53 #-} -happyIn54 :: (CmmType) -> (HappyAbsSyn ) -happyIn54 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyIn54 #-} -happyOut54 :: (HappyAbsSyn ) -> (CmmType) -happyOut54 x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOut54 #-} -happyInTok :: (Located CmmToken) -> (HappyAbsSyn ) -happyInTok x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyInTok #-} -happyOutTok :: (HappyAbsSyn ) -> (Located CmmToken) -happyOutTok x = Happy_GHC_Exts.unsafeCoerce# x -{-# INLINE happyOutTok #-} - - -happyActOffsets :: HappyAddr -happyActOffsets = HappyA# "\x03\x01\x00\x00\xf1\x03\x03\x01\x00\x00\x00\x00\x00\x04\x00\x00\xf4\x03\x00\x00\x32\x04\x31\x04\x30\x04\x2f\x04\x2e\x04\x2c\x04\xec\x03\xea\x03\x18\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x04\x18\x04\x00\x00\xe6\x03\x2a\x04\x29\x04\x14\x04\xe3\x03\xe2\x03\xe1\x03\xe0\x03\xdf\x03\xde\x03\x21\x04\xfc\x03\x00\x00\x00\x00\x98\x01\xdb\x03\x00\x00\x0c\x04\x0b\x04\x0a\x04\xfd\x03\xf0\x03\xee\x03\xbf\x03\x00\x00\xbc\x03\x00\x00\x16\x01\x00\x00\x00\x00\x0f\x01\xe9\x03\x00\x00\xb9\x03\xb8\x03\xa0\x03\x93\x03\x87\x03\xa3\x03\xbe\x03\x00\x00\xad\x03\xa1\x03\x00\x00\x00\x00\x20\x00\xb6\x03\x20\x00\x20\x00\xec\xff\xc9\x03\x23\x00\x00\x00\xce\x03\x98\x03\x60\x00\x4a\x00\x4a\x00\x4a\x00\xb0\x03\x85\x03\xa7\x03\x00\x00\x16\x00\x00\x00\xdb\x03\x00\x00\x95\x03\x8c\x03\x10\x00\x89\x03\x80\x03\x7d\x03\x00\x00\x83\x03\x0f\x01\xff\xff\x79\x03\x74\x03\x6d\x03\x02\x00\x20\x03\x27\x03\xab\x01\x59\x03\x00\x00\x49\x03\x00\x00\x4a\x00\x4a\x00\x14\x03\x4a\x00\x00\x00\x00\x00\x00\x00\x32\x03\x32\x03\x00\x00\x00\x00\x0f\x03\xfc\x02\xf7\x02\x00\x00\xdb\x03\xea\x02\x2b\x03\x4a\x00\x00\x00\x00\x00\x4a\x00\x4a\x00\x4a\x00\xe1\x02\x4a\x00\x6f\x02\xda\x01\x40\x02\x0c\x00\x00\x00\xbf\x02\x60\x00\x60\x00\x24\x03\x16\x03\x07\x03\x00\x00\x12\x03\x00\x00\xdb\x02\x4a\x00\x4a\x00\xd2\x02\xf9\x02\x00\x00\x00\x00\x00\x00\xd6\x02\xd5\x02\x97\x01\x0e\x02\x00\x00\x09\x03\xf4\x00\x06\x03\x00\x00\x00\x00\x14\x01\xfe\x02\x58\x02\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x20\x00\x60\x00\x60\x00\xc4\x02\x4a\x00\x03\x03\x06\x00\x4a\x00\xc8\x00\x97\x02\xfb\x02\x00\x00\xec\x02\xbf\x01\xfa\x02\xf3\x02\x83\x02\xeb\x02\xe2\x02\xe8\x02\xdd\x02\xd9\x02\xd8\x02\x00\x00\xdb\x03\x00\x00\x25\x00\xe5\x02\x00\x00\x58\x02\x4a\x00\xa5\x02\x00\x00\xde\x02\xcb\x02\x91\x02\xd1\x02\xd4\x02\xd3\x02\xbc\x02\xc1\x02\xb8\x02\xf4\x01\x00\x00\x4a\x00\x00\x00\x7a\x02\x68\x02\x67\x02\x00\x00\x66\x02\x00\x00\x00\x00\x9a\x02\xf7\x00\x50\x02\x53\x02\x85\x02\x4a\x00\xf7\x00\x00\x00\x92\x02\x80\x02\x00\x00\x7f\x02\x64\x02\x00\x00\x69\x02\x00\x00\xbe\x00\x59\x02\x6c\x02\xab\x02\xab\x02\xab\x02\xab\x02\xef\x01\xef\x01\xab\x02\xab\x02\xe4\x03\x71\x01\xed\x03\x25\x00\x25\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x02\x65\x02\x00\x00\x5c\x02\x00\x00\x5b\x02\x4a\x00\x4a\x00\x4a\x00\x4a\x00\x39\x02\x56\x02\x14\x02\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x51\x02\x04\x02\x1e\x02\x03\x02\x00\x00\x00\x00\x34\x02\x33\x02\x32\x02\x2a\x02\x29\x02\x00\x00\x6f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x01\xf6\x01\xeb\x01\xe9\x01\x26\x02\x19\x02\x00\x00\x22\x02\x24\x02\x00\x00\x00\x00\x4a\x00\x00\x00\x00\x00\x00\x00\x21\x02\x27\x02\x83\x01\xad\x00\x11\x02\x00\x00\x00\x02\x10\x02\x13\x02\x4a\x00\xd0\x01\x00\x00\x00\x00\x4a\x00\x20\x00\x05\x02\x07\x02\x00\x00\xc4\x01\x08\x00\xf5\x01\xdd\x01\xce\x01\xea\x01\x00\x00\xaa\x01\xa9\x01\x9e\x01\x00\x00\x20\x00\x9d\x01\x00\x00\x20\x00\xe0\x01\xdc\x01\xcf\x01\xa7\x01\x00\x00\x00\x00\x00\x00\xd4\x01\xa0\x01\xc2\x01\x00\x00\x00\x00\xbd\x01\xc1\x01\xac\x01\xa6\x01\x99\x01\x86\x01\x3d\x01\x32\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x69\x01\x65\x01\x00\x00\x00\x00\x00\x00"# - -happyGotoOffsets :: HappyAddr -happyGotoOffsets = HappyA# "\xd1\x00\x00\x00\x00\x00\xcd\x00\x00\x00\x00\x00\x63\x01\x00\x00\x5a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x01\x00\x00\xdc\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\x00\x09\x01\x00\x00\x00\x00\x2f\x01\x58\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x01\x00\x00\x2d\x01\x00\x00\xb8\x00\x00\x00\x00\x00\x68\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\x0b\x01\x00\x00\xe3\x00\xe0\x00\x00\x00\x00\x00\x1c\x01\x00\x00\xef\x00\x00\x00\x5c\x01\xc6\x03\xbd\x03\xba\x03\x00\x00\xfb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4f\x00\x00\x00\x0a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\xff\xb1\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x03\xa5\x03\x00\x00\xa2\x03\x00\x00\x00\x00\x00\x00\xe4\x00\xd4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x66\x00\x00\x00\x00\x00\x99\x03\x00\x00\x00\x00\x08\x03\x05\x03\x96\x03\x00\x00\xf1\x02\x00\x00\xdb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x01\x45\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x00\x8d\x03\x8a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x81\x03\x7e\x03\x75\x03\x72\x03\x69\x03\x66\x03\x5d\x03\x5a\x03\x51\x03\x4e\x03\x45\x03\x42\x03\x39\x03\x36\x03\x2d\x03\x2a\x03\xd8\x00\x43\x01\x41\x01\x00\x00\xee\x02\x00\x00\xc5\x00\xda\x02\xa4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x03\x00\x00\x00\x00\x00\x00\x76\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x61\x00\x59\x00\x00\x00\x00\x00\x15\x03\x5f\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\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\xc3\x02\xf2\xff\x1e\x03\x11\x03\x1b\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x1c\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\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\xc0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x00\x14\x00\x00\x00\x00\x00\xfd\x00\xd5\x00\x00\x00\x00\x00\x00\x00\xf4\xff\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\x00\x00\x00\x00\x00\xf9\xff\x00\x00\x00\x00\x00\x00\xf5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# - -happyDefActions :: HappyAddr -happyDefActions = HappyA# "\xfe\xff\x00\x00\x00\x00\xfe\xff\xfb\xff\xfc\xff\xeb\xff\xfa\xff\x00\x00\x68\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x69\xff\x67\xff\x66\xff\x65\xff\x64\xff\x63\xff\x62\xff\x61\xff\x60\xff\x5f\xff\xe7\xff\x00\x00\xda\xff\xd8\xff\x00\x00\x00\x00\x00\x00\xd6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x71\xff\xea\xff\xfd\xff\x00\x00\x6f\xff\xdd\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdb\xff\x00\x00\xd7\xff\x00\x00\xdc\xff\xd9\xff\xf6\xff\x00\x00\xd5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6e\xff\x6c\xff\x00\x00\xec\xff\xe9\xff\xe0\xff\x00\x00\xe0\xff\xe0\xff\x00\x00\x00\x00\x00\x00\xd4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb0\xff\x00\x00\x72\xff\x73\xff\x6a\xff\x6d\xff\x70\xff\xee\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf7\xff\x00\x00\xf6\xff\x00\x00\x68\xff\x00\x00\x69\xff\x00\x00\x00\x00\x00\x00\x00\x00\x91\xff\x8d\xff\x00\x00\xf3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x7c\xff\x7d\xff\x8e\xff\x89\xff\x89\xff\xf5\xff\xf8\xff\x00\x00\x00\x00\x00\x00\xe2\xff\x6f\xff\x00\x00\x00\x00\x00\x00\x6b\xff\xd3\xff\x81\xff\x81\xff\x00\x00\x00\x00\x81\xff\x00\x00\x00\x00\x00\x00\x00\x00\xbe\xff\xbd\xff\x00\x00\x00\x00\x00\x00\x00\x00\x79\xff\x76\xff\x00\x00\x74\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\xff\xdf\xff\xe8\xff\x00\x00\x00\x00\x00\x00\x00\x00\x75\xff\x00\x00\x78\xff\x00\x00\xcc\xff\xba\xff\x00\x00\xbe\xff\xbd\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\xe0\xff\x00\x00\x00\x00\x00\x00\x81\xff\x00\x00\x00\x00\x81\xff\x00\x00\x7f\xff\x00\x00\x80\xff\x00\x00\x00\x00\x00\x00\x00\x00\xee\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8f\xff\x00\x00\x90\xff\x93\xff\x00\x00\x94\xff\x00\x00\x00\x00\x00\x00\xf4\xff\x00\x00\xee\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\xff\x81\xff\x88\xff\x00\x00\x00\x00\x00\x00\xe1\xff\x00\x00\xf9\xff\xed\xff\x00\x00\x00\x00\xaf\xff\x00\x00\x00\x00\x00\x00\x00\x00\x73\xff\x00\x00\x00\x00\xb6\xff\x00\x00\xb3\xff\xca\xff\x00\x00\xc5\xff\xbb\xff\xbc\xff\x00\x00\x96\xff\x95\xff\x98\xff\x9a\xff\x9e\xff\x9f\xff\x97\xff\x99\xff\x9b\xff\x9c\xff\x9d\xff\xa0\xff\xa1\xff\xa2\xff\xa3\xff\xa4\xff\xb9\xff\x7a\xff\x77\xff\x00\x00\x00\x00\xd2\xff\x00\x00\xc1\xff\x00\x00\x81\xff\x87\xff\x00\x00\x00\x00\xa6\xff\x00\x00\x00\x00\xb5\xff\xb4\xff\x00\x00\xc2\xff\x7e\xff\xcb\xff\x00\x00\xa7\xff\xaf\xff\x00\x00\xc3\xff\xce\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\xff\x00\x00\xf0\xff\xef\xff\xf2\xff\xf1\xff\x92\xff\x8b\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaa\xff\xae\xff\x00\x00\x00\x00\xb1\xff\xc9\xff\x81\xff\xb2\xff\xc7\xff\xc4\xff\x00\x00\x00\x00\x00\x00\x83\xff\x00\x00\x86\xff\x85\xff\x00\x00\x00\x00\x00\x00\xb8\xff\x82\xff\xd1\xff\x81\xff\xe0\xff\x00\x00\x00\x00\xcd\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\xff\x00\x00\x00\x00\x00\x00\xad\xff\xe0\xff\x00\x00\xa9\xff\xe0\xff\x00\x00\x00\x00\x00\x00\xc0\xff\xb7\xff\x84\xff\xcf\xff\x00\x00\x00\x00\x00\x00\xa5\xff\xc8\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xff\xac\xff\xab\xff\xa8\xff\xc6\xff\xbf\xff\xd0\xff\x00\x00\x00\x00\xe4\xff\xe5\xff"# - -happyCheck :: HappyAddr -happyCheck = HappyA# "\xff\xff\x02\x00\x04\x00\x05\x00\x0b\x00\x0c\x00\x07\x00\x12\x00\x06\x00\x10\x00\x0b\x00\x03\x00\x06\x00\x0e\x00\x0f\x00\x03\x00\x1c\x00\x1f\x00\x20\x00\x0d\x00\x22\x00\x23\x00\x24\x00\x01\x00\x08\x00\x27\x00\x02\x00\x17\x00\x30\x00\x07\x00\x32\x00\x07\x00\x1b\x00\x28\x00\x02\x00\x31\x00\x32\x00\x2c\x00\x16\x00\x07\x00\x05\x00\x15\x00\x31\x00\x32\x00\x20\x00\x21\x00\x1c\x00\x31\x00\x32\x00\x0c\x00\x0d\x00\x0e\x00\x2c\x00\x19\x00\x1a\x00\x1d\x00\x2c\x00\x1e\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x29\x00\x48\x00\x45\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x07\x00\x32\x00\x33\x00\x34\x00\x0b\x00\x36\x00\x37\x00\x0e\x00\x0f\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x07\x00\x09\x00\x46\x00\x09\x00\x0b\x00\x04\x00\x05\x00\x0e\x00\x0f\x00\x1f\x00\x20\x00\x19\x00\x1a\x00\x23\x00\x24\x00\x07\x00\x17\x00\x27\x00\x29\x00\x2a\x00\x2b\x00\x06\x00\x0e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x31\x00\x32\x00\x06\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x31\x00\x32\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x31\x00\x32\x00\x0d\x00\x0e\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x00\x00\x01\x00\x02\x00\x2c\x00\x00\x00\x01\x00\x02\x00\x07\x00\x0b\x00\x0c\x00\x0a\x00\x07\x00\x0c\x00\x10\x00\x0a\x00\x17\x00\x0c\x00\x20\x00\x21\x00\x0b\x00\x0c\x00\x2b\x00\x0b\x00\x0c\x00\x10\x00\x20\x00\x11\x00\x10\x00\x0d\x00\x0e\x00\x0b\x00\x0c\x00\x27\x00\x0b\x00\x0c\x00\x10\x00\x16\x00\x28\x00\x10\x00\x47\x00\x21\x00\x2c\x00\x31\x00\x32\x00\x02\x00\x03\x00\x31\x00\x32\x00\x28\x00\x31\x00\x32\x00\x28\x00\x2c\x00\x31\x00\x32\x00\x2c\x00\x21\x00\x31\x00\x32\x00\x28\x00\x31\x00\x32\x00\x28\x00\x2c\x00\x45\x00\x46\x00\x2c\x00\x06\x00\x31\x00\x32\x00\x18\x00\x31\x00\x32\x00\x0b\x00\x0c\x00\x29\x00\x2a\x00\x2b\x00\x10\x00\x1f\x00\x20\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x25\x00\x26\x00\x27\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x0f\x00\x29\x00\x2a\x00\x31\x00\x32\x00\x03\x00\x22\x00\x0f\x00\x28\x00\x20\x00\x21\x00\x2d\x00\x2c\x00\x09\x00\x36\x00\x46\x00\x47\x00\x31\x00\x32\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x0f\x00\x46\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x13\x00\x14\x00\x13\x00\x14\x00\x13\x00\x14\x00\x13\x00\x14\x00\x46\x00\x47\x00\x46\x00\x47\x00\x1f\x00\x20\x00\x1f\x00\x20\x00\x1f\x00\x20\x00\x1f\x00\x20\x00\x27\x00\x0f\x00\x27\x00\x08\x00\x27\x00\x08\x00\x27\x00\x13\x00\x14\x00\x08\x00\x31\x00\x32\x00\x31\x00\x32\x00\x31\x00\x32\x00\x31\x00\x32\x00\x48\x00\x1f\x00\x20\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x27\x00\x47\x00\x02\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x1a\x00\x1b\x00\x31\x00\x32\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x02\x00\x02\x00\x03\x00\x16\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x02\x00\x08\x00\x16\x00\x04\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x04\x00\x03\x00\x02\x00\x02\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x35\x00\x02\x00\x08\x00\x31\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x05\x00\x04\x00\x07\x00\x02\x00\x46\x00\x16\x00\x47\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x47\x00\x47\x00\x08\x00\x16\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x06\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x03\x00\x16\x00\x48\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x06\x00\x02\x00\x16\x00\x47\x00\x08\x00\x08\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x03\x00\x01\x00\x04\x00\x01\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x07\x00\x16\x00\x47\x00\x08\x00\x47\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x39\x00\x48\x00\x47\x00\x16\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x07\x00\x16\x00\x16\x00\x16\x00\x48\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x38\x00\x06\x00\x02\x00\x45\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x08\x00\x28\x00\x07\x00\x07\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x09\x00\x2e\x00\x04\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x09\x00\x20\x00\x16\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x06\x00\x06\x00\x02\x00\x38\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x08\x00\x48\x00\x02\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x48\x00\x48\x00\x48\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x47\x00\x0a\x00\x02\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x02\x00\x02\x00\x06\x00\x47\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x06\x00\x25\x00\x26\x00\x27\x00\x25\x00\x26\x00\x27\x00\x46\x00\x07\x00\x02\x00\x16\x00\x16\x00\x08\x00\x31\x00\x32\x00\x16\x00\x31\x00\x32\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x08\x00\x25\x00\x26\x00\x27\x00\x25\x00\x26\x00\x27\x00\x08\x00\x08\x00\x18\x00\x02\x00\x08\x00\x0e\x00\x31\x00\x32\x00\x46\x00\x31\x00\x32\x00\x1f\x00\x20\x00\x09\x00\x1f\x00\x20\x00\x09\x00\x25\x00\x26\x00\x27\x00\x25\x00\x26\x00\x27\x00\x47\x00\x08\x00\x46\x00\x46\x00\x16\x00\x08\x00\x31\x00\x32\x00\x46\x00\x31\x00\x32\x00\x1f\x00\x20\x00\x02\x00\x1f\x00\x20\x00\x48\x00\x25\x00\x26\x00\x27\x00\x25\x00\x26\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x08\x00\x1f\x00\x20\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x26\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x1f\x00\x20\x00\x31\x00\x32\x00\x48\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x19\x00\x1f\x00\x20\x00\x05\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x1f\x00\x20\x00\x46\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x0a\x00\x1f\x00\x20\x00\x46\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x1f\x00\x20\x00\x05\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x07\x00\x1f\x00\x20\x00\x05\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x04\x00\x1f\x00\x20\x00\x05\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x16\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x16\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x07\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x07\x00\x1f\x00\x20\x00\x04\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x16\x00\x1f\x00\x20\x00\x08\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x1f\x00\x20\x00\x09\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x48\x00\x1f\x00\x20\x00\x46\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x27\x00\x1f\x00\x20\x00\x46\x00\x48\x00\x46\x00\x01\x00\x31\x00\x32\x00\x27\x00\x31\x00\x32\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x31\x00\x32\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x1a\x00\x1b\x00\x48\x00\x48\x00\x46\x00\x07\x00\x16\x00\x46\x00\x16\x00\x1a\x00\x1b\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x16\x00\x46\x00\x47\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x16\x00\x16\x00\x16\x00\x02\x00\x46\x00\x46\x00\x46\x00\x46\x00\x46\x00\x46\x00\x16\x00\x02\x00\x46\x00\x03\x00\x16\x00\x02\x00\xff\xff\x47\x00\x46\x00\x07\x00\x34\x00\x07\x00\x07\x00\x07\x00\x07\x00\x07\x00\x46\x00\x4a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"# - -happyTable :: HappyAddr -happyTable = HappyA# "\x00\x00\x79\x00\x82\x00\x6c\x00\x83\x01\x50\x00\x7a\x00\x7e\x01\xea\x00\x51\x00\x7b\x00\x74\x01\x06\x01\x7c\x00\x7d\x00\xc7\x00\x75\x01\x59\x01\x75\x00\x07\x01\x5a\x01\x5b\x01\x5c\x01\x8e\x00\x88\x00\x76\x00\x52\x01\x53\x01\xa5\x00\x8f\x00\xa6\x00\x53\x01\x72\x01\x52\x00\x56\x00\x77\x00\x09\x00\x53\x00\x89\x00\x57\x00\xa3\x00\x7a\x01\x54\x00\x09\x00\xc8\x00\xc9\x00\x4b\x01\x6d\x00\x6e\x00\xb7\x00\xb8\x00\xb9\x00\x75\x01\x4d\x01\x36\x01\x4e\x01\xca\x00\x55\x01\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x11\x00\xeb\x00\x08\x01\x58\x00\x59\x00\x5a\x00\x5b\x00\x7b\xff\x7a\x00\x7b\xff\x5c\x00\x5d\x00\x7b\x00\x13\x00\x5e\x00\x7c\x00\x7d\x00\x5f\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x60\x00\x61\x00\x9a\x00\x31\x01\x25\x00\x38\x01\x7b\x00\x6b\x00\x6c\x00\x7c\x00\x7d\x00\x59\x01\x75\x00\x35\x01\x36\x01\x7c\x01\x5c\x01\x7a\x00\x9b\x00\x76\x00\x20\x01\x9d\x00\x9e\x00\xed\x00\x7c\x00\x8c\x00\x4a\x00\x4b\x00\x09\x00\x77\x00\x09\x00\xfa\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\xd9\x00\x49\x00\x4a\x00\x4b\x00\x09\x00\x6d\x00\x6e\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x7e\x00\x7f\x00\x80\x00\x81\x00\x82\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xf3\x00\x09\x00\x3e\x00\x1f\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\x2e\x00\x03\x00\x04\x00\x01\x01\x02\x00\x03\x00\x04\x00\x05\x00\x85\x01\x50\x00\x06\x00\x05\x00\x07\x00\x51\x00\x06\x00\x04\x01\x07\x00\xc8\x00\xc9\x00\x78\x01\x50\x00\xad\x00\x0d\x01\x50\x00\x51\x00\x45\x01\x24\x01\x51\x00\x1e\x00\x1f\x00\xa6\x00\x50\x00\x76\x00\xa7\x00\x50\x00\x51\x00\xcb\x00\x52\x00\x51\x00\x62\x01\xdd\x00\x53\x00\x77\x00\x09\x00\x4e\x00\x4f\x00\x54\x00\x09\x00\x52\x00\x08\x00\x09\x00\x52\x00\x53\x00\x08\x00\x09\x00\x53\x00\xdf\x00\x54\x00\x09\x00\x52\x00\x54\x00\x09\x00\x52\x00\x53\x00\x60\x00\x03\x01\x53\x00\x8a\x00\x54\x00\x09\x00\x90\x00\x54\x00\x09\x00\x4f\x00\x50\x00\x9c\x00\x9d\x00\x9e\x00\x51\x00\xcf\x00\x75\x00\x9f\x00\x4a\x00\x4b\x00\x09\x00\x79\x01\xd1\x00\x76\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x2b\x00\x11\x00\x12\x00\x77\x00\x09\x00\x3f\x00\x70\x00\x41\x00\x52\x00\xc8\x00\xc9\x00\x2f\x00\x53\x00\x4c\x00\x13\x00\xa1\x00\xa2\x00\x54\x00\x09\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x23\x00\x1e\x00\x71\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x0b\x01\x97\x00\x0c\x01\x97\x00\xb2\x00\x97\x00\xb3\x00\xb4\x00\x21\x00\x22\x00\x21\x00\x22\x00\x98\x00\x75\x00\x98\x00\x75\x00\x98\x00\x75\x00\xb5\x00\x75\x00\x76\x00\x2b\x00\x76\x00\x2c\x00\x76\x00\x95\x01\x76\x00\x96\x00\x97\x00\x96\x01\x77\x00\x09\x00\x77\x00\x09\x00\x77\x00\x09\x00\x77\x00\x09\x00\x93\x01\x98\x00\x75\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\x76\x00\x94\x01\x63\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x09\x00\xc1\x00\xc2\x00\x77\x00\x09\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x24\x01\x4e\x00\x4f\x00\x8a\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xe7\x00\x8c\x01\x8b\x01\x8d\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x8f\x01\xfe\x00\x8e\x01\x90\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x91\x01\x92\x01\x81\x01\x80\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xcd\x00\x82\x01\xce\x00\x83\x01\x85\x01\x70\x01\x87\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x88\x01\x89\x01\x6f\x01\x71\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\x40\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x77\x01\x72\x01\x4d\x01\x78\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\x23\x01\x7e\x01\x60\x01\x7c\x01\x5f\x01\x61\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x65\x01\x67\x01\x68\x01\x6a\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\x64\x01\x69\x01\x6b\x01\x47\x01\x6c\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x50\x01\x6d\x01\x6e\x01\x48\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xcb\x00\x49\x01\x4a\x01\x4b\x01\x4d\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x38\x01\x51\x01\x55\x01\x08\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xf2\x00\x57\x01\x28\x01\x29\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x2a\x01\x2b\x01\x2c\x01\x2d\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xcf\x00\xc8\x00\x2e\x01\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x2f\x01\x30\x01\x34\x01\x38\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x8c\x00\x31\x01\x35\x01\x3a\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x01\x01\x3b\x01\x3c\x01\x3d\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\x00\x00\x00\x00\x3e\x01\x41\x01\x42\x01\x43\x01\xc1\x00\xc2\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\x44\x01\x45\x01\xec\x00\xed\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xcf\x00\x75\x00\x8c\x00\xcf\x00\x75\x00\xef\x00\x65\x01\xd1\x00\x76\x00\x5d\x01\xd1\x00\x76\x00\xf0\x00\xf3\x00\xfa\x00\xf5\x00\xf6\x00\xf8\x00\x77\x00\x09\x00\xf7\x00\x77\x00\x09\x00\xcf\x00\x75\x00\xf9\x00\xcf\x00\x75\x00\xfc\x00\x3e\x01\xd1\x00\x76\x00\x03\x01\xd1\x00\x76\x00\xfd\x00\x00\x01\xff\x00\x09\x01\x1f\x01\xaa\x00\x77\x00\x09\x00\x0b\x01\x77\x00\x09\x00\xcf\x00\x75\x00\x20\x01\xcf\x00\x75\x00\x22\x01\x09\x01\xd1\x00\x76\x00\xd0\x00\xd1\x00\x76\x00\xab\x00\xaf\x00\x26\x01\x27\x01\xb0\x00\xb1\x00\x77\x00\x09\x00\xa1\x00\x77\x00\x09\x00\xcf\x00\x75\x00\xb2\x00\xcf\x00\x75\x00\xd3\x00\xd4\x00\xd1\x00\x76\x00\xd5\x00\xd1\x00\x76\x00\x57\x01\x75\x00\xd9\x00\xd8\x00\xcf\x00\x75\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x32\x01\x76\x00\x58\x01\x75\x00\xdb\x00\xf0\x00\x75\x00\x77\x00\x09\x00\xdc\x00\x76\x00\x77\x00\x09\x00\x76\x00\x0e\x01\x75\x00\xdf\x00\x0f\x01\x75\x00\xe5\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x10\x01\x75\x00\xdd\x00\x11\x01\x75\x00\xe2\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x12\x01\x75\x00\xe6\x00\x13\x01\x75\x00\xe9\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x14\x01\x75\x00\xe8\x00\x15\x01\x75\x00\x72\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x16\x01\x75\x00\x73\x00\x17\x01\x75\x00\x74\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x18\x01\x75\x00\x84\x00\x19\x01\x75\x00\x92\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x1a\x01\x75\x00\x85\x00\x1b\x01\x75\x00\x86\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x1c\x01\x75\x00\x87\x00\x1d\x01\x75\x00\x8a\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\xab\x00\x75\x00\x8c\x00\xac\x00\x75\x00\x90\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\xd3\x00\x75\x00\x93\x00\xd6\x00\x75\x00\xa9\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\xe0\x00\x75\x00\x63\x00\xe2\x00\x75\x00\x64\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\xe3\x00\x75\x00\x66\x00\x74\x00\x75\x00\xa4\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x93\x00\x75\x00\x67\x00\x94\x00\x75\x00\x9c\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\x76\x00\x95\x00\x75\x00\x62\x00\x68\x00\x65\x00\x6b\x00\x77\x00\x09\x00\x76\x00\x77\x00\x09\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\x77\x00\x09\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xc1\x00\xc2\x00\x69\x00\x6a\x00\x41\x00\x31\x00\x43\x00\x25\x00\x44\x00\xc1\x00\xc2\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x45\x00\xa1\x00\xa2\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x46\x00\x47\x00\x48\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3c\x00\x3b\x00\x3d\x00\x3e\x00\x00\x00\x23\x00\x25\x00\x26\x00\x2e\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x25\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"# - -happyReduceArr = Happy_Data_Array.array (1, 160) [ - (1 , happyReduce_1), - (2 , happyReduce_2), - (3 , happyReduce_3), - (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) - ] +data HappyAbsSyn + = HappyTerminal (Located CmmToken) + | HappyErrorToken Int + | HappyAbsSyn4 (CmmParse ()) + | HappyAbsSyn7 (CmmParse CLabel) + | HappyAbsSyn8 ([CmmParse [CmmStatic]]) + | HappyAbsSyn9 (CmmParse [CmmStatic]) + | HappyAbsSyn10 ([CmmParse CmmExpr]) + | HappyAbsSyn12 (Convention) + | HappyAbsSyn14 (CmmParse (CLabel, Maybe CmmInfoTable, [LocalReg])) + | HappyAbsSyn17 ([(FastString, CLabel)]) + | HappyAbsSyn18 ((FastString, CLabel)) + | HappyAbsSyn19 ([FastString]) + | HappyAbsSyn21 (CmmParse CmmExpr) + | HappyAbsSyn22 (CmmReturnInfo) + | HappyAbsSyn23 (CmmParse BoolExpr) + | HappyAbsSyn25 (Safety) + | HappyAbsSyn26 ([GlobalReg]) + | HappyAbsSyn28 (Maybe (Int,Int)) + | HappyAbsSyn29 ([CmmParse ([Int],Either BlockId (CmmParse ()))]) + | HappyAbsSyn30 (CmmParse ([Int],Either BlockId (CmmParse ()))) + | HappyAbsSyn31 (CmmParse (Either BlockId (CmmParse ()))) + | HappyAbsSyn32 ([Int]) + | HappyAbsSyn33 (Maybe (CmmParse ())) + | HappyAbsSyn37 (CmmType) + | HappyAbsSyn38 ([CmmParse (CmmExpr, ForeignHint)]) + | HappyAbsSyn40 (CmmParse (CmmExpr, ForeignHint)) + | HappyAbsSyn44 ([CmmParse (LocalReg, ForeignHint)]) + | HappyAbsSyn46 (CmmParse (LocalReg, ForeignHint)) + | HappyAbsSyn47 (CmmParse LocalReg) + | HappyAbsSyn48 (CmmParse CmmReg) + | HappyAbsSyn49 (Maybe [CmmParse LocalReg]) + | HappyAbsSyn50 ([CmmParse LocalReg]) + +{- to allow type-synonyms as our monads (likely + - with explicitly-specified bind and return) + - in Haskell98, it seems that with + - /type M a = .../, then /(HappyReduction M)/ + - is not allowed. But Happy is a + - code-generator that can just substitute it. +type HappyReduction m = + Int + -> (Located CmmToken) + -> HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> m HappyAbsSyn) + -> [HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> m HappyAbsSyn)] + -> HappyStk HappyAbsSyn + -> 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 :: () => Int -> ({-HappyReduction (P) = -} + Int + -> (Located CmmToken) + -> HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn) + -> [HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] + -> HappyStk HappyAbsSyn + -> (P) HappyAbsSyn) + +happyReduce_1, + happyReduce_2, + happyReduce_3, + happyReduce_4, + 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 :: () => ({-HappyReduction (P) = -} + Int + -> (Located CmmToken) + -> HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn) + -> [HappyState (Located CmmToken) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] + -> HappyStk HappyAbsSyn + -> (P) HappyAbsSyn) + +action_0 (88) = happyShift action_10 +action_0 (89) = happyShift action_11 +action_0 (90) = happyShift action_12 +action_0 (91) = happyShift action_13 +action_0 (92) = happyShift action_14 +action_0 (93) = happyShift action_15 +action_0 (95) = happyShift action_16 +action_0 (96) = happyShift action_17 +action_0 (108) = happyShift action_18 +action_0 (113) = happyShift action_19 +action_0 (114) = happyShift action_20 +action_0 (115) = happyShift action_21 +action_0 (116) = happyShift action_22 +action_0 (117) = happyShift action_23 +action_0 (118) = happyShift action_24 +action_0 (119) = happyShift action_25 +action_0 (120) = happyShift action_26 +action_0 (121) = happyShift action_27 +action_0 (122) = happyShift action_28 +action_0 (124) = happyShift action_29 +action_0 (4) = happyGoto action_2 +action_0 (5) = happyGoto action_3 +action_0 (6) = happyGoto action_4 +action_0 (11) = happyGoto action_5 +action_0 (14) = happyGoto action_6 +action_0 (16) = happyGoto action_7 +action_0 (53) = happyGoto action_8 +action_0 (54) = happyGoto action_9 +action_0 _ = happyReduce_1 + +action_1 _ = happyFail + +action_2 (128) = happyAccept +action_2 _ = happyFail + +action_3 (88) = happyShift action_10 +action_3 (89) = happyShift action_11 +action_3 (90) = happyShift action_12 +action_3 (91) = happyShift action_13 +action_3 (92) = happyShift action_14 +action_3 (93) = happyShift action_15 +action_3 (95) = happyShift action_16 +action_3 (96) = happyShift action_17 +action_3 (108) = happyShift action_18 +action_3 (113) = happyShift action_19 +action_3 (114) = happyShift action_20 +action_3 (115) = happyShift action_21 +action_3 (116) = happyShift action_22 +action_3 (117) = happyShift action_23 +action_3 (118) = happyShift action_24 +action_3 (119) = happyShift action_25 +action_3 (120) = happyShift action_26 +action_3 (121) = happyShift action_27 +action_3 (122) = happyShift action_28 +action_3 (124) = happyShift action_29 +action_3 (4) = happyGoto action_47 +action_3 (5) = happyGoto action_3 +action_3 (6) = happyGoto action_4 +action_3 (11) = happyGoto action_5 +action_3 (14) = happyGoto action_6 +action_3 (16) = happyGoto action_7 +action_3 (53) = happyGoto action_8 +action_3 (54) = happyGoto action_9 +action_3 _ = happyReduce_1 + +action_4 _ = happyReduce_4 + +action_5 _ = happyReduce_3 + +action_6 (106) = happyShift action_46 +action_6 (12) = happyGoto action_45 +action_6 _ = happyReduce_20 + +action_7 _ = happyReduce_5 + +action_8 (124) = happyShift action_37 +action_8 (19) = happyGoto action_44 +action_8 _ = happyFail + +action_9 _ = happyReduce_152 + +action_10 (61) = happyShift action_43 +action_10 _ = happyFail + +action_11 (61) = happyShift action_42 +action_11 _ = happyFail + +action_12 (61) = happyShift action_41 +action_12 _ = happyFail + +action_13 (61) = happyShift action_40 +action_13 _ = happyFail + +action_14 (61) = happyShift action_39 +action_14 _ = happyFail + +action_15 (61) = happyShift action_38 +action_15 _ = happyFail + +action_16 (124) = happyShift action_37 +action_16 (19) = happyGoto action_36 +action_16 _ = happyFail + +action_17 (125) = happyShift action_35 +action_17 _ = happyFail + +action_18 (88) = happyShift action_32 +action_18 (124) = happyShift action_33 +action_18 (125) = happyShift action_34 +action_18 (17) = happyGoto action_30 +action_18 (18) = happyGoto action_31 +action_18 _ = happyFail + +action_19 _ = happyReduce_151 + +action_20 _ = happyReduce_153 + +action_21 _ = happyReduce_154 + +action_22 _ = happyReduce_155 + +action_23 _ = happyReduce_156 + +action_24 _ = happyReduce_157 + +action_25 _ = happyReduce_158 + +action_26 _ = happyReduce_159 + +action_27 _ = happyReduce_160 + +action_28 _ = happyReduce_161 + +action_29 _ = happyReduce_24 + +action_30 (56) = happyShift action_63 +action_30 _ = happyFail + +action_31 (76) = happyShift action_62 +action_31 _ = happyReduce_37 + +action_32 (124) = happyShift action_61 +action_32 _ = happyFail + +action_33 _ = happyReduce_39 + +action_34 (124) = happyShift action_60 +action_34 _ = happyFail + +action_35 (57) = happyShift action_59 +action_35 _ = happyFail + +action_36 (56) = happyShift action_58 +action_36 _ = happyFail + +action_37 (76) = happyShift action_57 +action_37 _ = happyReduce_42 + +action_38 (124) = happyShift action_56 +action_38 _ = happyFail + +action_39 (124) = happyShift action_55 +action_39 _ = happyFail + +action_40 (124) = happyShift action_54 +action_40 _ = happyFail + +action_41 (124) = happyShift action_53 +action_41 _ = happyFail + +action_42 (124) = happyShift action_52 +action_42 _ = happyFail + +action_43 (124) = happyShift action_51 +action_43 _ = happyFail + +action_44 (56) = happyShift action_50 +action_44 _ = happyFail + +action_45 (61) = happyShift action_49 +action_45 (49) = happyGoto action_48 +action_45 _ = happyReduce_143 + +action_46 _ = happyReduce_21 + +action_47 _ = happyReduce_2 + +action_48 (56) = happyShift action_79 +action_48 (57) = happyShift action_80 +action_48 (13) = happyGoto action_78 +action_48 _ = happyFail + +action_49 (113) = happyShift action_19 +action_49 (114) = happyShift action_20 +action_49 (115) = happyShift action_21 +action_49 (116) = happyShift action_22 +action_49 (117) = happyShift action_23 +action_49 (118) = happyShift action_24 +action_49 (119) = happyShift action_25 +action_49 (120) = happyShift action_26 +action_49 (121) = happyShift action_27 +action_49 (122) = happyShift action_28 +action_49 (50) = happyGoto action_74 +action_49 (51) = happyGoto action_75 +action_49 (52) = happyGoto action_76 +action_49 (53) = happyGoto action_77 +action_49 (54) = happyGoto action_9 +action_49 _ = happyReduce_145 + +action_50 _ = happyReduce_34 + +action_51 (76) = happyShift action_73 +action_51 _ = happyFail + +action_52 (76) = happyShift action_72 +action_52 _ = happyFail + +action_53 (76) = happyShift action_71 +action_53 _ = happyFail + +action_54 (76) = happyShift action_70 +action_54 _ = happyFail + +action_55 (76) = happyShift action_69 +action_55 _ = happyFail + +action_56 (76) = happyShift action_68 +action_56 _ = happyFail + +action_57 (124) = happyShift action_37 +action_57 (19) = happyGoto action_67 +action_57 _ = happyFail + +action_58 _ = happyReduce_36 + +action_59 (124) = happyShift action_66 +action_59 (7) = happyGoto action_65 +action_59 _ = happyFail + +action_60 _ = happyReduce_41 + +action_61 _ = happyReduce_40 + +action_62 (88) = happyShift action_32 +action_62 (124) = happyShift action_33 +action_62 (125) = happyShift action_34 +action_62 (17) = happyGoto action_64 +action_62 (18) = happyGoto action_31 +action_62 _ = happyFail + +action_63 _ = happyReduce_35 + +action_64 _ = happyReduce_38 + +action_65 (88) = happyShift action_113 +action_65 (113) = happyShift action_114 +action_65 (114) = happyShift action_20 +action_65 (115) = happyShift action_21 +action_65 (116) = happyShift action_22 +action_65 (117) = happyShift action_23 +action_65 (118) = happyShift action_24 +action_65 (119) = happyShift action_25 +action_65 (120) = happyShift action_26 +action_65 (121) = happyShift action_27 +action_65 (122) = happyShift action_28 +action_65 (8) = happyGoto action_109 +action_65 (9) = happyGoto action_110 +action_65 (53) = happyGoto action_111 +action_65 (54) = happyGoto action_112 +action_65 _ = happyReduce_9 + +action_66 (55) = happyShift action_108 +action_66 _ = happyFail + +action_67 _ = happyReduce_43 + +action_68 (126) = happyShift action_107 +action_68 _ = happyFail + +action_69 (126) = happyShift action_106 +action_69 _ = happyFail + +action_70 (126) = happyShift action_105 +action_70 _ = happyFail + +action_71 (126) = happyShift action_104 +action_71 _ = happyFail + +action_72 (126) = happyShift action_103 +action_72 _ = happyFail + +action_73 (124) = happyShift action_102 +action_73 _ = happyFail + +action_74 (62) = happyShift action_101 +action_74 _ = happyFail + +action_75 _ = happyReduce_146 + +action_76 (76) = happyShift action_100 +action_76 _ = happyReduce_148 + +action_77 (124) = happyShift action_99 +action_77 _ = happyFail + +action_78 _ = happyReduce_19 + +action_79 _ = happyReduce_22 + +action_80 (56) = happyShift action_87 +action_80 (61) = happyShift action_88 +action_80 (95) = happyShift action_16 +action_80 (98) = happyShift action_89 +action_80 (99) = happyShift action_90 +action_80 (100) = happyShift action_91 +action_80 (101) = happyShift action_92 +action_80 (102) = happyReduce_133 +action_80 (104) = happyReduce_133 +action_80 (105) = happyShift action_93 +action_80 (106) = happyShift action_94 +action_80 (108) = happyShift action_18 +action_80 (109) = happyShift action_95 +action_80 (112) = happyShift action_96 +action_80 (113) = happyShift action_19 +action_80 (114) = happyShift action_20 +action_80 (115) = happyShift action_21 +action_80 (116) = happyShift action_22 +action_80 (117) = happyShift action_23 +action_80 (118) = happyShift action_24 +action_80 (119) = happyShift action_25 +action_80 (120) = happyShift action_26 +action_80 (121) = happyShift action_27 +action_80 (122) = happyShift action_28 +action_80 (123) = happyShift action_97 +action_80 (124) = happyShift action_98 +action_80 (15) = happyGoto action_81 +action_80 (16) = happyGoto action_82 +action_80 (20) = happyGoto action_83 +action_80 (44) = happyGoto action_84 +action_80 (48) = happyGoto action_85 +action_80 (53) = happyGoto action_86 +action_80 (54) = happyGoto action_9 +action_80 _ = happyReduce_31 + +action_81 (58) = happyShift action_170 +action_81 _ = happyFail + +action_82 (56) = happyShift action_87 +action_82 (61) = happyShift action_88 +action_82 (95) = happyShift action_16 +action_82 (98) = happyShift action_89 +action_82 (99) = happyShift action_90 +action_82 (100) = happyShift action_91 +action_82 (101) = happyShift action_92 +action_82 (102) = happyReduce_133 +action_82 (104) = happyReduce_133 +action_82 (105) = happyShift action_93 +action_82 (106) = happyShift action_94 +action_82 (108) = happyShift action_18 +action_82 (109) = happyShift action_95 +action_82 (112) = happyShift action_96 +action_82 (113) = happyShift action_19 +action_82 (114) = happyShift action_20 +action_82 (115) = happyShift action_21 +action_82 (116) = happyShift action_22 +action_82 (117) = happyShift action_23 +action_82 (118) = happyShift action_24 +action_82 (119) = happyShift action_25 +action_82 (120) = happyShift action_26 +action_82 (121) = happyShift action_27 +action_82 (122) = happyShift action_28 +action_82 (123) = happyShift action_97 +action_82 (124) = happyShift action_98 +action_82 (15) = happyGoto action_169 +action_82 (16) = happyGoto action_82 +action_82 (20) = happyGoto action_83 +action_82 (44) = happyGoto action_84 +action_82 (48) = happyGoto action_85 +action_82 (53) = happyGoto action_86 +action_82 (54) = happyGoto action_9 +action_82 _ = happyReduce_31 + +action_83 (56) = happyShift action_87 +action_83 (61) = happyShift action_88 +action_83 (95) = happyShift action_16 +action_83 (98) = happyShift action_89 +action_83 (99) = happyShift action_90 +action_83 (100) = happyShift action_91 +action_83 (101) = happyShift action_92 +action_83 (102) = happyReduce_133 +action_83 (104) = happyReduce_133 +action_83 (105) = happyShift action_93 +action_83 (106) = happyShift action_94 +action_83 (108) = happyShift action_18 +action_83 (109) = happyShift action_95 +action_83 (112) = happyShift action_96 +action_83 (113) = happyShift action_19 +action_83 (114) = happyShift action_20 +action_83 (115) = happyShift action_21 +action_83 (116) = happyShift action_22 +action_83 (117) = happyShift action_23 +action_83 (118) = happyShift action_24 +action_83 (119) = happyShift action_25 +action_83 (120) = happyShift action_26 +action_83 (121) = happyShift action_27 +action_83 (122) = happyShift action_28 +action_83 (123) = happyShift action_97 +action_83 (124) = happyShift action_98 +action_83 (15) = happyGoto action_168 +action_83 (16) = happyGoto action_82 +action_83 (20) = happyGoto action_83 +action_83 (44) = happyGoto action_84 +action_83 (48) = happyGoto action_85 +action_83 (53) = happyGoto action_86 +action_83 (54) = happyGoto action_9 +action_83 _ = happyReduce_31 + +action_84 (102) = happyShift action_166 +action_84 (104) = happyShift action_167 +action_84 _ = happyFail + +action_85 (63) = happyShift action_165 +action_85 _ = happyFail + +action_86 (59) = happyShift action_164 +action_86 (124) = happyShift action_37 +action_86 (19) = happyGoto action_44 +action_86 _ = happyFail + +action_87 _ = happyReduce_44 + +action_88 (113) = happyShift action_19 +action_88 (114) = happyShift action_20 +action_88 (115) = happyShift action_21 +action_88 (116) = happyShift action_22 +action_88 (117) = happyShift action_23 +action_88 (118) = happyShift action_24 +action_88 (119) = happyShift action_25 +action_88 (120) = happyShift action_26 +action_88 (121) = happyShift action_27 +action_88 (122) = happyShift action_28 +action_88 (124) = happyShift action_162 +action_88 (125) = happyShift action_163 +action_88 (45) = happyGoto action_158 +action_88 (46) = happyGoto action_159 +action_88 (47) = happyGoto action_160 +action_88 (51) = happyGoto action_161 +action_88 (52) = happyGoto action_76 +action_88 (53) = happyGoto action_77 +action_88 (54) = happyGoto action_9 +action_88 _ = happyFail + +action_89 (124) = happyShift action_157 +action_89 _ = happyFail + +action_90 (61) = happyShift action_155 +action_90 (65) = happyShift action_124 +action_90 (68) = happyShift action_125 +action_90 (69) = happyShift action_126 +action_90 (77) = happyShift action_156 +action_90 (113) = happyShift action_19 +action_90 (114) = happyShift action_20 +action_90 (115) = happyShift action_21 +action_90 (116) = happyShift action_22 +action_90 (117) = happyShift action_23 +action_90 (118) = happyShift action_24 +action_90 (119) = happyShift action_25 +action_90 (120) = happyShift action_26 +action_90 (121) = happyShift action_27 +action_90 (122) = happyShift action_28 +action_90 (123) = happyShift action_127 +action_90 (124) = happyShift action_128 +action_90 (125) = happyShift action_129 +action_90 (126) = happyShift action_130 +action_90 (127) = happyShift action_131 +action_90 (23) = happyGoto action_152 +action_90 (24) = happyGoto action_153 +action_90 (35) = happyGoto action_154 +action_90 (36) = happyGoto action_119 +action_90 (43) = happyGoto action_120 +action_90 (53) = happyGoto action_121 +action_90 (54) = happyGoto action_9 +action_90 _ = happyFail + +action_91 (61) = happyShift action_123 +action_91 (65) = happyShift action_124 +action_91 (68) = happyShift action_125 +action_91 (69) = happyShift action_126 +action_91 (113) = happyShift action_19 +action_91 (114) = happyShift action_20 +action_91 (115) = happyShift action_21 +action_91 (116) = happyShift action_22 +action_91 (117) = happyShift action_23 +action_91 (118) = happyShift action_24 +action_91 (119) = happyShift action_25 +action_91 (120) = happyShift action_26 +action_91 (121) = happyShift action_27 +action_91 (122) = happyShift action_28 +action_91 (123) = happyShift action_127 +action_91 (124) = happyShift action_128 +action_91 (125) = happyShift action_129 +action_91 (126) = happyShift action_130 +action_91 (127) = happyShift action_131 +action_91 (35) = happyGoto action_151 +action_91 (36) = happyGoto action_119 +action_91 (43) = happyGoto action_120 +action_91 (53) = happyGoto action_121 +action_91 (54) = happyGoto action_9 +action_91 _ = happyFail + +action_92 (61) = happyShift action_123 +action_92 (65) = happyShift action_124 +action_92 (68) = happyShift action_125 +action_92 (69) = happyShift action_126 +action_92 (113) = happyShift action_19 +action_92 (114) = happyShift action_20 +action_92 (115) = happyShift action_21 +action_92 (116) = happyShift action_22 +action_92 (117) = happyShift action_23 +action_92 (118) = happyShift action_24 +action_92 (119) = happyShift action_25 +action_92 (120) = happyShift action_26 +action_92 (121) = happyShift action_27 +action_92 (122) = happyShift action_28 +action_92 (123) = happyShift action_127 +action_92 (124) = happyShift action_128 +action_92 (125) = happyShift action_129 +action_92 (126) = happyShift action_130 +action_92 (127) = happyShift action_131 +action_92 (35) = happyGoto action_150 +action_92 (36) = happyGoto action_119 +action_92 (43) = happyGoto action_120 +action_92 (53) = happyGoto action_121 +action_92 (54) = happyGoto action_9 +action_92 _ = happyFail + +action_93 (61) = happyShift action_123 +action_93 (65) = happyShift action_124 +action_93 (68) = happyShift action_125 +action_93 (69) = happyShift action_126 +action_93 (113) = happyShift action_19 +action_93 (114) = happyShift action_20 +action_93 (115) = happyShift action_21 +action_93 (116) = happyShift action_22 +action_93 (117) = happyShift action_23 +action_93 (118) = happyShift action_24 +action_93 (119) = happyShift action_25 +action_93 (120) = happyShift action_26 +action_93 (121) = happyShift action_27 +action_93 (122) = happyShift action_28 +action_93 (123) = happyShift action_127 +action_93 (124) = happyShift action_128 +action_93 (125) = happyShift action_129 +action_93 (126) = happyShift action_130 +action_93 (127) = happyShift action_131 +action_93 (35) = happyGoto action_149 +action_93 (36) = happyGoto action_119 +action_93 (43) = happyGoto action_120 +action_93 (53) = happyGoto action_121 +action_93 (54) = happyGoto action_9 +action_93 _ = happyFail + +action_94 (61) = happyShift action_148 +action_94 _ = happyFail + +action_95 (59) = happyShift action_147 +action_95 (28) = happyGoto action_146 +action_95 _ = happyReduce_80 + +action_96 (61) = happyShift action_145 +action_96 _ = happyFail + +action_97 _ = happyReduce_142 + +action_98 (55) = happyShift action_143 +action_98 (61) = happyShift action_144 +action_98 _ = happyReduce_141 + +action_99 _ = happyReduce_150 + +action_100 (113) = happyShift action_19 +action_100 (114) = happyShift action_20 +action_100 (115) = happyShift action_21 +action_100 (116) = happyShift action_22 +action_100 (117) = happyShift action_23 +action_100 (118) = happyShift action_24 +action_100 (119) = happyShift action_25 +action_100 (120) = happyShift action_26 +action_100 (121) = happyShift action_27 +action_100 (122) = happyShift action_28 +action_100 (51) = happyGoto action_142 +action_100 (52) = happyGoto action_76 +action_100 (53) = happyGoto action_77 +action_100 (54) = happyGoto action_9 +action_100 _ = happyReduce_147 + +action_101 _ = happyReduce_144 + +action_102 (76) = happyShift action_141 +action_102 (10) = happyGoto action_140 +action_102 _ = happyReduce_17 + +action_103 (76) = happyShift action_139 +action_103 _ = happyFail + +action_104 (62) = happyShift action_137 +action_104 (76) = happyShift action_138 +action_104 _ = happyFail + +action_105 (76) = happyShift action_136 +action_105 _ = happyFail + +action_106 (76) = happyShift action_135 +action_106 _ = happyFail + +action_107 (76) = happyShift action_134 +action_107 _ = happyFail + +action_108 _ = happyReduce_8 + +action_109 (58) = happyShift action_133 +action_109 _ = happyFail + +action_110 (88) = happyShift action_113 +action_110 (113) = happyShift action_114 +action_110 (114) = happyShift action_20 +action_110 (115) = happyShift action_21 +action_110 (116) = happyShift action_22 +action_110 (117) = happyShift action_23 +action_110 (118) = happyShift action_24 +action_110 (119) = happyShift action_25 +action_110 (120) = happyShift action_26 +action_110 (121) = happyShift action_27 +action_110 (122) = happyShift action_28 +action_110 (8) = happyGoto action_132 +action_110 (9) = happyGoto action_110 +action_110 (53) = happyGoto action_111 +action_110 (54) = happyGoto action_112 +action_110 _ = happyReduce_9 + +action_111 (56) = happyShift action_122 +action_111 (61) = happyShift action_123 +action_111 (65) = happyShift action_124 +action_111 (68) = happyShift action_125 +action_111 (69) = happyShift action_126 +action_111 (113) = happyShift action_19 +action_111 (114) = happyShift action_20 +action_111 (115) = happyShift action_21 +action_111 (116) = happyShift action_22 +action_111 (117) = happyShift action_23 +action_111 (118) = happyShift action_24 +action_111 (119) = happyShift action_25 +action_111 (120) = happyShift action_26 +action_111 (121) = happyShift action_27 +action_111 (122) = happyShift action_28 +action_111 (123) = happyShift action_127 +action_111 (124) = happyShift action_128 +action_111 (125) = happyShift action_129 +action_111 (126) = happyShift action_130 +action_111 (127) = happyShift action_131 +action_111 (35) = happyGoto action_118 +action_111 (36) = happyGoto action_119 +action_111 (43) = happyGoto action_120 +action_111 (53) = happyGoto action_121 +action_111 (54) = happyGoto action_9 +action_111 _ = happyFail + +action_112 (59) = happyShift action_117 +action_112 _ = happyReduce_152 + +action_113 (61) = happyShift action_116 +action_113 _ = happyFail + +action_114 (59) = happyShift action_115 +action_114 _ = happyReduce_151 + +action_115 (60) = happyShift action_235 +action_115 (126) = happyShift action_236 +action_115 _ = happyFail + +action_116 (124) = happyShift action_234 +action_116 _ = happyFail + +action_117 (126) = happyShift action_233 +action_117 _ = happyFail + +action_118 (56) = happyShift action_232 +action_118 (66) = happyShift action_184 +action_118 (67) = happyShift action_185 +action_118 (68) = happyShift action_186 +action_118 (69) = happyShift action_187 +action_118 (70) = happyShift action_188 +action_118 (71) = happyShift action_189 +action_118 (72) = happyShift action_190 +action_118 (73) = happyShift action_191 +action_118 (74) = happyShift action_192 +action_118 (75) = happyShift action_193 +action_118 (80) = happyShift action_194 +action_118 (81) = happyShift action_195 +action_118 (82) = happyShift action_196 +action_118 (83) = happyShift action_197 +action_118 (84) = happyShift action_198 +action_118 (85) = happyShift action_199 +action_118 _ = happyFail + +action_119 (64) = happyShift action_231 +action_119 _ = happyReduce_111 + +action_120 _ = happyReduce_115 + +action_121 (59) = happyShift action_230 +action_121 _ = happyFail + +action_122 _ = happyReduce_12 + +action_123 (61) = happyShift action_123 +action_123 (65) = happyShift action_124 +action_123 (68) = happyShift action_125 +action_123 (69) = happyShift action_126 +action_123 (113) = happyShift action_19 +action_123 (114) = happyShift action_20 +action_123 (115) = happyShift action_21 +action_123 (116) = happyShift action_22 +action_123 (117) = happyShift action_23 +action_123 (118) = happyShift action_24 +action_123 (119) = happyShift action_25 +action_123 (120) = happyShift action_26 +action_123 (121) = happyShift action_27 +action_123 (122) = happyShift action_28 +action_123 (123) = happyShift action_127 +action_123 (124) = happyShift action_128 +action_123 (125) = happyShift action_129 +action_123 (126) = happyShift action_130 +action_123 (127) = happyShift action_131 +action_123 (35) = happyGoto action_229 +action_123 (36) = happyGoto action_119 +action_123 (43) = happyGoto action_120 +action_123 (53) = happyGoto action_121 +action_123 (54) = happyGoto action_9 +action_123 _ = happyFail + +action_124 (61) = happyShift action_123 +action_124 (65) = happyShift action_124 +action_124 (68) = happyShift action_125 +action_124 (69) = happyShift action_126 +action_124 (113) = happyShift action_19 +action_124 (114) = happyShift action_20 +action_124 (115) = happyShift action_21 +action_124 (116) = happyShift action_22 +action_124 (117) = happyShift action_23 +action_124 (118) = happyShift action_24 +action_124 (119) = happyShift action_25 +action_124 (120) = happyShift action_26 +action_124 (121) = happyShift action_27 +action_124 (122) = happyShift action_28 +action_124 (123) = happyShift action_127 +action_124 (124) = happyShift action_128 +action_124 (125) = happyShift action_129 +action_124 (126) = happyShift action_130 +action_124 (127) = happyShift action_131 +action_124 (35) = happyGoto action_228 +action_124 (36) = happyGoto action_119 +action_124 (43) = happyGoto action_120 +action_124 (53) = happyGoto action_121 +action_124 (54) = happyGoto action_9 +action_124 _ = happyFail + +action_125 (124) = happyShift action_227 +action_125 _ = happyFail + +action_126 (61) = happyShift action_123 +action_126 (65) = happyShift action_124 +action_126 (68) = happyShift action_125 +action_126 (69) = happyShift action_126 +action_126 (113) = happyShift action_19 +action_126 (114) = happyShift action_20 +action_126 (115) = happyShift action_21 +action_126 (116) = happyShift action_22 +action_126 (117) = happyShift action_23 +action_126 (118) = happyShift action_24 +action_126 (119) = happyShift action_25 +action_126 (120) = happyShift action_26 +action_126 (121) = happyShift action_27 +action_126 (122) = happyShift action_28 +action_126 (123) = happyShift action_127 +action_126 (124) = happyShift action_128 +action_126 (125) = happyShift action_129 +action_126 (126) = happyShift action_130 +action_126 (127) = happyShift action_131 +action_126 (35) = happyGoto action_226 +action_126 (36) = happyGoto action_119 +action_126 (43) = happyGoto action_120 +action_126 (53) = happyGoto action_121 +action_126 (54) = happyGoto action_9 +action_126 _ = happyFail + +action_127 _ = happyReduce_132 + +action_128 _ = happyReduce_131 + +action_129 _ = happyReduce_114 + +action_130 (79) = happyShift action_224 +action_130 (37) = happyGoto action_225 +action_130 _ = happyReduce_119 + +action_131 (79) = happyShift action_224 +action_131 (37) = happyGoto action_223 +action_131 _ = happyReduce_119 + +action_132 _ = happyReduce_10 + +action_133 _ = happyReduce_7 + +action_134 (126) = happyShift action_222 +action_134 _ = happyFail + +action_135 (126) = happyShift action_221 +action_135 _ = happyFail + +action_136 (126) = happyShift action_220 +action_136 _ = happyFail + +action_137 _ = happyReduce_29 + +action_138 (113) = happyShift action_19 +action_138 (114) = happyShift action_20 +action_138 (115) = happyShift action_21 +action_138 (116) = happyShift action_22 +action_138 (117) = happyShift action_23 +action_138 (118) = happyShift action_24 +action_138 (119) = happyShift action_25 +action_138 (120) = happyShift action_26 +action_138 (121) = happyShift action_27 +action_138 (122) = happyShift action_28 +action_138 (50) = happyGoto action_219 +action_138 (51) = happyGoto action_75 +action_138 (52) = happyGoto action_76 +action_138 (53) = happyGoto action_77 +action_138 (54) = happyGoto action_9 +action_138 _ = happyReduce_145 + +action_139 (126) = happyShift action_218 +action_139 _ = happyFail + +action_140 (62) = happyShift action_217 +action_140 _ = happyFail + +action_141 (61) = happyShift action_123 +action_141 (65) = happyShift action_124 +action_141 (68) = happyShift action_125 +action_141 (69) = happyShift action_126 +action_141 (113) = happyShift action_19 +action_141 (114) = happyShift action_20 +action_141 (115) = happyShift action_21 +action_141 (116) = happyShift action_22 +action_141 (117) = happyShift action_23 +action_141 (118) = happyShift action_24 +action_141 (119) = happyShift action_25 +action_141 (120) = happyShift action_26 +action_141 (121) = happyShift action_27 +action_141 (122) = happyShift action_28 +action_141 (123) = happyShift action_127 +action_141 (124) = happyShift action_128 +action_141 (125) = happyShift action_129 +action_141 (126) = happyShift action_130 +action_141 (127) = happyShift action_131 +action_141 (35) = happyGoto action_216 +action_141 (36) = happyGoto action_119 +action_141 (43) = happyGoto action_120 +action_141 (53) = happyGoto action_121 +action_141 (54) = happyGoto action_9 +action_141 _ = happyFail + +action_142 _ = happyReduce_149 + +action_143 _ = happyReduce_45 + +action_144 (61) = happyShift action_123 +action_144 (65) = happyShift action_124 +action_144 (68) = happyShift action_125 +action_144 (69) = happyShift action_126 +action_144 (113) = happyShift action_19 +action_144 (114) = happyShift action_20 +action_144 (115) = happyShift action_21 +action_144 (116) = happyShift action_22 +action_144 (117) = happyShift action_23 +action_144 (118) = happyShift action_24 +action_144 (119) = happyShift action_25 +action_144 (120) = happyShift action_26 +action_144 (121) = happyShift action_27 +action_144 (122) = happyShift action_28 +action_144 (123) = happyShift action_127 +action_144 (124) = happyShift action_128 +action_144 (125) = happyShift action_129 +action_144 (126) = happyShift action_130 +action_144 (127) = happyShift action_131 +action_144 (35) = happyGoto action_209 +action_144 (36) = happyGoto action_119 +action_144 (41) = happyGoto action_215 +action_144 (42) = happyGoto action_211 +action_144 (43) = happyGoto action_120 +action_144 (53) = happyGoto action_121 +action_144 (54) = happyGoto action_9 +action_144 _ = happyReduce_127 + +action_145 (61) = happyShift action_123 +action_145 (65) = happyShift action_124 +action_145 (68) = happyShift action_125 +action_145 (69) = happyShift action_126 +action_145 (113) = happyShift action_19 +action_145 (114) = happyShift action_20 +action_145 (115) = happyShift action_21 +action_145 (116) = happyShift action_22 +action_145 (117) = happyShift action_23 +action_145 (118) = happyShift action_24 +action_145 (119) = happyShift action_25 +action_145 (120) = happyShift action_26 +action_145 (121) = happyShift action_27 +action_145 (122) = happyShift action_28 +action_145 (123) = happyShift action_127 +action_145 (124) = happyShift action_128 +action_145 (125) = happyShift action_129 +action_145 (126) = happyShift action_130 +action_145 (127) = happyShift action_131 +action_145 (35) = happyGoto action_209 +action_145 (36) = happyGoto action_119 +action_145 (41) = happyGoto action_214 +action_145 (42) = happyGoto action_211 +action_145 (43) = happyGoto action_120 +action_145 (53) = happyGoto action_121 +action_145 (54) = happyGoto action_9 +action_145 _ = happyReduce_127 + +action_146 (61) = happyShift action_123 +action_146 (65) = happyShift action_124 +action_146 (68) = happyShift action_125 +action_146 (69) = happyShift action_126 +action_146 (113) = happyShift action_19 +action_146 (114) = happyShift action_20 +action_146 (115) = happyShift action_21 +action_146 (116) = happyShift action_22 +action_146 (117) = happyShift action_23 +action_146 (118) = happyShift action_24 +action_146 (119) = happyShift action_25 +action_146 (120) = happyShift action_26 +action_146 (121) = happyShift action_27 +action_146 (122) = happyShift action_28 +action_146 (123) = happyShift action_127 +action_146 (124) = happyShift action_128 +action_146 (125) = happyShift action_129 +action_146 (126) = happyShift action_130 +action_146 (127) = happyShift action_131 +action_146 (35) = happyGoto action_213 +action_146 (36) = happyGoto action_119 +action_146 (43) = happyGoto action_120 +action_146 (53) = happyGoto action_121 +action_146 (54) = happyGoto action_9 +action_146 _ = happyFail + +action_147 (126) = happyShift action_212 +action_147 _ = happyFail + +action_148 (61) = happyShift action_123 +action_148 (65) = happyShift action_124 +action_148 (68) = happyShift action_125 +action_148 (69) = happyShift action_126 +action_148 (113) = happyShift action_19 +action_148 (114) = happyShift action_20 +action_148 (115) = happyShift action_21 +action_148 (116) = happyShift action_22 +action_148 (117) = happyShift action_23 +action_148 (118) = happyShift action_24 +action_148 (119) = happyShift action_25 +action_148 (120) = happyShift action_26 +action_148 (121) = happyShift action_27 +action_148 (122) = happyShift action_28 +action_148 (123) = happyShift action_127 +action_148 (124) = happyShift action_128 +action_148 (125) = happyShift action_129 +action_148 (126) = happyShift action_130 +action_148 (127) = happyShift action_131 +action_148 (35) = happyGoto action_209 +action_148 (36) = happyGoto action_119 +action_148 (41) = happyGoto action_210 +action_148 (42) = happyGoto action_211 +action_148 (43) = happyGoto action_120 +action_148 (53) = happyGoto action_121 +action_148 (54) = happyGoto action_9 +action_148 _ = happyReduce_127 + +action_149 (63) = happyShift action_208 +action_149 (66) = happyShift action_184 +action_149 (67) = happyShift action_185 +action_149 (68) = happyShift action_186 +action_149 (69) = happyShift action_187 +action_149 (70) = happyShift action_188 +action_149 (71) = happyShift action_189 +action_149 (72) = happyShift action_190 +action_149 (73) = happyShift action_191 +action_149 (74) = happyShift action_192 +action_149 (75) = happyShift action_193 +action_149 (80) = happyShift action_194 +action_149 (81) = happyShift action_195 +action_149 (82) = happyShift action_196 +action_149 (83) = happyShift action_197 +action_149 (84) = happyShift action_198 +action_149 (85) = happyShift action_199 +action_149 _ = happyFail + +action_150 (59) = happyShift action_206 +action_150 (61) = happyShift action_207 +action_150 (66) = happyShift action_184 +action_150 (67) = happyShift action_185 +action_150 (68) = happyShift action_186 +action_150 (69) = happyShift action_187 +action_150 (70) = happyShift action_188 +action_150 (71) = happyShift action_189 +action_150 (72) = happyShift action_190 +action_150 (73) = happyShift action_191 +action_150 (74) = happyShift action_192 +action_150 (75) = happyShift action_193 +action_150 (80) = happyShift action_194 +action_150 (81) = happyShift action_195 +action_150 (82) = happyShift action_196 +action_150 (83) = happyShift action_197 +action_150 (84) = happyShift action_198 +action_150 (85) = happyShift action_199 +action_150 (26) = happyGoto action_205 +action_150 _ = happyFail + +action_151 (61) = happyShift action_204 +action_151 (66) = happyShift action_184 +action_151 (67) = happyShift action_185 +action_151 (68) = happyShift action_186 +action_151 (69) = happyShift action_187 +action_151 (70) = happyShift action_188 +action_151 (71) = happyShift action_189 +action_151 (72) = happyShift action_190 +action_151 (73) = happyShift action_191 +action_151 (74) = happyShift action_192 +action_151 (75) = happyShift action_193 +action_151 (80) = happyShift action_194 +action_151 (81) = happyShift action_195 +action_151 (82) = happyShift action_196 +action_151 (83) = happyShift action_197 +action_151 (84) = happyShift action_198 +action_151 (85) = happyShift action_199 +action_151 _ = happyFail + +action_152 (57) = happyShift action_200 +action_152 (86) = happyShift action_201 +action_152 (87) = happyShift action_202 +action_152 (98) = happyShift action_203 +action_152 _ = happyFail + +action_153 _ = happyReduce_66 + +action_154 (66) = happyShift action_184 +action_154 (67) = happyShift action_185 +action_154 (68) = happyShift action_186 +action_154 (69) = happyShift action_187 +action_154 (70) = happyShift action_188 +action_154 (71) = happyShift action_189 +action_154 (72) = happyShift action_190 +action_154 (73) = happyShift action_191 +action_154 (74) = happyShift action_192 +action_154 (75) = happyShift action_193 +action_154 (80) = happyShift action_194 +action_154 (81) = happyShift action_195 +action_154 (82) = happyShift action_196 +action_154 (83) = happyShift action_197 +action_154 (84) = happyShift action_198 +action_154 (85) = happyShift action_199 +action_154 _ = happyReduce_67 + +action_155 (61) = happyShift action_155 +action_155 (65) = happyShift action_124 +action_155 (68) = happyShift action_125 +action_155 (69) = happyShift action_126 +action_155 (77) = happyShift action_156 +action_155 (113) = happyShift action_19 +action_155 (114) = happyShift action_20 +action_155 (115) = happyShift action_21 +action_155 (116) = happyShift action_22 +action_155 (117) = happyShift action_23 +action_155 (118) = happyShift action_24 +action_155 (119) = happyShift action_25 +action_155 (120) = happyShift action_26 +action_155 (121) = happyShift action_27 +action_155 (122) = happyShift action_28 +action_155 (123) = happyShift action_127 +action_155 (124) = happyShift action_128 +action_155 (125) = happyShift action_129 +action_155 (126) = happyShift action_130 +action_155 (127) = happyShift action_131 +action_155 (23) = happyGoto action_181 +action_155 (24) = happyGoto action_182 +action_155 (35) = happyGoto action_183 +action_155 (36) = happyGoto action_119 +action_155 (43) = happyGoto action_120 +action_155 (53) = happyGoto action_121 +action_155 (54) = happyGoto action_9 +action_155 _ = happyFail + +action_156 (61) = happyShift action_155 +action_156 (65) = happyShift action_124 +action_156 (68) = happyShift action_125 +action_156 (69) = happyShift action_126 +action_156 (77) = happyShift action_156 +action_156 (113) = happyShift action_19 +action_156 (114) = happyShift action_20 +action_156 (115) = happyShift action_21 +action_156 (116) = happyShift action_22 +action_156 (117) = happyShift action_23 +action_156 (118) = happyShift action_24 +action_156 (119) = happyShift action_25 +action_156 (120) = happyShift action_26 +action_156 (121) = happyShift action_27 +action_156 (122) = happyShift action_28 +action_156 (123) = happyShift action_127 +action_156 (124) = happyShift action_128 +action_156 (125) = happyShift action_129 +action_156 (126) = happyShift action_130 +action_156 (127) = happyShift action_131 +action_156 (23) = happyGoto action_180 +action_156 (24) = happyGoto action_153 +action_156 (35) = happyGoto action_154 +action_156 (36) = happyGoto action_119 +action_156 (43) = happyGoto action_120 +action_156 (53) = happyGoto action_121 +action_156 (54) = happyGoto action_9 +action_156 _ = happyFail + +action_157 (56) = happyShift action_179 +action_157 _ = happyFail + +action_158 (62) = happyShift action_178 +action_158 _ = happyFail + +action_159 (76) = happyShift action_177 +action_159 _ = happyReduce_135 + +action_160 _ = happyReduce_138 + +action_161 (62) = happyShift action_176 +action_161 _ = happyFail + +action_162 _ = happyReduce_140 + +action_163 (124) = happyShift action_162 +action_163 (47) = happyGoto action_175 +action_163 _ = happyFail + +action_164 (61) = happyShift action_123 +action_164 (65) = happyShift action_124 +action_164 (68) = happyShift action_125 +action_164 (69) = happyShift action_126 +action_164 (113) = happyShift action_19 +action_164 (114) = happyShift action_20 +action_164 (115) = happyShift action_21 +action_164 (116) = happyShift action_22 +action_164 (117) = happyShift action_23 +action_164 (118) = happyShift action_24 +action_164 (119) = happyShift action_25 +action_164 (120) = happyShift action_26 +action_164 (121) = happyShift action_27 +action_164 (122) = happyShift action_28 +action_164 (123) = happyShift action_127 +action_164 (124) = happyShift action_128 +action_164 (125) = happyShift action_129 +action_164 (126) = happyShift action_130 +action_164 (127) = happyShift action_131 +action_164 (35) = happyGoto action_174 +action_164 (36) = happyGoto action_119 +action_164 (43) = happyGoto action_120 +action_164 (53) = happyGoto action_121 +action_164 (54) = happyGoto action_9 +action_164 _ = happyFail + +action_165 (61) = happyShift action_123 +action_165 (65) = happyShift action_124 +action_165 (68) = happyShift action_125 +action_165 (69) = happyShift action_126 +action_165 (113) = happyShift action_19 +action_165 (114) = happyShift action_20 +action_165 (115) = happyShift action_21 +action_165 (116) = happyShift action_22 +action_165 (117) = happyShift action_23 +action_165 (118) = happyShift action_24 +action_165 (119) = happyShift action_25 +action_165 (120) = happyShift action_26 +action_165 (121) = happyShift action_27 +action_165 (122) = happyShift action_28 +action_165 (123) = happyShift action_127 +action_165 (124) = happyShift action_128 +action_165 (125) = happyShift action_129 +action_165 (126) = happyShift action_130 +action_165 (127) = happyShift action_131 +action_165 (35) = happyGoto action_173 +action_165 (36) = happyGoto action_119 +action_165 (43) = happyGoto action_120 +action_165 (53) = happyGoto action_121 +action_165 (54) = happyGoto action_9 +action_165 _ = happyFail + +action_166 (125) = happyShift action_172 +action_166 _ = happyFail + +action_167 (68) = happyShift action_171 +action_167 _ = happyFail + +action_168 _ = happyReduce_33 + +action_169 _ = happyReduce_32 + +action_170 _ = happyReduce_23 + +action_171 (124) = happyShift action_296 +action_171 _ = happyFail + +action_172 (124) = happyShift action_295 +action_172 (21) = happyGoto action_294 +action_172 _ = happyFail + +action_173 (56) = happyShift action_293 +action_173 (66) = happyShift action_184 +action_173 (67) = happyShift action_185 +action_173 (68) = happyShift action_186 +action_173 (69) = happyShift action_187 +action_173 (70) = happyShift action_188 +action_173 (71) = happyShift action_189 +action_173 (72) = happyShift action_190 +action_173 (73) = happyShift action_191 +action_173 (74) = happyShift action_192 +action_173 (75) = happyShift action_193 +action_173 (80) = happyShift action_194 +action_173 (81) = happyShift action_195 +action_173 (82) = happyShift action_196 +action_173 (83) = happyShift action_197 +action_173 (84) = happyShift action_198 +action_173 (85) = happyShift action_199 +action_173 _ = happyFail + +action_174 (60) = happyShift action_292 +action_174 (66) = happyShift action_184 +action_174 (67) = happyShift action_185 +action_174 (68) = happyShift action_186 +action_174 (69) = happyShift action_187 +action_174 (70) = happyShift action_188 +action_174 (71) = happyShift action_189 +action_174 (72) = happyShift action_190 +action_174 (73) = happyShift action_191 +action_174 (74) = happyShift action_192 +action_174 (75) = happyShift action_193 +action_174 (80) = happyShift action_194 +action_174 (81) = happyShift action_195 +action_174 (82) = happyShift action_196 +action_174 (83) = happyShift action_197 +action_174 (84) = happyShift action_198 +action_174 (85) = happyShift action_199 +action_174 _ = happyFail + +action_175 _ = happyReduce_139 + +action_176 (63) = happyShift action_291 +action_176 _ = happyFail + +action_177 (124) = happyShift action_162 +action_177 (125) = happyShift action_163 +action_177 (45) = happyGoto action_290 +action_177 (46) = happyGoto action_159 +action_177 (47) = happyGoto action_160 +action_177 _ = happyReduce_136 + +action_178 (63) = happyShift action_289 +action_178 _ = happyFail + +action_179 _ = happyReduce_52 + +action_180 _ = happyReduce_70 + +action_181 (86) = happyShift action_201 +action_181 (87) = happyShift action_202 +action_181 _ = happyFail + +action_182 (62) = happyShift action_288 +action_182 _ = happyReduce_66 + +action_183 (62) = happyShift action_243 +action_183 (66) = happyShift action_184 +action_183 (67) = happyShift action_185 +action_183 (68) = happyShift action_186 +action_183 (69) = happyShift action_187 +action_183 (70) = happyShift action_188 +action_183 (71) = happyShift action_189 +action_183 (72) = happyShift action_190 +action_183 (73) = happyShift action_191 +action_183 (74) = happyShift action_192 +action_183 (75) = happyShift action_193 +action_183 (80) = happyShift action_194 +action_183 (81) = happyShift action_195 +action_183 (82) = happyShift action_196 +action_183 (83) = happyShift action_197 +action_183 (84) = happyShift action_198 +action_183 (85) = happyShift action_199 +action_183 _ = happyReduce_67 + +action_184 (61) = happyShift action_123 +action_184 (65) = happyShift action_124 +action_184 (68) = happyShift action_125 +action_184 (69) = happyShift action_126 +action_184 (113) = happyShift action_19 +action_184 (114) = happyShift action_20 +action_184 (115) = happyShift action_21 +action_184 (116) = happyShift action_22 +action_184 (117) = happyShift action_23 +action_184 (118) = happyShift action_24 +action_184 (119) = happyShift action_25 +action_184 (120) = happyShift action_26 +action_184 (121) = happyShift action_27 +action_184 (122) = happyShift action_28 +action_184 (123) = happyShift action_127 +action_184 (124) = happyShift action_128 +action_184 (125) = happyShift action_129 +action_184 (126) = happyShift action_130 +action_184 (127) = happyShift action_131 +action_184 (35) = happyGoto action_287 +action_184 (36) = happyGoto action_119 +action_184 (43) = happyGoto action_120 +action_184 (53) = happyGoto action_121 +action_184 (54) = happyGoto action_9 +action_184 _ = happyFail + +action_185 (61) = happyShift action_123 +action_185 (65) = happyShift action_124 +action_185 (68) = happyShift action_125 +action_185 (69) = happyShift action_126 +action_185 (113) = happyShift action_19 +action_185 (114) = happyShift action_20 +action_185 (115) = happyShift action_21 +action_185 (116) = happyShift action_22 +action_185 (117) = happyShift action_23 +action_185 (118) = happyShift action_24 +action_185 (119) = happyShift action_25 +action_185 (120) = happyShift action_26 +action_185 (121) = happyShift action_27 +action_185 (122) = happyShift action_28 +action_185 (123) = happyShift action_127 +action_185 (124) = happyShift action_128 +action_185 (125) = happyShift action_129 +action_185 (126) = happyShift action_130 +action_185 (127) = happyShift action_131 +action_185 (35) = happyGoto action_286 +action_185 (36) = happyGoto action_119 +action_185 (43) = happyGoto action_120 +action_185 (53) = happyGoto action_121 +action_185 (54) = happyGoto action_9 +action_185 _ = happyFail + +action_186 (61) = happyShift action_123 +action_186 (65) = happyShift action_124 +action_186 (68) = happyShift action_125 +action_186 (69) = happyShift action_126 +action_186 (113) = happyShift action_19 +action_186 (114) = happyShift action_20 +action_186 (115) = happyShift action_21 +action_186 (116) = happyShift action_22 +action_186 (117) = happyShift action_23 +action_186 (118) = happyShift action_24 +action_186 (119) = happyShift action_25 +action_186 (120) = happyShift action_26 +action_186 (121) = happyShift action_27 +action_186 (122) = happyShift action_28 +action_186 (123) = happyShift action_127 +action_186 (124) = happyShift action_128 +action_186 (125) = happyShift action_129 +action_186 (126) = happyShift action_130 +action_186 (127) = happyShift action_131 +action_186 (35) = happyGoto action_285 +action_186 (36) = happyGoto action_119 +action_186 (43) = happyGoto action_120 +action_186 (53) = happyGoto action_121 +action_186 (54) = happyGoto action_9 +action_186 _ = happyFail + +action_187 (61) = happyShift action_123 +action_187 (65) = happyShift action_124 +action_187 (68) = happyShift action_125 +action_187 (69) = happyShift action_126 +action_187 (113) = happyShift action_19 +action_187 (114) = happyShift action_20 +action_187 (115) = happyShift action_21 +action_187 (116) = happyShift action_22 +action_187 (117) = happyShift action_23 +action_187 (118) = happyShift action_24 +action_187 (119) = happyShift action_25 +action_187 (120) = happyShift action_26 +action_187 (121) = happyShift action_27 +action_187 (122) = happyShift action_28 +action_187 (123) = happyShift action_127 +action_187 (124) = happyShift action_128 +action_187 (125) = happyShift action_129 +action_187 (126) = happyShift action_130 +action_187 (127) = happyShift action_131 +action_187 (35) = happyGoto action_284 +action_187 (36) = happyGoto action_119 +action_187 (43) = happyGoto action_120 +action_187 (53) = happyGoto action_121 +action_187 (54) = happyGoto action_9 +action_187 _ = happyFail + +action_188 (61) = happyShift action_123 +action_188 (65) = happyShift action_124 +action_188 (68) = happyShift action_125 +action_188 (69) = happyShift action_126 +action_188 (113) = happyShift action_19 +action_188 (114) = happyShift action_20 +action_188 (115) = happyShift action_21 +action_188 (116) = happyShift action_22 +action_188 (117) = happyShift action_23 +action_188 (118) = happyShift action_24 +action_188 (119) = happyShift action_25 +action_188 (120) = happyShift action_26 +action_188 (121) = happyShift action_27 +action_188 (122) = happyShift action_28 +action_188 (123) = happyShift action_127 +action_188 (124) = happyShift action_128 +action_188 (125) = happyShift action_129 +action_188 (126) = happyShift action_130 +action_188 (127) = happyShift action_131 +action_188 (35) = happyGoto action_283 +action_188 (36) = happyGoto action_119 +action_188 (43) = happyGoto action_120 +action_188 (53) = happyGoto action_121 +action_188 (54) = happyGoto action_9 +action_188 _ = happyFail + +action_189 (61) = happyShift action_123 +action_189 (65) = happyShift action_124 +action_189 (68) = happyShift action_125 +action_189 (69) = happyShift action_126 +action_189 (113) = happyShift action_19 +action_189 (114) = happyShift action_20 +action_189 (115) = happyShift action_21 +action_189 (116) = happyShift action_22 +action_189 (117) = happyShift action_23 +action_189 (118) = happyShift action_24 +action_189 (119) = happyShift action_25 +action_189 (120) = happyShift action_26 +action_189 (121) = happyShift action_27 +action_189 (122) = happyShift action_28 +action_189 (123) = happyShift action_127 +action_189 (124) = happyShift action_128 +action_189 (125) = happyShift action_129 +action_189 (126) = happyShift action_130 +action_189 (127) = happyShift action_131 +action_189 (35) = happyGoto action_282 +action_189 (36) = happyGoto action_119 +action_189 (43) = happyGoto action_120 +action_189 (53) = happyGoto action_121 +action_189 (54) = happyGoto action_9 +action_189 _ = happyFail + +action_190 (61) = happyShift action_123 +action_190 (65) = happyShift action_124 +action_190 (68) = happyShift action_125 +action_190 (69) = happyShift action_126 +action_190 (113) = happyShift action_19 +action_190 (114) = happyShift action_20 +action_190 (115) = happyShift action_21 +action_190 (116) = happyShift action_22 +action_190 (117) = happyShift action_23 +action_190 (118) = happyShift action_24 +action_190 (119) = happyShift action_25 +action_190 (120) = happyShift action_26 +action_190 (121) = happyShift action_27 +action_190 (122) = happyShift action_28 +action_190 (123) = happyShift action_127 +action_190 (124) = happyShift action_128 +action_190 (125) = happyShift action_129 +action_190 (126) = happyShift action_130 +action_190 (127) = happyShift action_131 +action_190 (35) = happyGoto action_281 +action_190 (36) = happyGoto action_119 +action_190 (43) = happyGoto action_120 +action_190 (53) = happyGoto action_121 +action_190 (54) = happyGoto action_9 +action_190 _ = happyFail + +action_191 (61) = happyShift action_123 +action_191 (65) = happyShift action_124 +action_191 (68) = happyShift action_125 +action_191 (69) = happyShift action_126 +action_191 (113) = happyShift action_19 +action_191 (114) = happyShift action_20 +action_191 (115) = happyShift action_21 +action_191 (116) = happyShift action_22 +action_191 (117) = happyShift action_23 +action_191 (118) = happyShift action_24 +action_191 (119) = happyShift action_25 +action_191 (120) = happyShift action_26 +action_191 (121) = happyShift action_27 +action_191 (122) = happyShift action_28 +action_191 (123) = happyShift action_127 +action_191 (124) = happyShift action_128 +action_191 (125) = happyShift action_129 +action_191 (126) = happyShift action_130 +action_191 (127) = happyShift action_131 +action_191 (35) = happyGoto action_280 +action_191 (36) = happyGoto action_119 +action_191 (43) = happyGoto action_120 +action_191 (53) = happyGoto action_121 +action_191 (54) = happyGoto action_9 +action_191 _ = happyFail + +action_192 (61) = happyShift action_123 +action_192 (65) = happyShift action_124 +action_192 (68) = happyShift action_125 +action_192 (69) = happyShift action_126 +action_192 (113) = happyShift action_19 +action_192 (114) = happyShift action_20 +action_192 (115) = happyShift action_21 +action_192 (116) = happyShift action_22 +action_192 (117) = happyShift action_23 +action_192 (118) = happyShift action_24 +action_192 (119) = happyShift action_25 +action_192 (120) = happyShift action_26 +action_192 (121) = happyShift action_27 +action_192 (122) = happyShift action_28 +action_192 (123) = happyShift action_127 +action_192 (124) = happyShift action_128 +action_192 (125) = happyShift action_129 +action_192 (126) = happyShift action_130 +action_192 (127) = happyShift action_131 +action_192 (35) = happyGoto action_279 +action_192 (36) = happyGoto action_119 +action_192 (43) = happyGoto action_120 +action_192 (53) = happyGoto action_121 +action_192 (54) = happyGoto action_9 +action_192 _ = happyFail + +action_193 (61) = happyShift action_123 +action_193 (65) = happyShift action_124 +action_193 (68) = happyShift action_125 +action_193 (69) = happyShift action_126 +action_193 (113) = happyShift action_19 +action_193 (114) = happyShift action_20 +action_193 (115) = happyShift action_21 +action_193 (116) = happyShift action_22 +action_193 (117) = happyShift action_23 +action_193 (118) = happyShift action_24 +action_193 (119) = happyShift action_25 +action_193 (120) = happyShift action_26 +action_193 (121) = happyShift action_27 +action_193 (122) = happyShift action_28 +action_193 (123) = happyShift action_127 +action_193 (124) = happyShift action_128 +action_193 (125) = happyShift action_129 +action_193 (126) = happyShift action_130 +action_193 (127) = happyShift action_131 +action_193 (35) = happyGoto action_278 +action_193 (36) = happyGoto action_119 +action_193 (43) = happyGoto action_120 +action_193 (53) = happyGoto action_121 +action_193 (54) = happyGoto action_9 +action_193 _ = happyFail + +action_194 (61) = happyShift action_123 +action_194 (65) = happyShift action_124 +action_194 (68) = happyShift action_125 +action_194 (69) = happyShift action_126 +action_194 (113) = happyShift action_19 +action_194 (114) = happyShift action_20 +action_194 (115) = happyShift action_21 +action_194 (116) = happyShift action_22 +action_194 (117) = happyShift action_23 +action_194 (118) = happyShift action_24 +action_194 (119) = happyShift action_25 +action_194 (120) = happyShift action_26 +action_194 (121) = happyShift action_27 +action_194 (122) = happyShift action_28 +action_194 (123) = happyShift action_127 +action_194 (124) = happyShift action_128 +action_194 (125) = happyShift action_129 +action_194 (126) = happyShift action_130 +action_194 (127) = happyShift action_131 +action_194 (35) = happyGoto action_277 +action_194 (36) = happyGoto action_119 +action_194 (43) = happyGoto action_120 +action_194 (53) = happyGoto action_121 +action_194 (54) = happyGoto action_9 +action_194 _ = happyFail + +action_195 (61) = happyShift action_123 +action_195 (65) = happyShift action_124 +action_195 (68) = happyShift action_125 +action_195 (69) = happyShift action_126 +action_195 (113) = happyShift action_19 +action_195 (114) = happyShift action_20 +action_195 (115) = happyShift action_21 +action_195 (116) = happyShift action_22 +action_195 (117) = happyShift action_23 +action_195 (118) = happyShift action_24 +action_195 (119) = happyShift action_25 +action_195 (120) = happyShift action_26 +action_195 (121) = happyShift action_27 +action_195 (122) = happyShift action_28 +action_195 (123) = happyShift action_127 +action_195 (124) = happyShift action_128 +action_195 (125) = happyShift action_129 +action_195 (126) = happyShift action_130 +action_195 (127) = happyShift action_131 +action_195 (35) = happyGoto action_276 +action_195 (36) = happyGoto action_119 +action_195 (43) = happyGoto action_120 +action_195 (53) = happyGoto action_121 +action_195 (54) = happyGoto action_9 +action_195 _ = happyFail + +action_196 (61) = happyShift action_123 +action_196 (65) = happyShift action_124 +action_196 (68) = happyShift action_125 +action_196 (69) = happyShift action_126 +action_196 (113) = happyShift action_19 +action_196 (114) = happyShift action_20 +action_196 (115) = happyShift action_21 +action_196 (116) = happyShift action_22 +action_196 (117) = happyShift action_23 +action_196 (118) = happyShift action_24 +action_196 (119) = happyShift action_25 +action_196 (120) = happyShift action_26 +action_196 (121) = happyShift action_27 +action_196 (122) = happyShift action_28 +action_196 (123) = happyShift action_127 +action_196 (124) = happyShift action_128 +action_196 (125) = happyShift action_129 +action_196 (126) = happyShift action_130 +action_196 (127) = happyShift action_131 +action_196 (35) = happyGoto action_275 +action_196 (36) = happyGoto action_119 +action_196 (43) = happyGoto action_120 +action_196 (53) = happyGoto action_121 +action_196 (54) = happyGoto action_9 +action_196 _ = happyFail + +action_197 (61) = happyShift action_123 +action_197 (65) = happyShift action_124 +action_197 (68) = happyShift action_125 +action_197 (69) = happyShift action_126 +action_197 (113) = happyShift action_19 +action_197 (114) = happyShift action_20 +action_197 (115) = happyShift action_21 +action_197 (116) = happyShift action_22 +action_197 (117) = happyShift action_23 +action_197 (118) = happyShift action_24 +action_197 (119) = happyShift action_25 +action_197 (120) = happyShift action_26 +action_197 (121) = happyShift action_27 +action_197 (122) = happyShift action_28 +action_197 (123) = happyShift action_127 +action_197 (124) = happyShift action_128 +action_197 (125) = happyShift action_129 +action_197 (126) = happyShift action_130 +action_197 (127) = happyShift action_131 +action_197 (35) = happyGoto action_274 +action_197 (36) = happyGoto action_119 +action_197 (43) = happyGoto action_120 +action_197 (53) = happyGoto action_121 +action_197 (54) = happyGoto action_9 +action_197 _ = happyFail + +action_198 (61) = happyShift action_123 +action_198 (65) = happyShift action_124 +action_198 (68) = happyShift action_125 +action_198 (69) = happyShift action_126 +action_198 (113) = happyShift action_19 +action_198 (114) = happyShift action_20 +action_198 (115) = happyShift action_21 +action_198 (116) = happyShift action_22 +action_198 (117) = happyShift action_23 +action_198 (118) = happyShift action_24 +action_198 (119) = happyShift action_25 +action_198 (120) = happyShift action_26 +action_198 (121) = happyShift action_27 +action_198 (122) = happyShift action_28 +action_198 (123) = happyShift action_127 +action_198 (124) = happyShift action_128 +action_198 (125) = happyShift action_129 +action_198 (126) = happyShift action_130 +action_198 (127) = happyShift action_131 +action_198 (35) = happyGoto action_273 +action_198 (36) = happyGoto action_119 +action_198 (43) = happyGoto action_120 +action_198 (53) = happyGoto action_121 +action_198 (54) = happyGoto action_9 +action_198 _ = happyFail + +action_199 (61) = happyShift action_123 +action_199 (65) = happyShift action_124 +action_199 (68) = happyShift action_125 +action_199 (69) = happyShift action_126 +action_199 (113) = happyShift action_19 +action_199 (114) = happyShift action_20 +action_199 (115) = happyShift action_21 +action_199 (116) = happyShift action_22 +action_199 (117) = happyShift action_23 +action_199 (118) = happyShift action_24 +action_199 (119) = happyShift action_25 +action_199 (120) = happyShift action_26 +action_199 (121) = happyShift action_27 +action_199 (122) = happyShift action_28 +action_199 (123) = happyShift action_127 +action_199 (124) = happyShift action_128 +action_199 (125) = happyShift action_129 +action_199 (126) = happyShift action_130 +action_199 (127) = happyShift action_131 +action_199 (35) = happyGoto action_272 +action_199 (36) = happyGoto action_119 +action_199 (43) = happyGoto action_120 +action_199 (53) = happyGoto action_121 +action_199 (54) = happyGoto action_9 +action_199 _ = happyFail + +action_200 (56) = happyShift action_87 +action_200 (61) = happyShift action_88 +action_200 (95) = happyShift action_16 +action_200 (98) = happyShift action_89 +action_200 (99) = happyShift action_90 +action_200 (100) = happyShift action_91 +action_200 (101) = happyShift action_92 +action_200 (102) = happyReduce_133 +action_200 (104) = happyReduce_133 +action_200 (105) = happyShift action_93 +action_200 (106) = happyShift action_94 +action_200 (108) = happyShift action_18 +action_200 (109) = happyShift action_95 +action_200 (112) = happyShift action_96 +action_200 (113) = happyShift action_19 +action_200 (114) = happyShift action_20 +action_200 (115) = happyShift action_21 +action_200 (116) = happyShift action_22 +action_200 (117) = happyShift action_23 +action_200 (118) = happyShift action_24 +action_200 (119) = happyShift action_25 +action_200 (120) = happyShift action_26 +action_200 (121) = happyShift action_27 +action_200 (122) = happyShift action_28 +action_200 (123) = happyShift action_97 +action_200 (124) = happyShift action_98 +action_200 (15) = happyGoto action_271 +action_200 (16) = happyGoto action_82 +action_200 (20) = happyGoto action_83 +action_200 (44) = happyGoto action_84 +action_200 (48) = happyGoto action_85 +action_200 (53) = happyGoto action_86 +action_200 (54) = happyGoto action_9 +action_200 _ = happyReduce_31 + +action_201 (61) = happyShift action_155 +action_201 (65) = happyShift action_124 +action_201 (68) = happyShift action_125 +action_201 (69) = happyShift action_126 +action_201 (77) = happyShift action_156 +action_201 (113) = happyShift action_19 +action_201 (114) = happyShift action_20 +action_201 (115) = happyShift action_21 +action_201 (116) = happyShift action_22 +action_201 (117) = happyShift action_23 +action_201 (118) = happyShift action_24 +action_201 (119) = happyShift action_25 +action_201 (120) = happyShift action_26 +action_201 (121) = happyShift action_27 +action_201 (122) = happyShift action_28 +action_201 (123) = happyShift action_127 +action_201 (124) = happyShift action_128 +action_201 (125) = happyShift action_129 +action_201 (126) = happyShift action_130 +action_201 (127) = happyShift action_131 +action_201 (23) = happyGoto action_270 +action_201 (24) = happyGoto action_153 +action_201 (35) = happyGoto action_154 +action_201 (36) = happyGoto action_119 +action_201 (43) = happyGoto action_120 +action_201 (53) = happyGoto action_121 +action_201 (54) = happyGoto action_9 +action_201 _ = happyFail + +action_202 (61) = happyShift action_155 +action_202 (65) = happyShift action_124 +action_202 (68) = happyShift action_125 +action_202 (69) = happyShift action_126 +action_202 (77) = happyShift action_156 +action_202 (113) = happyShift action_19 +action_202 (114) = happyShift action_20 +action_202 (115) = happyShift action_21 +action_202 (116) = happyShift action_22 +action_202 (117) = happyShift action_23 +action_202 (118) = happyShift action_24 +action_202 (119) = happyShift action_25 +action_202 (120) = happyShift action_26 +action_202 (121) = happyShift action_27 +action_202 (122) = happyShift action_28 +action_202 (123) = happyShift action_127 +action_202 (124) = happyShift action_128 +action_202 (125) = happyShift action_129 +action_202 (126) = happyShift action_130 +action_202 (127) = happyShift action_131 +action_202 (23) = happyGoto action_269 +action_202 (24) = happyGoto action_153 +action_202 (35) = happyGoto action_154 +action_202 (36) = happyGoto action_119 +action_202 (43) = happyGoto action_120 +action_202 (53) = happyGoto action_121 +action_202 (54) = happyGoto action_9 +action_202 _ = happyFail + +action_203 (124) = happyShift action_268 +action_203 _ = happyFail + +action_204 (61) = happyShift action_123 +action_204 (65) = happyShift action_124 +action_204 (68) = happyShift action_125 +action_204 (69) = happyShift action_126 +action_204 (113) = happyShift action_19 +action_204 (114) = happyShift action_20 +action_204 (115) = happyShift action_21 +action_204 (116) = happyShift action_22 +action_204 (117) = happyShift action_23 +action_204 (118) = happyShift action_24 +action_204 (119) = happyShift action_25 +action_204 (120) = happyShift action_26 +action_204 (121) = happyShift action_27 +action_204 (122) = happyShift action_28 +action_204 (123) = happyShift action_127 +action_204 (124) = happyShift action_128 +action_204 (125) = happyShift action_129 +action_204 (126) = happyShift action_130 +action_204 (127) = happyShift action_131 +action_204 (35) = happyGoto action_209 +action_204 (36) = happyGoto action_119 +action_204 (41) = happyGoto action_267 +action_204 (42) = happyGoto action_211 +action_204 (43) = happyGoto action_120 +action_204 (53) = happyGoto action_121 +action_204 (54) = happyGoto action_9 +action_204 _ = happyReduce_127 + +action_205 (56) = happyShift action_266 +action_205 _ = happyFail + +action_206 (60) = happyShift action_263 +action_206 (67) = happyShift action_264 +action_206 (123) = happyShift action_265 +action_206 (27) = happyGoto action_262 +action_206 _ = happyFail + +action_207 (61) = happyShift action_123 +action_207 (65) = happyShift action_124 +action_207 (68) = happyShift action_125 +action_207 (69) = happyShift action_126 +action_207 (113) = happyShift action_19 +action_207 (114) = happyShift action_20 +action_207 (115) = happyShift action_21 +action_207 (116) = happyShift action_22 +action_207 (117) = happyShift action_23 +action_207 (118) = happyShift action_24 +action_207 (119) = happyShift action_25 +action_207 (120) = happyShift action_26 +action_207 (121) = happyShift action_27 +action_207 (122) = happyShift action_28 +action_207 (123) = happyShift action_127 +action_207 (124) = happyShift action_128 +action_207 (125) = happyShift action_129 +action_207 (126) = happyShift action_130 +action_207 (127) = happyShift action_131 +action_207 (35) = happyGoto action_209 +action_207 (36) = happyGoto action_119 +action_207 (41) = happyGoto action_261 +action_207 (42) = happyGoto action_211 +action_207 (43) = happyGoto action_120 +action_207 (53) = happyGoto action_121 +action_207 (54) = happyGoto action_9 +action_207 _ = happyReduce_127 + +action_208 (123) = happyShift action_97 +action_208 (124) = happyShift action_260 +action_208 (48) = happyGoto action_259 +action_208 _ = happyFail + +action_209 (66) = happyShift action_184 +action_209 (67) = happyShift action_185 +action_209 (68) = happyShift action_186 +action_209 (69) = happyShift action_187 +action_209 (70) = happyShift action_188 +action_209 (71) = happyShift action_189 +action_209 (72) = happyShift action_190 +action_209 (73) = happyShift action_191 +action_209 (74) = happyShift action_192 +action_209 (75) = happyShift action_193 +action_209 (76) = happyShift action_258 +action_209 (80) = happyShift action_194 +action_209 (81) = happyShift action_195 +action_209 (82) = happyShift action_196 +action_209 (83) = happyShift action_197 +action_209 (84) = happyShift action_198 +action_209 (85) = happyShift action_199 +action_209 _ = happyReduce_129 + +action_210 (62) = happyShift action_257 +action_210 _ = happyFail + +action_211 _ = happyReduce_128 + +action_212 (78) = happyShift action_256 +action_212 _ = happyFail + +action_213 (57) = happyShift action_255 +action_213 (66) = happyShift action_184 +action_213 (67) = happyShift action_185 +action_213 (68) = happyShift action_186 +action_213 (69) = happyShift action_187 +action_213 (70) = happyShift action_188 +action_213 (71) = happyShift action_189 +action_213 (72) = happyShift action_190 +action_213 (73) = happyShift action_191 +action_213 (74) = happyShift action_192 +action_213 (75) = happyShift action_193 +action_213 (80) = happyShift action_194 +action_213 (81) = happyShift action_195 +action_213 (82) = happyShift action_196 +action_213 (83) = happyShift action_197 +action_213 (84) = happyShift action_198 +action_213 (85) = happyShift action_199 +action_213 _ = happyFail + +action_214 (62) = happyShift action_254 +action_214 _ = happyFail + +action_215 (62) = happyShift action_253 +action_215 _ = happyFail + +action_216 (66) = happyShift action_184 +action_216 (67) = happyShift action_185 +action_216 (68) = happyShift action_186 +action_216 (69) = happyShift action_187 +action_216 (70) = happyShift action_188 +action_216 (71) = happyShift action_189 +action_216 (72) = happyShift action_190 +action_216 (73) = happyShift action_191 +action_216 (74) = happyShift action_192 +action_216 (75) = happyShift action_193 +action_216 (76) = happyShift action_141 +action_216 (80) = happyShift action_194 +action_216 (81) = happyShift action_195 +action_216 (82) = happyShift action_196 +action_216 (83) = happyShift action_197 +action_216 (84) = happyShift action_198 +action_216 (85) = happyShift action_199 +action_216 (10) = happyGoto action_252 +action_216 _ = happyReduce_17 + +action_217 (56) = happyShift action_251 +action_217 _ = happyFail + +action_218 (76) = happyShift action_250 +action_218 _ = happyFail + +action_219 (62) = happyShift action_249 +action_219 _ = happyFail + +action_220 (76) = happyShift action_248 +action_220 _ = happyFail + +action_221 (76) = happyShift action_247 +action_221 _ = happyFail + +action_222 (76) = happyShift action_246 +action_222 _ = happyFail + +action_223 _ = happyReduce_113 + +action_224 (113) = happyShift action_19 +action_224 (114) = happyShift action_20 +action_224 (115) = happyShift action_21 +action_224 (116) = happyShift action_22 +action_224 (117) = happyShift action_23 +action_224 (118) = happyShift action_24 +action_224 (119) = happyShift action_25 +action_224 (120) = happyShift action_26 +action_224 (121) = happyShift action_27 +action_224 (122) = happyShift action_28 +action_224 (53) = happyGoto action_245 +action_224 (54) = happyGoto action_9 +action_224 _ = happyFail + +action_225 _ = happyReduce_112 + +action_226 (66) = happyShift action_184 +action_226 (67) = happyShift action_185 +action_226 (68) = happyShift action_186 +action_226 _ = happyReduce_109 + +action_227 (61) = happyShift action_244 +action_227 _ = happyFail + +action_228 _ = happyReduce_108 + +action_229 (62) = happyShift action_243 +action_229 (66) = happyShift action_184 +action_229 (67) = happyShift action_185 +action_229 (68) = happyShift action_186 +action_229 (69) = happyShift action_187 +action_229 (70) = happyShift action_188 +action_229 (71) = happyShift action_189 +action_229 (72) = happyShift action_190 +action_229 (73) = happyShift action_191 +action_229 (74) = happyShift action_192 +action_229 (75) = happyShift action_193 +action_229 (80) = happyShift action_194 +action_229 (81) = happyShift action_195 +action_229 (82) = happyShift action_196 +action_229 (83) = happyShift action_197 +action_229 (84) = happyShift action_198 +action_229 (85) = happyShift action_199 +action_229 _ = happyFail + +action_230 (61) = happyShift action_123 +action_230 (65) = happyShift action_124 +action_230 (68) = happyShift action_125 +action_230 (69) = happyShift action_126 +action_230 (113) = happyShift action_19 +action_230 (114) = happyShift action_20 +action_230 (115) = happyShift action_21 +action_230 (116) = happyShift action_22 +action_230 (117) = happyShift action_23 +action_230 (118) = happyShift action_24 +action_230 (119) = happyShift action_25 +action_230 (120) = happyShift action_26 +action_230 (121) = happyShift action_27 +action_230 (122) = happyShift action_28 +action_230 (123) = happyShift action_127 +action_230 (124) = happyShift action_128 +action_230 (125) = happyShift action_129 +action_230 (126) = happyShift action_130 +action_230 (127) = happyShift action_131 +action_230 (35) = happyGoto action_242 +action_230 (36) = happyGoto action_119 +action_230 (43) = happyGoto action_120 +action_230 (53) = happyGoto action_121 +action_230 (54) = happyGoto action_9 +action_230 _ = happyFail + +action_231 (124) = happyShift action_241 +action_231 _ = happyFail + +action_232 _ = happyReduce_11 + +action_233 (60) = happyShift action_240 +action_233 _ = happyFail + +action_234 (76) = happyShift action_141 +action_234 (10) = happyGoto action_239 +action_234 _ = happyReduce_17 + +action_235 (125) = happyShift action_238 +action_235 _ = happyFail + +action_236 (60) = happyShift action_237 +action_236 _ = happyFail + +action_237 (56) = happyShift action_326 +action_237 _ = happyFail + +action_238 (56) = happyShift action_325 +action_238 _ = happyFail + +action_239 (62) = happyShift action_324 +action_239 _ = happyFail + +action_240 (56) = happyShift action_323 +action_240 _ = happyFail + +action_241 (64) = happyShift action_322 +action_241 _ = happyFail + +action_242 (60) = happyShift action_321 +action_242 (66) = happyShift action_184 +action_242 (67) = happyShift action_185 +action_242 (68) = happyShift action_186 +action_242 (69) = happyShift action_187 +action_242 (70) = happyShift action_188 +action_242 (71) = happyShift action_189 +action_242 (72) = happyShift action_190 +action_242 (73) = happyShift action_191 +action_242 (74) = happyShift action_192 +action_242 (75) = happyShift action_193 +action_242 (80) = happyShift action_194 +action_242 (81) = happyShift action_195 +action_242 (82) = happyShift action_196 +action_242 (83) = happyShift action_197 +action_242 (84) = happyShift action_198 +action_242 (85) = happyShift action_199 +action_242 _ = happyFail + +action_243 _ = happyReduce_118 + +action_244 (61) = happyShift action_123 +action_244 (65) = happyShift action_124 +action_244 (68) = happyShift action_125 +action_244 (69) = happyShift action_126 +action_244 (113) = happyShift action_19 +action_244 (114) = happyShift action_20 +action_244 (115) = happyShift action_21 +action_244 (116) = happyShift action_22 +action_244 (117) = happyShift action_23 +action_244 (118) = happyShift action_24 +action_244 (119) = happyShift action_25 +action_244 (120) = happyShift action_26 +action_244 (121) = happyShift action_27 +action_244 (122) = happyShift action_28 +action_244 (123) = happyShift action_127 +action_244 (124) = happyShift action_128 +action_244 (125) = happyShift action_129 +action_244 (126) = happyShift action_130 +action_244 (127) = happyShift action_131 +action_244 (35) = happyGoto action_209 +action_244 (36) = happyGoto action_119 +action_244 (41) = happyGoto action_320 +action_244 (42) = happyGoto action_211 +action_244 (43) = happyGoto action_120 +action_244 (53) = happyGoto action_121 +action_244 (54) = happyGoto action_9 +action_244 _ = happyReduce_127 + +action_245 _ = happyReduce_120 + +action_246 (125) = happyShift action_319 +action_246 _ = happyFail + +action_247 (126) = happyShift action_318 +action_247 _ = happyFail + +action_248 (126) = happyShift action_317 +action_248 _ = happyFail + +action_249 _ = happyReduce_30 + +action_250 (126) = happyShift action_316 +action_250 _ = happyFail + +action_251 _ = happyReduce_6 + +action_252 _ = happyReduce_18 + +action_253 (56) = happyShift action_315 +action_253 _ = happyFail + +action_254 (56) = happyShift action_79 +action_254 (57) = happyShift action_80 +action_254 (13) = happyGoto action_314 +action_254 _ = happyFail + +action_255 (110) = happyShift action_313 +action_255 (29) = happyGoto action_311 +action_255 (30) = happyGoto action_312 +action_255 _ = happyReduce_81 + +action_256 (126) = happyShift action_310 +action_256 _ = happyFail + +action_257 (56) = happyShift action_309 +action_257 _ = happyFail + +action_258 (61) = happyShift action_123 +action_258 (65) = happyShift action_124 +action_258 (68) = happyShift action_125 +action_258 (69) = happyShift action_126 +action_258 (113) = happyShift action_19 +action_258 (114) = happyShift action_20 +action_258 (115) = happyShift action_21 +action_258 (116) = happyShift action_22 +action_258 (117) = happyShift action_23 +action_258 (118) = happyShift action_24 +action_258 (119) = happyShift action_25 +action_258 (120) = happyShift action_26 +action_258 (121) = happyShift action_27 +action_258 (122) = happyShift action_28 +action_258 (123) = happyShift action_127 +action_258 (124) = happyShift action_128 +action_258 (125) = happyShift action_129 +action_258 (126) = happyShift action_130 +action_258 (127) = happyShift action_131 +action_258 (35) = happyGoto action_209 +action_258 (36) = happyGoto action_119 +action_258 (42) = happyGoto action_308 +action_258 (43) = happyGoto action_120 +action_258 (53) = happyGoto action_121 +action_258 (54) = happyGoto action_9 +action_258 _ = happyFail + +action_259 (56) = happyShift action_79 +action_259 (57) = happyShift action_80 +action_259 (13) = happyGoto action_307 +action_259 _ = happyFail + +action_260 _ = happyReduce_141 + +action_261 (62) = happyShift action_306 +action_261 _ = happyFail + +action_262 (60) = happyShift action_305 +action_262 _ = happyFail + +action_263 _ = happyReduce_74 + +action_264 (60) = happyShift action_304 +action_264 _ = happyFail + +action_265 (76) = happyShift action_303 +action_265 _ = happyReduce_77 + +action_266 _ = happyReduce_54 + +action_267 (62) = happyShift action_302 +action_267 _ = happyFail + +action_268 _ = happyReduce_59 + +action_269 (86) = happyShift action_201 +action_269 (87) = happyShift action_202 +action_269 _ = happyReduce_69 + +action_270 (86) = happyShift action_201 +action_270 _ = happyReduce_68 + +action_271 (58) = happyShift action_301 +action_271 _ = happyFail + +action_272 (66) = happyShift action_184 +action_272 (67) = happyShift action_185 +action_272 (68) = happyShift action_186 +action_272 (69) = happyShift action_187 +action_272 (70) = happyShift action_188 +action_272 (71) = happyShift action_189 +action_272 (72) = happyShift action_190 +action_272 (73) = happyShift action_191 +action_272 (74) = happyFail +action_272 (75) = happyFail +action_272 (80) = happyShift action_194 +action_272 (81) = happyShift action_195 +action_272 (82) = happyFail +action_272 (83) = happyFail +action_272 (84) = happyFail +action_272 (85) = happyFail +action_272 _ = happyReduce_106 + +action_273 (66) = happyShift action_184 +action_273 (67) = happyShift action_185 +action_273 (68) = happyShift action_186 +action_273 (69) = happyShift action_187 +action_273 (70) = happyShift action_188 +action_273 (71) = happyShift action_189 +action_273 (72) = happyShift action_190 +action_273 (73) = happyShift action_191 +action_273 (74) = happyFail +action_273 (75) = happyFail +action_273 (80) = happyShift action_194 +action_273 (81) = happyShift action_195 +action_273 (82) = happyFail +action_273 (83) = happyFail +action_273 (84) = happyFail +action_273 (85) = happyFail +action_273 _ = happyReduce_107 + +action_274 (66) = happyShift action_184 +action_274 (67) = happyShift action_185 +action_274 (68) = happyShift action_186 +action_274 (69) = happyShift action_187 +action_274 (70) = happyShift action_188 +action_274 (71) = happyShift action_189 +action_274 (72) = happyShift action_190 +action_274 (73) = happyShift action_191 +action_274 (74) = happyFail +action_274 (75) = happyFail +action_274 (80) = happyShift action_194 +action_274 (81) = happyShift action_195 +action_274 (82) = happyFail +action_274 (83) = happyFail +action_274 (84) = happyFail +action_274 (85) = happyFail +action_274 _ = happyReduce_104 + +action_275 (66) = happyShift action_184 +action_275 (67) = happyShift action_185 +action_275 (68) = happyShift action_186 +action_275 (69) = happyShift action_187 +action_275 (70) = happyShift action_188 +action_275 (71) = happyShift action_189 +action_275 (72) = happyShift action_190 +action_275 (73) = happyShift action_191 +action_275 (74) = happyFail +action_275 (75) = happyFail +action_275 (80) = happyShift action_194 +action_275 (81) = happyShift action_195 +action_275 (82) = happyFail +action_275 (83) = happyFail +action_275 (84) = happyFail +action_275 (85) = happyFail +action_275 _ = happyReduce_102 + +action_276 (66) = happyShift action_184 +action_276 (67) = happyShift action_185 +action_276 (68) = happyShift action_186 +action_276 (69) = happyShift action_187 +action_276 (70) = happyShift action_188 +action_276 _ = happyReduce_98 + +action_277 (66) = happyShift action_184 +action_277 (67) = happyShift action_185 +action_277 (68) = happyShift action_186 +action_277 (69) = happyShift action_187 +action_277 (70) = happyShift action_188 +action_277 _ = happyReduce_97 + +action_278 (66) = happyShift action_184 +action_278 (67) = happyShift action_185 +action_278 (68) = happyShift action_186 +action_278 (69) = happyShift action_187 +action_278 (70) = happyShift action_188 +action_278 (71) = happyShift action_189 +action_278 (72) = happyShift action_190 +action_278 (73) = happyShift action_191 +action_278 (74) = happyFail +action_278 (75) = happyFail +action_278 (80) = happyShift action_194 +action_278 (81) = happyShift action_195 +action_278 (82) = happyFail +action_278 (83) = happyFail +action_278 (84) = happyFail +action_278 (85) = happyFail +action_278 _ = happyReduce_105 + +action_279 (66) = happyShift action_184 +action_279 (67) = happyShift action_185 +action_279 (68) = happyShift action_186 +action_279 (69) = happyShift action_187 +action_279 (70) = happyShift action_188 +action_279 (71) = happyShift action_189 +action_279 (72) = happyShift action_190 +action_279 (73) = happyShift action_191 +action_279 (74) = happyFail +action_279 (75) = happyFail +action_279 (80) = happyShift action_194 +action_279 (81) = happyShift action_195 +action_279 (82) = happyFail +action_279 (83) = happyFail +action_279 (84) = happyFail +action_279 (85) = happyFail +action_279 _ = happyReduce_103 + +action_280 (66) = happyShift action_184 +action_280 (67) = happyShift action_185 +action_280 (68) = happyShift action_186 +action_280 (69) = happyShift action_187 +action_280 (70) = happyShift action_188 +action_280 (71) = happyShift action_189 +action_280 (72) = happyShift action_190 +action_280 (80) = happyShift action_194 +action_280 (81) = happyShift action_195 +action_280 _ = happyReduce_101 + +action_281 (66) = happyShift action_184 +action_281 (67) = happyShift action_185 +action_281 (68) = happyShift action_186 +action_281 (69) = happyShift action_187 +action_281 (70) = happyShift action_188 +action_281 (71) = happyShift action_189 +action_281 (80) = happyShift action_194 +action_281 (81) = happyShift action_195 +action_281 _ = happyReduce_100 + +action_282 (66) = happyShift action_184 +action_282 (67) = happyShift action_185 +action_282 (68) = happyShift action_186 +action_282 (69) = happyShift action_187 +action_282 (70) = happyShift action_188 +action_282 (80) = happyShift action_194 +action_282 (81) = happyShift action_195 +action_282 _ = happyReduce_99 + +action_283 (66) = happyShift action_184 +action_283 (67) = happyShift action_185 +action_283 (68) = happyShift action_186 +action_283 _ = happyReduce_96 + +action_284 (66) = happyShift action_184 +action_284 (67) = happyShift action_185 +action_284 (68) = happyShift action_186 +action_284 _ = happyReduce_95 + +action_285 _ = happyReduce_94 + +action_286 _ = happyReduce_93 + +action_287 _ = happyReduce_92 + +action_288 _ = happyReduce_71 + +action_289 _ = happyReduce_134 + +action_290 _ = happyReduce_137 + +action_291 (100) = happyShift action_300 +action_291 _ = happyFail + +action_292 (63) = happyShift action_299 +action_292 _ = happyFail + +action_293 _ = happyReduce_46 + +action_294 (61) = happyShift action_298 +action_294 _ = happyFail + +action_295 _ = happyReduce_63 + +action_296 (61) = happyShift action_297 +action_296 _ = happyFail + +action_297 (61) = happyShift action_123 +action_297 (65) = happyShift action_124 +action_297 (68) = happyShift action_125 +action_297 (69) = happyShift action_126 +action_297 (113) = happyShift action_19 +action_297 (114) = happyShift action_20 +action_297 (115) = happyShift action_21 +action_297 (116) = happyShift action_22 +action_297 (117) = happyShift action_23 +action_297 (118) = happyShift action_24 +action_297 (119) = happyShift action_25 +action_297 (120) = happyShift action_26 +action_297 (121) = happyShift action_27 +action_297 (122) = happyShift action_28 +action_297 (123) = happyShift action_127 +action_297 (124) = happyShift action_128 +action_297 (125) = happyShift action_129 +action_297 (126) = happyShift action_130 +action_297 (127) = happyShift action_131 +action_297 (35) = happyGoto action_209 +action_297 (36) = happyGoto action_119 +action_297 (41) = happyGoto action_351 +action_297 (42) = happyGoto action_211 +action_297 (43) = happyGoto action_120 +action_297 (53) = happyGoto action_121 +action_297 (54) = happyGoto action_9 +action_297 _ = happyReduce_127 + +action_298 (61) = happyShift action_123 +action_298 (65) = happyShift action_124 +action_298 (68) = happyShift action_125 +action_298 (69) = happyShift action_126 +action_298 (113) = happyShift action_19 +action_298 (114) = happyShift action_20 +action_298 (115) = happyShift action_21 +action_298 (116) = happyShift action_22 +action_298 (117) = happyShift action_23 +action_298 (118) = happyShift action_24 +action_298 (119) = happyShift action_25 +action_298 (120) = happyShift action_26 +action_298 (121) = happyShift action_27 +action_298 (122) = happyShift action_28 +action_298 (123) = happyShift action_127 +action_298 (124) = happyShift action_128 +action_298 (125) = happyShift action_129 +action_298 (126) = happyShift action_130 +action_298 (127) = happyShift action_131 +action_298 (35) = happyGoto action_347 +action_298 (36) = happyGoto action_119 +action_298 (38) = happyGoto action_348 +action_298 (39) = happyGoto action_349 +action_298 (40) = happyGoto action_350 +action_298 (43) = happyGoto action_120 +action_298 (53) = happyGoto action_121 +action_298 (54) = happyGoto action_9 +action_298 _ = happyReduce_121 + +action_299 (61) = happyShift action_123 +action_299 (65) = happyShift action_124 +action_299 (68) = happyShift action_125 +action_299 (69) = happyShift action_126 +action_299 (113) = happyShift action_19 +action_299 (114) = happyShift action_20 +action_299 (115) = happyShift action_21 +action_299 (116) = happyShift action_22 +action_299 (117) = happyShift action_23 +action_299 (118) = happyShift action_24 +action_299 (119) = happyShift action_25 +action_299 (120) = happyShift action_26 +action_299 (121) = happyShift action_27 +action_299 (122) = happyShift action_28 +action_299 (123) = happyShift action_127 +action_299 (124) = happyShift action_128 +action_299 (125) = happyShift action_129 +action_299 (126) = happyShift action_130 +action_299 (127) = happyShift action_131 +action_299 (35) = happyGoto action_346 +action_299 (36) = happyGoto action_119 +action_299 (43) = happyGoto action_120 +action_299 (53) = happyGoto action_121 +action_299 (54) = happyGoto action_9 +action_299 _ = happyFail + +action_300 (61) = happyShift action_123 +action_300 (65) = happyShift action_124 +action_300 (68) = happyShift action_125 +action_300 (69) = happyShift action_126 +action_300 (113) = happyShift action_19 +action_300 (114) = happyShift action_20 +action_300 (115) = happyShift action_21 +action_300 (116) = happyShift action_22 +action_300 (117) = happyShift action_23 +action_300 (118) = happyShift action_24 +action_300 (119) = happyShift action_25 +action_300 (120) = happyShift action_26 +action_300 (121) = happyShift action_27 +action_300 (122) = happyShift action_28 +action_300 (123) = happyShift action_127 +action_300 (124) = happyShift action_128 +action_300 (125) = happyShift action_129 +action_300 (126) = happyShift action_130 +action_300 (127) = happyShift action_131 +action_300 (35) = happyGoto action_345 +action_300 (36) = happyGoto action_119 +action_300 (43) = happyGoto action_120 +action_300 (53) = happyGoto action_121 +action_300 (54) = happyGoto action_9 +action_300 _ = happyFail + +action_301 (94) = happyShift action_344 +action_301 (34) = happyGoto action_343 +action_301 _ = happyReduce_90 + +action_302 (56) = happyShift action_342 +action_302 _ = happyFail + +action_303 (123) = happyShift action_265 +action_303 (27) = happyGoto action_341 +action_303 _ = happyFail + +action_304 _ = happyReduce_75 + +action_305 _ = happyReduce_76 + +action_306 (56) = happyShift action_339 +action_306 (61) = happyShift action_340 +action_306 _ = happyFail + +action_307 _ = happyReduce_62 + +action_308 _ = happyReduce_130 + +action_309 _ = happyReduce_53 + +action_310 (60) = happyShift action_338 +action_310 _ = happyFail + +action_311 (111) = happyShift action_337 +action_311 (33) = happyGoto action_336 +action_311 _ = happyReduce_89 + +action_312 (110) = happyShift action_313 +action_312 (29) = happyGoto action_335 +action_312 (30) = happyGoto action_312 +action_312 _ = happyReduce_81 + +action_313 (126) = happyShift action_334 +action_313 (32) = happyGoto action_333 +action_313 _ = happyFail + +action_314 _ = happyReduce_61 + +action_315 _ = happyReduce_50 + +action_316 (76) = happyShift action_332 +action_316 _ = happyFail + +action_317 (76) = happyShift action_331 +action_317 _ = happyFail + +action_318 (76) = happyShift action_330 +action_318 _ = happyFail + +action_319 (76) = happyShift action_329 +action_319 _ = happyFail + +action_320 (62) = happyShift action_328 +action_320 _ = happyFail + +action_321 _ = happyReduce_116 + +action_322 (61) = happyShift action_123 +action_322 (68) = happyShift action_125 +action_322 (113) = happyShift action_19 +action_322 (114) = happyShift action_20 +action_322 (115) = happyShift action_21 +action_322 (116) = happyShift action_22 +action_322 (117) = happyShift action_23 +action_322 (118) = happyShift action_24 +action_322 (119) = happyShift action_25 +action_322 (120) = happyShift action_26 +action_322 (121) = happyShift action_27 +action_322 (122) = happyShift action_28 +action_322 (123) = happyShift action_127 +action_322 (124) = happyShift action_128 +action_322 (125) = happyShift action_129 +action_322 (126) = happyShift action_130 +action_322 (127) = happyShift action_131 +action_322 (36) = happyGoto action_327 +action_322 (43) = happyGoto action_120 +action_322 (53) = happyGoto action_121 +action_322 (54) = happyGoto action_9 +action_322 _ = happyFail + +action_323 _ = happyReduce_15 + +action_324 _ = happyReduce_16 + +action_325 _ = happyReduce_13 + +action_326 _ = happyReduce_14 + +action_327 _ = happyReduce_110 + +action_328 _ = happyReduce_117 + +action_329 (125) = happyShift action_367 +action_329 _ = happyFail + +action_330 (126) = happyShift action_366 +action_330 _ = happyFail + +action_331 (125) = happyShift action_365 +action_331 _ = happyFail + +action_332 (125) = happyShift action_364 +action_332 _ = happyFail + +action_333 (55) = happyShift action_363 +action_333 _ = happyFail + +action_334 (76) = happyShift action_362 +action_334 _ = happyReduce_86 + +action_335 _ = happyReduce_82 + +action_336 (58) = happyShift action_361 +action_336 _ = happyFail + +action_337 (55) = happyShift action_360 +action_337 _ = happyFail + +action_338 _ = happyReduce_79 + +action_339 _ = happyReduce_55 + +action_340 (61) = happyShift action_123 +action_340 (65) = happyShift action_124 +action_340 (68) = happyShift action_125 +action_340 (69) = happyShift action_126 +action_340 (113) = happyShift action_19 +action_340 (114) = happyShift action_20 +action_340 (115) = happyShift action_21 +action_340 (116) = happyShift action_22 +action_340 (117) = happyShift action_23 +action_340 (118) = happyShift action_24 +action_340 (119) = happyShift action_25 +action_340 (120) = happyShift action_26 +action_340 (121) = happyShift action_27 +action_340 (122) = happyShift action_28 +action_340 (123) = happyShift action_127 +action_340 (124) = happyShift action_128 +action_340 (125) = happyShift action_129 +action_340 (126) = happyShift action_130 +action_340 (127) = happyShift action_131 +action_340 (35) = happyGoto action_209 +action_340 (36) = happyGoto action_119 +action_340 (41) = happyGoto action_359 +action_340 (42) = happyGoto action_211 +action_340 (43) = happyGoto action_120 +action_340 (53) = happyGoto action_121 +action_340 (54) = happyGoto action_9 +action_340 _ = happyReduce_127 + +action_341 _ = happyReduce_78 + +action_342 _ = happyReduce_57 + +action_343 _ = happyReduce_60 + +action_344 (57) = happyShift action_358 +action_344 _ = happyFail + +action_345 (61) = happyShift action_357 +action_345 (66) = happyShift action_184 +action_345 (67) = happyShift action_185 +action_345 (68) = happyShift action_186 +action_345 (69) = happyShift action_187 +action_345 (70) = happyShift action_188 +action_345 (71) = happyShift action_189 +action_345 (72) = happyShift action_190 +action_345 (73) = happyShift action_191 +action_345 (74) = happyShift action_192 +action_345 (75) = happyShift action_193 +action_345 (80) = happyShift action_194 +action_345 (81) = happyShift action_195 +action_345 (82) = happyShift action_196 +action_345 (83) = happyShift action_197 +action_345 (84) = happyShift action_198 +action_345 (85) = happyShift action_199 +action_345 _ = happyFail + +action_346 (56) = happyShift action_356 +action_346 (66) = happyShift action_184 +action_346 (67) = happyShift action_185 +action_346 (68) = happyShift action_186 +action_346 (69) = happyShift action_187 +action_346 (70) = happyShift action_188 +action_346 (71) = happyShift action_189 +action_346 (72) = happyShift action_190 +action_346 (73) = happyShift action_191 +action_346 (74) = happyShift action_192 +action_346 (75) = happyShift action_193 +action_346 (80) = happyShift action_194 +action_346 (81) = happyShift action_195 +action_346 (82) = happyShift action_196 +action_346 (83) = happyShift action_197 +action_346 (84) = happyShift action_198 +action_346 (85) = happyShift action_199 +action_346 _ = happyFail + +action_347 (66) = happyShift action_184 +action_347 (67) = happyShift action_185 +action_347 (68) = happyShift action_186 +action_347 (69) = happyShift action_187 +action_347 (70) = happyShift action_188 +action_347 (71) = happyShift action_189 +action_347 (72) = happyShift action_190 +action_347 (73) = happyShift action_191 +action_347 (74) = happyShift action_192 +action_347 (75) = happyShift action_193 +action_347 (80) = happyShift action_194 +action_347 (81) = happyShift action_195 +action_347 (82) = happyShift action_196 +action_347 (83) = happyShift action_197 +action_347 (84) = happyShift action_198 +action_347 (85) = happyShift action_199 +action_347 (125) = happyShift action_355 +action_347 _ = happyReduce_125 + +action_348 (62) = happyShift action_354 +action_348 _ = happyFail + +action_349 _ = happyReduce_122 + +action_350 (76) = happyShift action_353 +action_350 _ = happyReduce_123 + +action_351 (62) = happyShift action_352 +action_351 _ = happyFail + +action_352 (56) = happyShift action_383 +action_352 _ = happyFail + +action_353 (61) = happyShift action_123 +action_353 (65) = happyShift action_124 +action_353 (68) = happyShift action_125 +action_353 (69) = happyShift action_126 +action_353 (113) = happyShift action_19 +action_353 (114) = happyShift action_20 +action_353 (115) = happyShift action_21 +action_353 (116) = happyShift action_22 +action_353 (117) = happyShift action_23 +action_353 (118) = happyShift action_24 +action_353 (119) = happyShift action_25 +action_353 (120) = happyShift action_26 +action_353 (121) = happyShift action_27 +action_353 (122) = happyShift action_28 +action_353 (123) = happyShift action_127 +action_353 (124) = happyShift action_128 +action_353 (125) = happyShift action_129 +action_353 (126) = happyShift action_130 +action_353 (127) = happyShift action_131 +action_353 (35) = happyGoto action_347 +action_353 (36) = happyGoto action_119 +action_353 (39) = happyGoto action_382 +action_353 (40) = happyGoto action_350 +action_353 (43) = happyGoto action_120 +action_353 (53) = happyGoto action_121 +action_353 (54) = happyGoto action_9 +action_353 _ = happyFail + +action_354 (125) = happyShift action_381 +action_354 (25) = happyGoto action_380 +action_354 _ = happyReduce_72 + +action_355 _ = happyReduce_126 + +action_356 _ = happyReduce_47 + +action_357 (61) = happyShift action_123 +action_357 (65) = happyShift action_124 +action_357 (68) = happyShift action_125 +action_357 (69) = happyShift action_126 +action_357 (113) = happyShift action_19 +action_357 (114) = happyShift action_20 +action_357 (115) = happyShift action_21 +action_357 (116) = happyShift action_22 +action_357 (117) = happyShift action_23 +action_357 (118) = happyShift action_24 +action_357 (119) = happyShift action_25 +action_357 (120) = happyShift action_26 +action_357 (121) = happyShift action_27 +action_357 (122) = happyShift action_28 +action_357 (123) = happyShift action_127 +action_357 (124) = happyShift action_128 +action_357 (125) = happyShift action_129 +action_357 (126) = happyShift action_130 +action_357 (127) = happyShift action_131 +action_357 (35) = happyGoto action_209 +action_357 (36) = happyGoto action_119 +action_357 (41) = happyGoto action_379 +action_357 (42) = happyGoto action_211 +action_357 (43) = happyGoto action_120 +action_357 (53) = happyGoto action_121 +action_357 (54) = happyGoto action_9 +action_357 _ = happyReduce_127 + +action_358 (56) = happyShift action_87 +action_358 (61) = happyShift action_88 +action_358 (95) = happyShift action_16 +action_358 (98) = happyShift action_89 +action_358 (99) = happyShift action_90 +action_358 (100) = happyShift action_91 +action_358 (101) = happyShift action_92 +action_358 (102) = happyReduce_133 +action_358 (104) = happyReduce_133 +action_358 (105) = happyShift action_93 +action_358 (106) = happyShift action_94 +action_358 (108) = happyShift action_18 +action_358 (109) = happyShift action_95 +action_358 (112) = happyShift action_96 +action_358 (113) = happyShift action_19 +action_358 (114) = happyShift action_20 +action_358 (115) = happyShift action_21 +action_358 (116) = happyShift action_22 +action_358 (117) = happyShift action_23 +action_358 (118) = happyShift action_24 +action_358 (119) = happyShift action_25 +action_358 (120) = happyShift action_26 +action_358 (121) = happyShift action_27 +action_358 (122) = happyShift action_28 +action_358 (123) = happyShift action_97 +action_358 (124) = happyShift action_98 +action_358 (15) = happyGoto action_378 +action_358 (16) = happyGoto action_82 +action_358 (20) = happyGoto action_83 +action_358 (44) = happyGoto action_84 +action_358 (48) = happyGoto action_85 +action_358 (53) = happyGoto action_86 +action_358 (54) = happyGoto action_9 +action_358 _ = happyReduce_31 + +action_359 (62) = happyShift action_377 +action_359 _ = happyFail + +action_360 (57) = happyShift action_376 +action_360 _ = happyFail + +action_361 _ = happyReduce_51 + +action_362 (126) = happyShift action_334 +action_362 (32) = happyGoto action_375 +action_362 _ = happyFail + +action_363 (57) = happyShift action_373 +action_363 (98) = happyShift action_374 +action_363 (31) = happyGoto action_372 +action_363 _ = happyFail + +action_364 (76) = happyShift action_371 +action_364 _ = happyFail + +action_365 (76) = happyShift action_370 +action_365 _ = happyFail + +action_366 (76) = happyShift action_369 +action_366 _ = happyFail + +action_367 (62) = happyShift action_368 +action_367 _ = happyFail + +action_368 _ = happyReduce_28 + +action_369 (125) = happyShift action_394 +action_369 _ = happyFail + +action_370 (125) = happyShift action_393 +action_370 _ = happyFail + +action_371 (125) = happyShift action_392 +action_371 _ = happyFail + +action_372 _ = happyReduce_83 + +action_373 (56) = happyShift action_87 +action_373 (61) = happyShift action_88 +action_373 (95) = happyShift action_16 +action_373 (98) = happyShift action_89 +action_373 (99) = happyShift action_90 +action_373 (100) = happyShift action_91 +action_373 (101) = happyShift action_92 +action_373 (102) = happyReduce_133 +action_373 (104) = happyReduce_133 +action_373 (105) = happyShift action_93 +action_373 (106) = happyShift action_94 +action_373 (108) = happyShift action_18 +action_373 (109) = happyShift action_95 +action_373 (112) = happyShift action_96 +action_373 (113) = happyShift action_19 +action_373 (114) = happyShift action_20 +action_373 (115) = happyShift action_21 +action_373 (116) = happyShift action_22 +action_373 (117) = happyShift action_23 +action_373 (118) = happyShift action_24 +action_373 (119) = happyShift action_25 +action_373 (120) = happyShift action_26 +action_373 (121) = happyShift action_27 +action_373 (122) = happyShift action_28 +action_373 (123) = happyShift action_97 +action_373 (124) = happyShift action_98 +action_373 (15) = happyGoto action_391 +action_373 (16) = happyGoto action_82 +action_373 (20) = happyGoto action_83 +action_373 (44) = happyGoto action_84 +action_373 (48) = happyGoto action_85 +action_373 (53) = happyGoto action_86 +action_373 (54) = happyGoto action_9 +action_373 _ = happyReduce_31 + +action_374 (124) = happyShift action_390 +action_374 _ = happyFail + +action_375 _ = happyReduce_87 + +action_376 (56) = happyShift action_87 +action_376 (61) = happyShift action_88 +action_376 (95) = happyShift action_16 +action_376 (98) = happyShift action_89 +action_376 (99) = happyShift action_90 +action_376 (100) = happyShift action_91 +action_376 (101) = happyShift action_92 +action_376 (102) = happyReduce_133 +action_376 (104) = happyReduce_133 +action_376 (105) = happyShift action_93 +action_376 (106) = happyShift action_94 +action_376 (108) = happyShift action_18 +action_376 (109) = happyShift action_95 +action_376 (112) = happyShift action_96 +action_376 (113) = happyShift action_19 +action_376 (114) = happyShift action_20 +action_376 (115) = happyShift action_21 +action_376 (116) = happyShift action_22 +action_376 (117) = happyShift action_23 +action_376 (118) = happyShift action_24 +action_376 (119) = happyShift action_25 +action_376 (120) = happyShift action_26 +action_376 (121) = happyShift action_27 +action_376 (122) = happyShift action_28 +action_376 (123) = happyShift action_97 +action_376 (124) = happyShift action_98 +action_376 (15) = happyGoto action_389 +action_376 (16) = happyGoto action_82 +action_376 (20) = happyGoto action_83 +action_376 (44) = happyGoto action_84 +action_376 (48) = happyGoto action_85 +action_376 (53) = happyGoto action_86 +action_376 (54) = happyGoto action_9 +action_376 _ = happyReduce_31 + +action_377 (56) = happyShift action_388 +action_377 _ = happyFail + +action_378 (58) = happyShift action_387 +action_378 _ = happyFail + +action_379 (62) = happyShift action_386 +action_379 _ = happyFail + +action_380 (103) = happyShift action_385 +action_380 (22) = happyGoto action_384 +action_380 _ = happyReduce_64 + +action_381 _ = happyReduce_73 + +action_382 _ = happyReduce_124 + +action_383 _ = happyReduce_49 + +action_384 (56) = happyShift action_403 +action_384 _ = happyFail + +action_385 (107) = happyShift action_402 +action_385 _ = happyFail + +action_386 (56) = happyShift action_401 +action_386 _ = happyFail + +action_387 _ = happyReduce_91 + +action_388 _ = happyReduce_56 + +action_389 (58) = happyShift action_400 +action_389 _ = happyFail + +action_390 (56) = happyShift action_399 +action_390 _ = happyFail + +action_391 (58) = happyShift action_398 +action_391 _ = happyFail + +action_392 (62) = happyShift action_397 +action_392 _ = happyFail + +action_393 (76) = happyShift action_396 +action_393 _ = happyFail + +action_394 (76) = happyShift action_395 +action_394 _ = happyFail + +action_395 (125) = happyShift action_405 +action_395 _ = happyFail + +action_396 (126) = happyShift action_404 +action_396 _ = happyFail + +action_397 _ = happyReduce_25 + +action_398 _ = happyReduce_84 + +action_399 _ = happyReduce_85 + +action_400 _ = happyReduce_88 + +action_401 _ = happyReduce_58 + +action_402 _ = happyReduce_65 + +action_403 _ = happyReduce_48 + +action_404 (62) = happyShift action_407 +action_404 _ = happyFail + +action_405 (62) = happyShift action_406 +action_405 _ = happyFail + +action_406 _ = happyReduce_27 -happy_n_terms = 75 :: Int -happy_n_nonterms = 51 :: Int +action_407 _ = happyReduce_26 -happyReduce_1 = happySpecReduce_0 0# happyReduction_1 -happyReduction_1 = happyIn4 +happyReduce_1 = happySpecReduce_0 4 happyReduction_1 +happyReduction_1 = HappyAbsSyn4 (return () ) -happyReduce_2 = happySpecReduce_2 0# happyReduction_2 -happyReduction_2 happy_x_2 - happy_x_1 - = case happyOut5 happy_x_1 of { happy_var_1 -> - case happyOut4 happy_x_2 of { happy_var_2 -> - happyIn4 +happyReduce_2 = happySpecReduce_2 4 happyReduction_2 +happyReduction_2 (HappyAbsSyn4 happy_var_2) + (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (do happy_var_1; happy_var_2 - )}} + ) +happyReduction_2 _ _ = notHappyAtAll -happyReduce_3 = happySpecReduce_1 1# happyReduction_3 -happyReduction_3 happy_x_1 - = case happyOut11 happy_x_1 of { happy_var_1 -> - happyIn5 +happyReduce_3 = happySpecReduce_1 5 happyReduction_3 +happyReduction_3 (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (happy_var_1 - )} + ) +happyReduction_3 _ = notHappyAtAll -happyReduce_4 = happySpecReduce_1 1# happyReduction_4 -happyReduction_4 happy_x_1 - = case happyOut6 happy_x_1 of { happy_var_1 -> - happyIn5 +happyReduce_4 = happySpecReduce_1 5 happyReduction_4 +happyReduction_4 (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (happy_var_1 - )} + ) +happyReduction_4 _ = notHappyAtAll -happyReduce_5 = happySpecReduce_1 1# happyReduction_5 -happyReduction_5 happy_x_1 - = case happyOut16 happy_x_1 of { happy_var_1 -> - happyIn5 +happyReduce_5 = happySpecReduce_1 5 happyReduction_5 +happyReduction_5 (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (happy_var_1 - )} + ) +happyReduction_5 _ = notHappyAtAll -happyReduce_6 = happyMonadReduce 8# 1# happyReduction_6 -happyReduction_6 (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` +happyReduce_6 = happyMonadReduce 8 5 happyReduction_6 +happyReduction_6 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_6) `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Name happy_var_5)) -> - case happyOut10 happy_x_6 of { happy_var_6 -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do lits <- sequence happy_var_6; - staticClosure pkg happy_var_3 happy_var_5 (map getLit lits))}}} - ) (\r -> happyReturn (happyIn5 r)) + staticClosure pkg happy_var_3 happy_var_5 (map getLit lits)) + ) (\r -> happyReturn (HappyAbsSyn4 r)) -happyReduce_7 = happyReduce 6# 2# happyReduction_7 -happyReduction_7 (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 happyOutTok happy_x_2 of { (L _ (CmmT_String happy_var_2)) -> - case happyOut7 happy_x_4 of { happy_var_4 -> - case happyOut8 happy_x_5 of { happy_var_5 -> - happyIn6 +happyReduce_7 = happyReduce 6 6 happyReduction_7 +happyReduction_7 (_ `HappyStk` + (HappyAbsSyn8 happy_var_5) `HappyStk` + (HappyAbsSyn7 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_2))) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (do lbl <- happy_var_4; ss <- sequence happy_var_5; code (emitDecl (CmmData (section happy_var_2) (Statics lbl $ concat ss))) - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_8 = happyMonadReduce 2# 3# happyReduction_8 -happyReduction_8 (happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_8 = happyMonadReduce 2 7 happyReduction_8 +happyReduction_8 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_1))) `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - ( withThisPackage $ \pkg -> - return (mkCmmDataLabel pkg happy_var_1))} - ) (\r -> happyReturn (happyIn7 r)) + = happyThen (( withThisPackage $ \pkg -> + return (mkCmmDataLabel pkg happy_var_1)) + ) (\r -> happyReturn (HappyAbsSyn7 r)) -happyReduce_9 = happySpecReduce_0 4# happyReduction_9 -happyReduction_9 = happyIn8 +happyReduce_9 = happySpecReduce_0 8 happyReduction_9 +happyReduction_9 = HappyAbsSyn8 ([] ) -happyReduce_10 = happySpecReduce_2 4# happyReduction_10 -happyReduction_10 happy_x_2 - happy_x_1 - = case happyOut9 happy_x_1 of { happy_var_1 -> - case happyOut8 happy_x_2 of { happy_var_2 -> - happyIn8 +happyReduce_10 = happySpecReduce_2 8 happyReduction_10 +happyReduction_10 (HappyAbsSyn8 happy_var_2) + (HappyAbsSyn9 happy_var_1) + = HappyAbsSyn8 (happy_var_1 : happy_var_2 - )}} + ) +happyReduction_10 _ _ = notHappyAtAll -happyReduce_11 = happySpecReduce_3 5# happyReduction_11 -happyReduction_11 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_2 of { happy_var_2 -> - happyIn9 +happyReduce_11 = happySpecReduce_3 9 happyReduction_11 +happyReduction_11 _ + (HappyAbsSyn21 happy_var_2) + _ + = HappyAbsSyn9 (do e <- happy_var_2; return [CmmStaticLit (getLit e)] - )} + ) +happyReduction_11 _ _ _ = notHappyAtAll -happyReduce_12 = happySpecReduce_2 5# happyReduction_12 -happyReduction_12 happy_x_2 - happy_x_1 - = case happyOut53 happy_x_1 of { happy_var_1 -> - happyIn9 +happyReduce_12 = happySpecReduce_2 9 happyReduction_12 +happyReduction_12 _ + (HappyAbsSyn37 happy_var_1) + = HappyAbsSyn9 (return [CmmUninitialised (widthInBytes (typeWidth happy_var_1))] - )} + ) +happyReduction_12 _ _ = notHappyAtAll -happyReduce_13 = happyReduce 5# 5# happyReduction_13 -happyReduction_13 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_13 = happyReduce 5 9 happyReduction_13 +happyReduction_13 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_4))) `HappyStk` + _ `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) - = case happyOutTok happy_x_4 of { (L _ (CmmT_String happy_var_4)) -> - happyIn9 + = HappyAbsSyn9 (return [mkString happy_var_4] - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_14 = happyReduce 5# 5# happyReduction_14 -happyReduction_14 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_14 = happyReduce 5 9 happyReduction_14 +happyReduction_14 (_ `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) - = case happyOutTok happy_x_3 of { (L _ (CmmT_Int happy_var_3)) -> - happyIn9 + = HappyAbsSyn9 (return [CmmUninitialised (fromIntegral happy_var_3)] - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_15 = happyReduce 5# 5# happyReduction_15 -happyReduction_15 (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_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { (L _ (CmmT_Int happy_var_3)) -> - happyIn9 +happyReduce_15 = happyReduce 5 9 happyReduction_15 +happyReduction_15 (_ `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_3))) `HappyStk` + _ `HappyStk` + (HappyAbsSyn37 happy_var_1) `HappyStk` + happyRest) + = HappyAbsSyn9 (return [CmmUninitialised (widthInBytes (typeWidth happy_var_1) * fromIntegral happy_var_3)] - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_16 = happyReduce 5# 5# happyReduction_16 -happyReduction_16 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOut10 happy_x_4 of { happy_var_4 -> - happyIn9 +happyReduce_16 = happyReduce 5 9 happyReduction_16 +happyReduction_16 (_ `HappyStk` + (HappyAbsSyn10 happy_var_4) `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn9 (do { lits <- sequence happy_var_4 ; dflags <- getDynFlags ; return $ map CmmStaticLit $ @@ -741,34 +3923,29 @@ happyReduction_16 (happy_x_5 `HappyStk` -- mkForeignLabel because these are only used -- for CHARLIKE and INTLIKE closures in the RTS. dontCareCCS (map getLit lits) [] [] [] } - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_17 = happySpecReduce_0 6# happyReduction_17 -happyReduction_17 = happyIn10 +happyReduce_17 = happySpecReduce_0 10 happyReduction_17 +happyReduction_17 = HappyAbsSyn10 ([] ) -happyReduce_18 = happySpecReduce_3 6# happyReduction_18 -happyReduction_18 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut10 happy_x_3 of { happy_var_3 -> - happyIn10 +happyReduce_18 = happySpecReduce_3 10 happyReduction_18 +happyReduction_18 (HappyAbsSyn10 happy_var_3) + (HappyAbsSyn21 happy_var_2) + _ + = HappyAbsSyn10 (happy_var_2 : happy_var_3 - )}} + ) +happyReduction_18 _ _ _ = notHappyAtAll -happyReduce_19 = happyReduce 4# 7# happyReduction_19 -happyReduction_19 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut14 happy_x_1 of { happy_var_1 -> - case happyOut12 happy_x_2 of { happy_var_2 -> - case happyOut49 happy_x_3 of { happy_var_3 -> - case happyOut13 happy_x_4 of { happy_var_4 -> - happyIn11 +happyReduce_19 = happyReduce 4 11 happyReduction_19 +happyReduction_19 ((HappyAbsSyn4 happy_var_4) `HappyStk` + (HappyAbsSyn49 happy_var_3) `HappyStk` + (HappyAbsSyn12 happy_var_2) `HappyStk` + (HappyAbsSyn14 happy_var_1) `HappyStk` + happyRest) + = HappyAbsSyn4 (do ((entry_ret_label, info, stk_formals, formals), agraph) <- getCodeR $ loopDecls $ do { (entry_ret_label, info, stk_formals) <- happy_var_1; @@ -779,66 +3956,59 @@ happyReduction_19 (happy_x_4 `HappyStk` code (emitProcWithStackFrame happy_var_2 info entry_ret_label stk_formals formals agraph do_layout ) - ) `HappyStk` happyRest}}}} + ) `HappyStk` happyRest -happyReduce_20 = happySpecReduce_0 8# happyReduction_20 -happyReduction_20 = happyIn12 +happyReduce_20 = happySpecReduce_0 12 happyReduction_20 +happyReduction_20 = HappyAbsSyn12 (NativeNodeCall ) -happyReduce_21 = happySpecReduce_1 8# happyReduction_21 -happyReduction_21 happy_x_1 - = happyIn12 +happyReduce_21 = happySpecReduce_1 12 happyReduction_21 +happyReduction_21 _ + = HappyAbsSyn12 (NativeReturn ) -happyReduce_22 = happySpecReduce_1 9# happyReduction_22 -happyReduction_22 happy_x_1 - = happyIn13 +happyReduce_22 = happySpecReduce_1 13 happyReduction_22 +happyReduction_22 _ + = HappyAbsSyn4 (return () ) -happyReduce_23 = happySpecReduce_3 9# happyReduction_23 -happyReduction_23 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut15 happy_x_2 of { happy_var_2 -> - happyIn13 +happyReduce_23 = happySpecReduce_3 13 happyReduction_23 +happyReduction_23 _ + (HappyAbsSyn4 happy_var_2) + _ + = HappyAbsSyn4 (happy_var_2 - )} + ) +happyReduction_23 _ _ _ = notHappyAtAll -happyReduce_24 = happyMonadReduce 1# 10# happyReduction_24 -happyReduction_24 (happy_x_1 `HappyStk` +happyReduce_24 = happyMonadReduce 1 14 happyReduction_24 +happyReduction_24 ((HappyTerminal (L _ (CmmT_Name happy_var_1))) `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do newFunctionName happy_var_1 pkg - return (mkCmmCodeLabel pkg happy_var_1, Nothing, []))} - ) (\r -> happyReturn (happyIn14 r)) + return (mkCmmCodeLabel pkg happy_var_1, Nothing, [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_25 = happyMonadReduce 14# 10# happyReduction_25 -happyReduction_25 (happy_x_14 `HappyStk` - happy_x_13 `HappyStk` - happy_x_12 `HappyStk` - happy_x_11 `HappyStk` - 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` +happyReduce_25 = happyMonadReduce 14 14 happyReduction_25 +happyReduction_25 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_13))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_11))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_9))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_7))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - case happyOutTok happy_x_7 of { (L _ (CmmT_Int happy_var_7)) -> - case happyOutTok happy_x_9 of { (L _ (CmmT_Int happy_var_9)) -> - case happyOutTok happy_x_11 of { (L _ (CmmT_String happy_var_11)) -> - case happyOutTok happy_x_13 of { (L _ (CmmT_String happy_var_13)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do dflags <- getDynFlags let prof = profilingInfo dflags happy_var_11 happy_var_13 rep = mkRTSRep (fromIntegral happy_var_9) $ @@ -850,35 +4020,28 @@ happyReduction_25 (happy_x_14 `HappyStk` Just $ CmmInfoTable { cit_lbl = mkCmmInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - []))}}}}}} - ) (\r -> happyReturn (happyIn14 r)) + [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_26 = happyMonadReduce 16# 10# happyReduction_26 -happyReduction_26 (happy_x_16 `HappyStk` - happy_x_15 `HappyStk` - happy_x_14 `HappyStk` - happy_x_13 `HappyStk` - happy_x_12 `HappyStk` - happy_x_11 `HappyStk` - 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` +happyReduce_26 = happyMonadReduce 16 14 happyReduction_26 +happyReduction_26 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_15))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_13))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_11))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_9))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_7))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - case happyOutTok happy_x_7 of { (L _ (CmmT_Int happy_var_7)) -> - case happyOutTok happy_x_9 of { (L _ (CmmT_Int happy_var_9)) -> - case happyOutTok happy_x_11 of { (L _ (CmmT_String happy_var_11)) -> - case happyOutTok happy_x_13 of { (L _ (CmmT_String happy_var_13)) -> - case happyOutTok happy_x_15 of { (L _ (CmmT_Int happy_var_15)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do dflags <- getDynFlags let prof = profilingInfo dflags happy_var_11 happy_var_13 ty = Fun 0 (ArgSpec (fromIntegral happy_var_15)) @@ -890,35 +4053,28 @@ happyReduction_26 (happy_x_16 `HappyStk` Just $ CmmInfoTable { cit_lbl = mkCmmInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - []))}}}}}}} - ) (\r -> happyReturn (happyIn14 r)) + [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_27 = happyMonadReduce 16# 10# happyReduction_27 -happyReduction_27 (happy_x_16 `HappyStk` - happy_x_15 `HappyStk` - happy_x_14 `HappyStk` - happy_x_13 `HappyStk` - happy_x_12 `HappyStk` - happy_x_11 `HappyStk` - 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` +happyReduce_27 = happyMonadReduce 16 14 happyReduction_27 +happyReduction_27 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_15))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_13))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_11))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_9))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_7))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - case happyOutTok happy_x_7 of { (L _ (CmmT_Int happy_var_7)) -> - case happyOutTok happy_x_9 of { (L _ (CmmT_Int happy_var_9)) -> - case happyOutTok happy_x_11 of { (L _ (CmmT_Int happy_var_11)) -> - case happyOutTok happy_x_13 of { (L _ (CmmT_String happy_var_13)) -> - case happyOutTok happy_x_15 of { (L _ (CmmT_String happy_var_15)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do dflags <- getDynFlags let prof = profilingInfo dflags happy_var_13 happy_var_15 ty = Constr (fromIntegral happy_var_9) -- Tag @@ -930,29 +4086,24 @@ happyReduction_27 (happy_x_16 `HappyStk` Just $ CmmInfoTable { cit_lbl = mkCmmInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - []))}}}}}}} - ) (\r -> happyReturn (happyIn14 r)) + [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_28 = happyMonadReduce 12# 10# happyReduction_28 -happyReduction_28 (happy_x_12 `HappyStk` - happy_x_11 `HappyStk` - 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` +happyReduce_28 = happyMonadReduce 12 14 happyReduction_28 +happyReduction_28 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_11))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_9))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_7))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - case happyOutTok happy_x_7 of { (L _ (CmmT_Int happy_var_7)) -> - case happyOutTok happy_x_9 of { (L _ (CmmT_String happy_var_9)) -> - case happyOutTok happy_x_11 of { (L _ (CmmT_String happy_var_11)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do dflags <- getDynFlags let prof = profilingInfo dflags happy_var_9 happy_var_11 ty = ThunkSelector (fromIntegral happy_var_5) @@ -962,43 +4113,38 @@ happyReduction_28 (happy_x_12 `HappyStk` Just $ CmmInfoTable { cit_lbl = mkCmmInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - []))}}}}} - ) (\r -> happyReturn (happyIn14 r)) + [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_29 = happyMonadReduce 6# 10# 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` +happyReduce_29 = happyMonadReduce 6 14 happyReduction_29 +happyReduction_29 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do let prof = NoProfilingInfo rep = mkRTSRep (fromIntegral happy_var_5) $ mkStackRep [] return (mkCmmRetLabel pkg happy_var_3, Just $ CmmInfoTable { cit_lbl = mkCmmRetInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - []))}} - ) (\r -> happyReturn (happyIn14 r)) + [])) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_30 = happyMonadReduce 8# 10# happyReduction_30 -happyReduction_30 (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` +happyReduce_30 = happyMonadReduce 8 14 happyReduction_30 +happyReduction_30 (_ `HappyStk` + (HappyAbsSyn50 happy_var_7) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_5))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOutTok happy_x_5 of { (L _ (CmmT_Int happy_var_5)) -> - case happyOut50 happy_x_7 of { happy_var_7 -> - ( withThisPackage $ \pkg -> + = happyThen (( withThisPackage $ \pkg -> do dflags <- getDynFlags live <- sequence happy_var_7 let prof = NoProfilingInfo @@ -1009,1271 +4155,1183 @@ happyReduction_30 (happy_x_8 `HappyStk` Just $ CmmInfoTable { cit_lbl = mkCmmRetInfoLabel pkg happy_var_3 , cit_rep = rep , cit_prof = prof, cit_srt = NoC_SRT }, - live))}}} - ) (\r -> happyReturn (happyIn14 r)) + live)) + ) (\r -> happyReturn (HappyAbsSyn14 r)) -happyReduce_31 = happySpecReduce_0 11# happyReduction_31 -happyReduction_31 = happyIn15 +happyReduce_31 = happySpecReduce_0 15 happyReduction_31 +happyReduction_31 = HappyAbsSyn4 (return () ) -happyReduce_32 = happySpecReduce_2 11# happyReduction_32 -happyReduction_32 happy_x_2 - happy_x_1 - = case happyOut16 happy_x_1 of { happy_var_1 -> - case happyOut15 happy_x_2 of { happy_var_2 -> - happyIn15 +happyReduce_32 = happySpecReduce_2 15 happyReduction_32 +happyReduction_32 (HappyAbsSyn4 happy_var_2) + (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (do happy_var_1; happy_var_2 - )}} + ) +happyReduction_32 _ _ = notHappyAtAll -happyReduce_33 = happySpecReduce_2 11# happyReduction_33 -happyReduction_33 happy_x_2 - happy_x_1 - = case happyOut20 happy_x_1 of { happy_var_1 -> - case happyOut15 happy_x_2 of { happy_var_2 -> - happyIn15 +happyReduce_33 = happySpecReduce_2 15 happyReduction_33 +happyReduction_33 (HappyAbsSyn4 happy_var_2) + (HappyAbsSyn4 happy_var_1) + = HappyAbsSyn4 (do happy_var_1; happy_var_2 - )}} + ) +happyReduction_33 _ _ = notHappyAtAll -happyReduce_34 = happySpecReduce_3 12# happyReduction_34 -happyReduction_34 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut53 happy_x_1 of { happy_var_1 -> - case happyOut19 happy_x_2 of { happy_var_2 -> - happyIn16 +happyReduce_34 = happySpecReduce_3 16 happyReduction_34 +happyReduction_34 _ + (HappyAbsSyn19 happy_var_2) + (HappyAbsSyn37 happy_var_1) + = HappyAbsSyn4 (mapM_ (newLocal happy_var_1) happy_var_2 - )}} + ) +happyReduction_34 _ _ _ = notHappyAtAll -happyReduce_35 = happySpecReduce_3 12# happyReduction_35 -happyReduction_35 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut17 happy_x_2 of { happy_var_2 -> - happyIn16 +happyReduce_35 = happySpecReduce_3 16 happyReduction_35 +happyReduction_35 _ + (HappyAbsSyn17 happy_var_2) + _ + = HappyAbsSyn4 (mapM_ newImport happy_var_2 - )} + ) +happyReduction_35 _ _ _ = notHappyAtAll -happyReduce_36 = happySpecReduce_3 12# happyReduction_36 -happyReduction_36 happy_x_3 - happy_x_2 - happy_x_1 - = happyIn16 +happyReduce_36 = happySpecReduce_3 16 happyReduction_36 +happyReduction_36 _ + _ + _ + = HappyAbsSyn4 (return () ) -happyReduce_37 = happySpecReduce_1 13# happyReduction_37 -happyReduction_37 happy_x_1 - = case happyOut18 happy_x_1 of { happy_var_1 -> - happyIn17 +happyReduce_37 = happySpecReduce_1 17 happyReduction_37 +happyReduction_37 (HappyAbsSyn18 happy_var_1) + = HappyAbsSyn17 ([happy_var_1] - )} + ) +happyReduction_37 _ = notHappyAtAll -happyReduce_38 = happySpecReduce_3 13# happyReduction_38 -happyReduction_38 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut18 happy_x_1 of { happy_var_1 -> - case happyOut17 happy_x_3 of { happy_var_3 -> - happyIn17 +happyReduce_38 = happySpecReduce_3 17 happyReduction_38 +happyReduction_38 (HappyAbsSyn17 happy_var_3) + _ + (HappyAbsSyn18 happy_var_1) + = HappyAbsSyn17 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_38 _ _ _ = notHappyAtAll -happyReduce_39 = happySpecReduce_1 14# happyReduction_39 -happyReduction_39 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn18 +happyReduce_39 = happySpecReduce_1 18 happyReduction_39 +happyReduction_39 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn18 ((happy_var_1, mkForeignLabel happy_var_1 Nothing ForeignLabelInExternalPackage IsFunction) - )} + ) +happyReduction_39 _ = notHappyAtAll + +happyReduce_40 = happySpecReduce_2 18 happyReduction_40 +happyReduction_40 (HappyTerminal (L _ (CmmT_Name happy_var_2))) + _ + = HappyAbsSyn18 + ((happy_var_2, mkForeignLabel happy_var_2 Nothing ForeignLabelInExternalPackage IsData) + ) +happyReduction_40 _ _ = notHappyAtAll -happyReduce_40 = happySpecReduce_2 14# happyReduction_40 -happyReduction_40 happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_String happy_var_1)) -> - case happyOutTok happy_x_2 of { (L _ (CmmT_Name happy_var_2)) -> - happyIn18 +happyReduce_41 = happySpecReduce_2 18 happyReduction_41 +happyReduction_41 (HappyTerminal (L _ (CmmT_Name happy_var_2))) + (HappyTerminal (L _ (CmmT_String happy_var_1))) + = HappyAbsSyn18 ((happy_var_2, mkCmmCodeLabel (fsToPackageId (mkFastString happy_var_1)) happy_var_2) - )}} + ) +happyReduction_41 _ _ = notHappyAtAll -happyReduce_41 = happySpecReduce_1 15# happyReduction_41 -happyReduction_41 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn19 +happyReduce_42 = happySpecReduce_1 19 happyReduction_42 +happyReduction_42 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn19 ([happy_var_1] - )} + ) +happyReduction_42 _ = notHappyAtAll -happyReduce_42 = happySpecReduce_3 15# happyReduction_42 -happyReduction_42 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - case happyOut19 happy_x_3 of { happy_var_3 -> - happyIn19 +happyReduce_43 = happySpecReduce_3 19 happyReduction_43 +happyReduction_43 (HappyAbsSyn19 happy_var_3) + _ + (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn19 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_43 _ _ _ = notHappyAtAll -happyReduce_43 = happySpecReduce_1 16# happyReduction_43 -happyReduction_43 happy_x_1 - = happyIn20 +happyReduce_44 = happySpecReduce_1 20 happyReduction_44 +happyReduction_44 _ + = HappyAbsSyn4 (return () ) -happyReduce_44 = happySpecReduce_2 16# happyReduction_44 -happyReduction_44 happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn20 +happyReduce_45 = happySpecReduce_2 20 happyReduction_45 +happyReduction_45 _ + (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn4 (do l <- newLabel happy_var_1; emitLabel l - )} + ) +happyReduction_45 _ _ = notHappyAtAll -happyReduce_45 = happyReduce 4# 16# happyReduction_45 -happyReduction_45 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut48 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn20 +happyReduce_46 = happyReduce 4 20 happyReduction_46 +happyReduction_46 (_ `HappyStk` + (HappyAbsSyn21 happy_var_3) `HappyStk` + _ `HappyStk` + (HappyAbsSyn48 happy_var_1) `HappyStk` + happyRest) + = HappyAbsSyn4 (do reg <- happy_var_1; e <- happy_var_3; emitAssign reg e - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_46 = happyReduce 7# 16# happyReduction_46 -happyReduction_46 (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 happyOut53 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - case happyOut35 happy_x_6 of { happy_var_6 -> - happyIn20 +happyReduce_47 = happyReduce 7 20 happyReduction_47 +happyReduction_47 (_ `HappyStk` + (HappyAbsSyn21 happy_var_6) `HappyStk` + _ `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_3) `HappyStk` + _ `HappyStk` + (HappyAbsSyn37 happy_var_1) `HappyStk` + happyRest) + = HappyAbsSyn4 (doStore happy_var_1 happy_var_3 happy_var_6 - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_47 = happyMonadReduce 10# 16# happyReduction_47 -happyReduction_47 (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` +happyReduce_48 = happyMonadReduce 10 20 happyReduction_48 +happyReduction_48 (_ `HappyStk` + (HappyAbsSyn22 happy_var_9) `HappyStk` + (HappyAbsSyn25 happy_var_8) `HappyStk` + _ `HappyStk` + (HappyAbsSyn38 happy_var_6) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_4) `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_3))) `HappyStk` + _ `HappyStk` + (HappyAbsSyn44 happy_var_1) `HappyStk` happyRest) tk - = happyThen (case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { (L _ (CmmT_String happy_var_3)) -> - case happyOut21 happy_x_4 of { happy_var_4 -> - case happyOut38 happy_x_6 of { happy_var_6 -> - case happyOut25 happy_x_8 of { happy_var_8 -> - case happyOut22 happy_x_9 of { happy_var_9 -> - ( foreignCall happy_var_3 happy_var_1 happy_var_4 happy_var_6 happy_var_8 happy_var_9)}}}}}} - ) (\r -> happyReturn (happyIn20 r)) - -happyReduce_48 = happyMonadReduce 8# 16# happyReduction_48 -happyReduction_48 (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` + = happyThen (( foreignCall happy_var_3 happy_var_1 happy_var_4 happy_var_6 happy_var_8 happy_var_9) + ) (\r -> happyReturn (HappyAbsSyn4 r)) + +happyReduce_49 = happyMonadReduce 8 20 happyReduction_49 +happyReduction_49 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_6) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_4))) `HappyStk` + _ `HappyStk` + _ `HappyStk` + (HappyAbsSyn44 happy_var_1) `HappyStk` happyRest) tk - = happyThen (case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_4 of { (L _ (CmmT_Name happy_var_4)) -> - case happyOut41 happy_x_6 of { happy_var_6 -> - ( primCall happy_var_1 happy_var_4 happy_var_6)}}} - ) (\r -> happyReturn (happyIn20 r)) - -happyReduce_49 = happyMonadReduce 5# 16# happyReduction_49 -happyReduction_49 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` + = happyThen (( primCall happy_var_1 happy_var_4 happy_var_6) + ) (\r -> happyReturn (HappyAbsSyn4 r)) + +happyReduce_50 = happyMonadReduce 5 20 happyReduction_50 +happyReduction_50 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_3) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_1))) `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - case happyOut41 happy_x_3 of { happy_var_3 -> - ( stmtMacro happy_var_1 happy_var_3)}} - ) (\r -> happyReturn (happyIn20 r)) - -happyReduce_50 = happyReduce 7# 16# happyReduction_50 -happyReduction_50 (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 happyOut28 happy_x_2 of { happy_var_2 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - case happyOut29 happy_x_5 of { happy_var_5 -> - case happyOut33 happy_x_6 of { happy_var_6 -> - happyIn20 + = happyThen (( stmtMacro happy_var_1 happy_var_3) + ) (\r -> happyReturn (HappyAbsSyn4 r)) + +happyReduce_51 = happyReduce 7 20 happyReduction_51 +happyReduction_51 (_ `HappyStk` + (HappyAbsSyn33 happy_var_6) `HappyStk` + (HappyAbsSyn29 happy_var_5) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_3) `HappyStk` + (HappyAbsSyn28 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (do as <- sequence happy_var_5; doSwitch happy_var_2 happy_var_3 as happy_var_6 - ) `HappyStk` happyRest}}}} + ) `HappyStk` happyRest -happyReduce_51 = happySpecReduce_3 16# happyReduction_51 -happyReduction_51 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOutTok happy_x_2 of { (L _ (CmmT_Name happy_var_2)) -> - happyIn20 +happyReduce_52 = happySpecReduce_3 20 happyReduction_52 +happyReduction_52 _ + (HappyTerminal (L _ (CmmT_Name happy_var_2))) + _ + = HappyAbsSyn4 (do l <- lookupLabel happy_var_2; emit (mkBranch l) - )} + ) +happyReduction_52 _ _ _ = notHappyAtAll -happyReduce_52 = happyReduce 5# 16# happyReduction_52 -happyReduction_52 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_53 = happyReduce 5 20 happyReduction_53 +happyReduction_53 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_3) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) - = case happyOut41 happy_x_3 of { happy_var_3 -> - happyIn20 + = HappyAbsSyn4 (doReturn happy_var_3 - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_53 = happyReduce 4# 16# happyReduction_53 -happyReduction_53 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut26 happy_x_3 of { happy_var_3 -> - happyIn20 +happyReduce_54 = happyReduce 4 20 happyReduction_54 +happyReduction_54 (_ `HappyStk` + (HappyAbsSyn26 happy_var_3) `HappyStk` + (HappyAbsSyn21 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (doRawJump happy_var_2 happy_var_3 - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_54 = happyReduce 6# 16# happyReduction_54 -happyReduction_54 (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 happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut41 happy_x_4 of { happy_var_4 -> - happyIn20 +happyReduce_55 = happyReduce 6 20 happyReduction_55 +happyReduction_55 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (doJumpWithStack happy_var_2 [] happy_var_4 - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_55 = happyReduce 9# 16# happyReduction_55 -happyReduction_55 (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 happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut41 happy_x_4 of { happy_var_4 -> - case happyOut41 happy_x_7 of { happy_var_7 -> - happyIn20 +happyReduce_56 = happyReduce 9 20 happyReduction_56 +happyReduction_56 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_7) `HappyStk` + _ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (doJumpWithStack happy_var_2 happy_var_4 happy_var_7 - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_56 = happyReduce 6# 16# happyReduction_56 -happyReduction_56 (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 happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut41 happy_x_4 of { happy_var_4 -> - happyIn20 +happyReduce_57 = happyReduce 6 20 happyReduction_57 +happyReduction_57 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (doCall happy_var_2 [] happy_var_4 - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_57 = happyReduce 10# 16# happyReduction_57 -happyReduction_57 (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 happyOut51 happy_x_2 of { happy_var_2 -> - case happyOut35 happy_x_6 of { happy_var_6 -> - case happyOut41 happy_x_8 of { happy_var_8 -> - happyIn20 +happyReduce_58 = happyReduce 10 20 happyReduction_58 +happyReduction_58 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_8) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_6) `HappyStk` + _ `HappyStk` + _ `HappyStk` + _ `HappyStk` + (HappyAbsSyn50 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (doCall happy_var_6 happy_var_2 happy_var_8 - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_58 = happyReduce 4# 16# happyReduction_58 -happyReduction_58 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut23 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_4 of { (L _ (CmmT_Name happy_var_4)) -> - happyIn20 +happyReduce_59 = happyReduce 4 20 happyReduction_59 +happyReduction_59 ((HappyTerminal (L _ (CmmT_Name happy_var_4))) `HappyStk` + _ `HappyStk` + (HappyAbsSyn23 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (do l <- lookupLabel happy_var_4; cmmRawIf happy_var_2 l - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_59 = happyReduce 6# 16# happyReduction_59 -happyReduction_59 (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 happyOut23 happy_x_2 of { happy_var_2 -> - case happyOut15 happy_x_4 of { happy_var_4 -> - case happyOut34 happy_x_6 of { happy_var_6 -> - happyIn20 +happyReduce_60 = happyReduce 6 20 happyReduction_60 +happyReduction_60 ((HappyAbsSyn4 happy_var_6) `HappyStk` + _ `HappyStk` + (HappyAbsSyn4 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn23 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (cmmIfThenElse happy_var_2 happy_var_4 happy_var_6 - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_60 = happyReduce 5# 16# 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 happyOut41 happy_x_3 of { happy_var_3 -> - case happyOut13 happy_x_5 of { happy_var_5 -> - happyIn20 +happyReduce_61 = happyReduce 5 20 happyReduction_61 +happyReduction_61 ((HappyAbsSyn4 happy_var_5) `HappyStk` + _ `HappyStk` + (HappyAbsSyn10 happy_var_3) `HappyStk` + _ `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (pushStackFrame happy_var_3 happy_var_5 - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_61 = happyReduce 5# 16# happyReduction_61 -happyReduction_61 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut35 happy_x_2 of { happy_var_2 -> - case happyOut48 happy_x_4 of { happy_var_4 -> - case happyOut13 happy_x_5 of { happy_var_5 -> - happyIn20 +happyReduce_62 = happyReduce 5 20 happyReduction_62 +happyReduction_62 ((HappyAbsSyn4 happy_var_5) `HappyStk` + (HappyAbsSyn48 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn4 (reserveStackFrame happy_var_2 happy_var_4 happy_var_5 - ) `HappyStk` happyRest}}} + ) `HappyStk` happyRest -happyReduce_62 = happySpecReduce_1 17# happyReduction_62 -happyReduction_62 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn21 +happyReduce_63 = happySpecReduce_1 21 happyReduction_63 +happyReduction_63 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn21 (return (CmmLit (CmmLabel (mkForeignLabel happy_var_1 Nothing ForeignLabelInThisPackage IsFunction))) - )} + ) +happyReduction_63 _ = notHappyAtAll -happyReduce_63 = happySpecReduce_0 18# happyReduction_63 -happyReduction_63 = happyIn22 +happyReduce_64 = happySpecReduce_0 22 happyReduction_64 +happyReduction_64 = HappyAbsSyn22 (CmmMayReturn ) -happyReduce_64 = happySpecReduce_2 18# happyReduction_64 -happyReduction_64 happy_x_2 - happy_x_1 - = happyIn22 +happyReduce_65 = happySpecReduce_2 22 happyReduction_65 +happyReduction_65 _ + _ + = HappyAbsSyn22 (CmmNeverReturns ) -happyReduce_65 = happySpecReduce_1 19# happyReduction_65 -happyReduction_65 happy_x_1 - = case happyOut24 happy_x_1 of { happy_var_1 -> - happyIn23 +happyReduce_66 = happySpecReduce_1 23 happyReduction_66 +happyReduction_66 (HappyAbsSyn23 happy_var_1) + = HappyAbsSyn23 (happy_var_1 - )} + ) +happyReduction_66 _ = notHappyAtAll -happyReduce_66 = happySpecReduce_1 19# happyReduction_66 -happyReduction_66 happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - happyIn23 +happyReduce_67 = happySpecReduce_1 23 happyReduction_67 +happyReduction_67 (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn23 (do e <- happy_var_1; return (BoolTest e) - )} + ) +happyReduction_67 _ = notHappyAtAll -happyReduce_67 = happySpecReduce_3 20# happyReduction_67 -happyReduction_67 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut23 happy_x_1 of { happy_var_1 -> - case happyOut23 happy_x_3 of { happy_var_3 -> - happyIn24 +happyReduce_68 = happySpecReduce_3 24 happyReduction_68 +happyReduction_68 (HappyAbsSyn23 happy_var_3) + _ + (HappyAbsSyn23 happy_var_1) + = HappyAbsSyn23 (do e1 <- happy_var_1; e2 <- happy_var_3; return (BoolAnd e1 e2) - )}} + ) +happyReduction_68 _ _ _ = notHappyAtAll -happyReduce_68 = happySpecReduce_3 20# happyReduction_68 -happyReduction_68 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut23 happy_x_1 of { happy_var_1 -> - case happyOut23 happy_x_3 of { happy_var_3 -> - happyIn24 +happyReduce_69 = happySpecReduce_3 24 happyReduction_69 +happyReduction_69 (HappyAbsSyn23 happy_var_3) + _ + (HappyAbsSyn23 happy_var_1) + = HappyAbsSyn23 (do e1 <- happy_var_1; e2 <- happy_var_3; return (BoolOr e1 e2) - )}} + ) +happyReduction_69 _ _ _ = notHappyAtAll -happyReduce_69 = happySpecReduce_2 20# happyReduction_69 -happyReduction_69 happy_x_2 - happy_x_1 - = case happyOut23 happy_x_2 of { happy_var_2 -> - happyIn24 +happyReduce_70 = happySpecReduce_2 24 happyReduction_70 +happyReduction_70 (HappyAbsSyn23 happy_var_2) + _ + = HappyAbsSyn23 (do e <- happy_var_2; return (BoolNot e) - )} + ) +happyReduction_70 _ _ = notHappyAtAll -happyReduce_70 = happySpecReduce_3 20# happyReduction_70 -happyReduction_70 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut24 happy_x_2 of { happy_var_2 -> - happyIn24 +happyReduce_71 = happySpecReduce_3 24 happyReduction_71 +happyReduction_71 _ + (HappyAbsSyn23 happy_var_2) + _ + = HappyAbsSyn23 (happy_var_2 - )} + ) +happyReduction_71 _ _ _ = notHappyAtAll -happyReduce_71 = happySpecReduce_0 21# happyReduction_71 -happyReduction_71 = happyIn25 +happyReduce_72 = happySpecReduce_0 25 happyReduction_72 +happyReduction_72 = HappyAbsSyn25 (PlayRisky ) -happyReduce_72 = happyMonadReduce 1# 21# happyReduction_72 -happyReduction_72 (happy_x_1 `HappyStk` +happyReduce_73 = happyMonadReduce 1 25 happyReduction_73 +happyReduction_73 ((HappyTerminal (L _ (CmmT_String happy_var_1))) `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_1 of { (L _ (CmmT_String happy_var_1)) -> - ( parseSafety happy_var_1)} - ) (\r -> happyReturn (happyIn25 r)) - -happyReduce_73 = happySpecReduce_2 22# happyReduction_73 -happyReduction_73 happy_x_2 - happy_x_1 - = happyIn26 + = happyThen (( parseSafety happy_var_1) + ) (\r -> happyReturn (HappyAbsSyn25 r)) + +happyReduce_74 = happySpecReduce_2 26 happyReduction_74 +happyReduction_74 _ + _ + = HappyAbsSyn26 ([] ) -happyReduce_74 = happyMonadReduce 3# 22# happyReduction_74 -happyReduction_74 (happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_75 = happyMonadReduce 3 26 happyReduction_75 +happyReduction_75 (_ `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) tk = happyThen (( do df <- getDynFlags ; return (realArgRegsCover df)) - ) (\r -> happyReturn (happyIn26 r)) + ) (\r -> happyReturn (HappyAbsSyn26 r)) -happyReduce_75 = happySpecReduce_3 22# happyReduction_75 -happyReduction_75 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut27 happy_x_2 of { happy_var_2 -> - happyIn26 +happyReduce_76 = happySpecReduce_3 26 happyReduction_76 +happyReduction_76 _ + (HappyAbsSyn26 happy_var_2) + _ + = HappyAbsSyn26 (happy_var_2 - )} + ) +happyReduction_76 _ _ _ = notHappyAtAll -happyReduce_76 = happySpecReduce_1 23# happyReduction_76 -happyReduction_76 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_GlobalReg happy_var_1)) -> - happyIn27 +happyReduce_77 = happySpecReduce_1 27 happyReduction_77 +happyReduction_77 (HappyTerminal (L _ (CmmT_GlobalReg happy_var_1))) + = HappyAbsSyn26 ([happy_var_1] - )} + ) +happyReduction_77 _ = notHappyAtAll -happyReduce_77 = happySpecReduce_3 23# happyReduction_77 -happyReduction_77 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_GlobalReg happy_var_1)) -> - case happyOut27 happy_x_3 of { happy_var_3 -> - happyIn27 +happyReduce_78 = happySpecReduce_3 27 happyReduction_78 +happyReduction_78 (HappyAbsSyn26 happy_var_3) + _ + (HappyTerminal (L _ (CmmT_GlobalReg happy_var_1))) + = HappyAbsSyn26 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_78 _ _ _ = notHappyAtAll -happyReduce_78 = happyReduce 5# 24# happyReduction_78 -happyReduction_78 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOutTok happy_x_2 of { (L _ (CmmT_Int happy_var_2)) -> - case happyOutTok happy_x_4 of { (L _ (CmmT_Int happy_var_4)) -> - happyIn28 +happyReduce_79 = happyReduce 5 28 happyReduction_79 +happyReduction_79 (_ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_4))) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Int happy_var_2))) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn28 (Just (fromIntegral happy_var_2, fromIntegral happy_var_4) - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_79 = happySpecReduce_0 24# happyReduction_79 -happyReduction_79 = happyIn28 +happyReduce_80 = happySpecReduce_0 28 happyReduction_80 +happyReduction_80 = HappyAbsSyn28 (Nothing ) -happyReduce_80 = happySpecReduce_0 25# happyReduction_80 -happyReduction_80 = happyIn29 +happyReduce_81 = happySpecReduce_0 29 happyReduction_81 +happyReduction_81 = HappyAbsSyn29 ([] ) -happyReduce_81 = happySpecReduce_2 25# happyReduction_81 -happyReduction_81 happy_x_2 - happy_x_1 - = case happyOut30 happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_2 of { happy_var_2 -> - happyIn29 +happyReduce_82 = happySpecReduce_2 29 happyReduction_82 +happyReduction_82 (HappyAbsSyn29 happy_var_2) + (HappyAbsSyn30 happy_var_1) + = HappyAbsSyn29 (happy_var_1 : happy_var_2 - )}} + ) +happyReduction_82 _ _ = notHappyAtAll -happyReduce_82 = happyReduce 4# 26# happyReduction_82 -happyReduction_82 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut32 happy_x_2 of { happy_var_2 -> - case happyOut31 happy_x_4 of { happy_var_4 -> - happyIn30 +happyReduce_83 = happyReduce 4 30 happyReduction_83 +happyReduction_83 ((HappyAbsSyn31 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyAbsSyn32 happy_var_2) `HappyStk` + _ `HappyStk` + happyRest) + = HappyAbsSyn30 (do b <- happy_var_4; return (happy_var_2, b) - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_83 = happySpecReduce_3 27# happyReduction_83 -happyReduction_83 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut15 happy_x_2 of { happy_var_2 -> - happyIn31 +happyReduce_84 = happySpecReduce_3 31 happyReduction_84 +happyReduction_84 _ + (HappyAbsSyn4 happy_var_2) + _ + = HappyAbsSyn31 (return (Right happy_var_2) - )} + ) +happyReduction_84 _ _ _ = notHappyAtAll -happyReduce_84 = happySpecReduce_3 27# happyReduction_84 -happyReduction_84 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOutTok happy_x_2 of { (L _ (CmmT_Name happy_var_2)) -> - happyIn31 +happyReduce_85 = happySpecReduce_3 31 happyReduction_85 +happyReduction_85 _ + (HappyTerminal (L _ (CmmT_Name happy_var_2))) + _ + = HappyAbsSyn31 (do l <- lookupLabel happy_var_2; return (Left l) - )} + ) +happyReduction_85 _ _ _ = notHappyAtAll -happyReduce_85 = happySpecReduce_1 28# happyReduction_85 -happyReduction_85 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Int happy_var_1)) -> - happyIn32 +happyReduce_86 = happySpecReduce_1 32 happyReduction_86 +happyReduction_86 (HappyTerminal (L _ (CmmT_Int happy_var_1))) + = HappyAbsSyn32 ([ fromIntegral happy_var_1 ] - )} + ) +happyReduction_86 _ = notHappyAtAll -happyReduce_86 = happySpecReduce_3 28# happyReduction_86 -happyReduction_86 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Int happy_var_1)) -> - case happyOut32 happy_x_3 of { happy_var_3 -> - happyIn32 +happyReduce_87 = happySpecReduce_3 32 happyReduction_87 +happyReduction_87 (HappyAbsSyn32 happy_var_3) + _ + (HappyTerminal (L _ (CmmT_Int happy_var_1))) + = HappyAbsSyn32 (fromIntegral happy_var_1 : happy_var_3 - )}} + ) +happyReduction_87 _ _ _ = notHappyAtAll -happyReduce_87 = happyReduce 5# 29# happyReduction_87 -happyReduction_87 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_88 = happyReduce 5 33 happyReduction_88 +happyReduction_88 (_ `HappyStk` + (HappyAbsSyn4 happy_var_4) `HappyStk` + _ `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) - = case happyOut15 happy_x_4 of { happy_var_4 -> - happyIn33 + = HappyAbsSyn33 (Just happy_var_4 - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_88 = happySpecReduce_0 29# happyReduction_88 -happyReduction_88 = happyIn33 +happyReduce_89 = happySpecReduce_0 33 happyReduction_89 +happyReduction_89 = HappyAbsSyn33 (Nothing ) -happyReduce_89 = happySpecReduce_0 30# happyReduction_89 -happyReduction_89 = happyIn34 +happyReduce_90 = happySpecReduce_0 34 happyReduction_90 +happyReduction_90 = HappyAbsSyn4 (return () ) -happyReduce_90 = happyReduce 4# 30# happyReduction_90 -happyReduction_90 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_91 = happyReduce 4 34 happyReduction_91 +happyReduction_91 (_ `HappyStk` + (HappyAbsSyn4 happy_var_3) `HappyStk` + _ `HappyStk` + _ `HappyStk` happyRest) - = case happyOut15 happy_x_3 of { happy_var_3 -> - happyIn34 + = HappyAbsSyn4 (happy_var_3 - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_91 = happySpecReduce_3 31# happyReduction_91 -happyReduction_91 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_92 = happySpecReduce_3 35 happyReduction_92 +happyReduction_92 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Quot [happy_var_1,happy_var_3] - )}} + ) +happyReduction_92 _ _ _ = notHappyAtAll -happyReduce_92 = happySpecReduce_3 31# happyReduction_92 -happyReduction_92 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_93 = happySpecReduce_3 35 happyReduction_93 +happyReduction_93 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Mul [happy_var_1,happy_var_3] - )}} + ) +happyReduction_93 _ _ _ = notHappyAtAll -happyReduce_93 = happySpecReduce_3 31# happyReduction_93 -happyReduction_93 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_94 = happySpecReduce_3 35 happyReduction_94 +happyReduction_94 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Rem [happy_var_1,happy_var_3] - )}} + ) +happyReduction_94 _ _ _ = notHappyAtAll -happyReduce_94 = happySpecReduce_3 31# happyReduction_94 -happyReduction_94 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_95 = happySpecReduce_3 35 happyReduction_95 +happyReduction_95 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Sub [happy_var_1,happy_var_3] - )}} + ) +happyReduction_95 _ _ _ = notHappyAtAll -happyReduce_95 = happySpecReduce_3 31# happyReduction_95 -happyReduction_95 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_96 = happySpecReduce_3 35 happyReduction_96 +happyReduction_96 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Add [happy_var_1,happy_var_3] - )}} + ) +happyReduction_96 _ _ _ = notHappyAtAll -happyReduce_96 = happySpecReduce_3 31# happyReduction_96 -happyReduction_96 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_97 = happySpecReduce_3 35 happyReduction_97 +happyReduction_97 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Shr [happy_var_1,happy_var_3] - )}} + ) +happyReduction_97 _ _ _ = notHappyAtAll -happyReduce_97 = happySpecReduce_3 31# happyReduction_97 -happyReduction_97 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_98 = happySpecReduce_3 35 happyReduction_98 +happyReduction_98 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Shl [happy_var_1,happy_var_3] - )}} + ) +happyReduction_98 _ _ _ = notHappyAtAll -happyReduce_98 = happySpecReduce_3 31# happyReduction_98 -happyReduction_98 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_99 = happySpecReduce_3 35 happyReduction_99 +happyReduction_99 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_And [happy_var_1,happy_var_3] - )}} + ) +happyReduction_99 _ _ _ = notHappyAtAll -happyReduce_99 = happySpecReduce_3 31# happyReduction_99 -happyReduction_99 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_100 = happySpecReduce_3 35 happyReduction_100 +happyReduction_100 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Xor [happy_var_1,happy_var_3] - )}} + ) +happyReduction_100 _ _ _ = notHappyAtAll -happyReduce_100 = happySpecReduce_3 31# happyReduction_100 -happyReduction_100 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_101 = happySpecReduce_3 35 happyReduction_101 +happyReduction_101 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Or [happy_var_1,happy_var_3] - )}} + ) +happyReduction_101 _ _ _ = notHappyAtAll -happyReduce_101 = happySpecReduce_3 31# happyReduction_101 -happyReduction_101 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_102 = happySpecReduce_3 35 happyReduction_102 +happyReduction_102 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Ge [happy_var_1,happy_var_3] - )}} + ) +happyReduction_102 _ _ _ = notHappyAtAll -happyReduce_102 = happySpecReduce_3 31# happyReduction_102 -happyReduction_102 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_103 = happySpecReduce_3 35 happyReduction_103 +happyReduction_103 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Gt [happy_var_1,happy_var_3] - )}} + ) +happyReduction_103 _ _ _ = notHappyAtAll -happyReduce_103 = happySpecReduce_3 31# happyReduction_103 -happyReduction_103 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_104 = happySpecReduce_3 35 happyReduction_104 +happyReduction_104 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Le [happy_var_1,happy_var_3] - )}} + ) +happyReduction_104 _ _ _ = notHappyAtAll -happyReduce_104 = happySpecReduce_3 31# happyReduction_104 -happyReduction_104 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_105 = happySpecReduce_3 35 happyReduction_105 +happyReduction_105 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_U_Lt [happy_var_1,happy_var_3] - )}} + ) +happyReduction_105 _ _ _ = notHappyAtAll -happyReduce_105 = happySpecReduce_3 31# happyReduction_105 -happyReduction_105 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_106 = happySpecReduce_3 35 happyReduction_106 +happyReduction_106 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Ne [happy_var_1,happy_var_3] - )}} + ) +happyReduction_106 _ _ _ = notHappyAtAll -happyReduce_106 = happySpecReduce_3 31# happyReduction_106 -happyReduction_106 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn35 +happyReduce_107 = happySpecReduce_3 35 happyReduction_107 +happyReduction_107 (HappyAbsSyn21 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (mkMachOp MO_Eq [happy_var_1,happy_var_3] - )}} + ) +happyReduction_107 _ _ _ = notHappyAtAll -happyReduce_107 = happySpecReduce_2 31# happyReduction_107 -happyReduction_107 happy_x_2 - happy_x_1 - = case happyOut35 happy_x_2 of { happy_var_2 -> - happyIn35 +happyReduce_108 = happySpecReduce_2 35 happyReduction_108 +happyReduction_108 (HappyAbsSyn21 happy_var_2) + _ + = HappyAbsSyn21 (mkMachOp MO_Not [happy_var_2] - )} + ) +happyReduction_108 _ _ = notHappyAtAll -happyReduce_108 = happySpecReduce_2 31# happyReduction_108 -happyReduction_108 happy_x_2 - happy_x_1 - = case happyOut35 happy_x_2 of { happy_var_2 -> - happyIn35 +happyReduce_109 = happySpecReduce_2 35 happyReduction_109 +happyReduction_109 (HappyAbsSyn21 happy_var_2) + _ + = HappyAbsSyn21 (mkMachOp MO_S_Neg [happy_var_2] - )} + ) +happyReduction_109 _ _ = notHappyAtAll -happyReduce_109 = happyMonadReduce 5# 31# happyReduction_109 -happyReduction_109 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_110 = happyMonadReduce 5 35 happyReduction_110 +happyReduction_110 ((HappyAbsSyn21 happy_var_5) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_3))) `HappyStk` + _ `HappyStk` + (HappyAbsSyn21 happy_var_1) `HappyStk` happyRest) tk - = happyThen (case happyOut36 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { (L _ (CmmT_Name happy_var_3)) -> - case happyOut36 happy_x_5 of { happy_var_5 -> - ( do { mo <- nameToMachOp happy_var_3 ; - return (mkMachOp mo [happy_var_1,happy_var_5]) })}}} - ) (\r -> happyReturn (happyIn35 r)) - -happyReduce_110 = happySpecReduce_1 31# happyReduction_110 -happyReduction_110 happy_x_1 - = case happyOut36 happy_x_1 of { happy_var_1 -> - happyIn35 + = happyThen (( do { mo <- nameToMachOp happy_var_3 ; + return (mkMachOp mo [happy_var_1,happy_var_5]) }) + ) (\r -> happyReturn (HappyAbsSyn21 r)) + +happyReduce_111 = happySpecReduce_1 35 happyReduction_111 +happyReduction_111 (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (happy_var_1 - )} + ) +happyReduction_111 _ = notHappyAtAll -happyReduce_111 = happySpecReduce_2 32# happyReduction_111 -happyReduction_111 happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Int happy_var_1)) -> - case happyOut37 happy_x_2 of { happy_var_2 -> - happyIn36 +happyReduce_112 = happySpecReduce_2 36 happyReduction_112 +happyReduction_112 (HappyAbsSyn37 happy_var_2) + (HappyTerminal (L _ (CmmT_Int happy_var_1))) + = HappyAbsSyn21 (return (CmmLit (CmmInt happy_var_1 (typeWidth happy_var_2))) - )}} + ) +happyReduction_112 _ _ = notHappyAtAll -happyReduce_112 = happySpecReduce_2 32# happyReduction_112 -happyReduction_112 happy_x_2 - happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Float happy_var_1)) -> - case happyOut37 happy_x_2 of { happy_var_2 -> - happyIn36 +happyReduce_113 = happySpecReduce_2 36 happyReduction_113 +happyReduction_113 (HappyAbsSyn37 happy_var_2) + (HappyTerminal (L _ (CmmT_Float happy_var_1))) + = HappyAbsSyn21 (return (CmmLit (CmmFloat happy_var_1 (typeWidth happy_var_2))) - )}} + ) +happyReduction_113 _ _ = notHappyAtAll -happyReduce_113 = happySpecReduce_1 32# happyReduction_113 -happyReduction_113 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_String happy_var_1)) -> - happyIn36 +happyReduce_114 = happySpecReduce_1 36 happyReduction_114 +happyReduction_114 (HappyTerminal (L _ (CmmT_String happy_var_1))) + = HappyAbsSyn21 (do s <- code (newStringCLit happy_var_1); return (CmmLit s) - )} + ) +happyReduction_114 _ = notHappyAtAll -happyReduce_114 = happySpecReduce_1 32# happyReduction_114 -happyReduction_114 happy_x_1 - = case happyOut43 happy_x_1 of { happy_var_1 -> - happyIn36 +happyReduce_115 = happySpecReduce_1 36 happyReduction_115 +happyReduction_115 (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn21 (happy_var_1 - )} + ) +happyReduction_115 _ = notHappyAtAll -happyReduce_115 = happyReduce 4# 32# happyReduction_115 -happyReduction_115 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` - happyRest) - = case happyOut53 happy_x_1 of { happy_var_1 -> - case happyOut35 happy_x_3 of { happy_var_3 -> - happyIn36 +happyReduce_116 = happyReduce 4 36 happyReduction_116 +happyReduction_116 (_ `HappyStk` + (HappyAbsSyn21 happy_var_3) `HappyStk` + _ `HappyStk` + (HappyAbsSyn37 happy_var_1) `HappyStk` + happyRest) + = HappyAbsSyn21 (do e <- happy_var_3; return (CmmLoad e happy_var_1) - ) `HappyStk` happyRest}} + ) `HappyStk` happyRest -happyReduce_116 = happyMonadReduce 5# 32# happyReduction_116 -happyReduction_116 (happy_x_5 `HappyStk` - happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_117 = happyMonadReduce 5 36 happyReduction_117 +happyReduction_117 (_ `HappyStk` + (HappyAbsSyn10 happy_var_4) `HappyStk` + _ `HappyStk` + (HappyTerminal (L _ (CmmT_Name happy_var_2))) `HappyStk` + _ `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_2 of { (L _ (CmmT_Name happy_var_2)) -> - case happyOut41 happy_x_4 of { happy_var_4 -> - ( exprOp happy_var_2 happy_var_4)}} - ) (\r -> happyReturn (happyIn36 r)) - -happyReduce_117 = happySpecReduce_3 32# happyReduction_117 -happyReduction_117 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_2 of { happy_var_2 -> - happyIn36 + = happyThen (( exprOp happy_var_2 happy_var_4) + ) (\r -> happyReturn (HappyAbsSyn21 r)) + +happyReduce_118 = happySpecReduce_3 36 happyReduction_118 +happyReduction_118 _ + (HappyAbsSyn21 happy_var_2) + _ + = HappyAbsSyn21 (happy_var_2 - )} + ) +happyReduction_118 _ _ _ = notHappyAtAll -happyReduce_118 = happyMonadReduce 0# 33# happyReduction_118 -happyReduction_118 (happyRest) tk +happyReduce_119 = happyMonadReduce 0 37 happyReduction_119 +happyReduction_119 (happyRest) tk = happyThen (( do dflags <- getDynFlags; return $ bWord dflags) - ) (\r -> happyReturn (happyIn37 r)) + ) (\r -> happyReturn (HappyAbsSyn37 r)) -happyReduce_119 = happySpecReduce_2 33# happyReduction_119 -happyReduction_119 happy_x_2 - happy_x_1 - = case happyOut53 happy_x_2 of { happy_var_2 -> - happyIn37 +happyReduce_120 = happySpecReduce_2 37 happyReduction_120 +happyReduction_120 (HappyAbsSyn37 happy_var_2) + _ + = HappyAbsSyn37 (happy_var_2 - )} + ) +happyReduction_120 _ _ = notHappyAtAll -happyReduce_120 = happySpecReduce_0 34# happyReduction_120 -happyReduction_120 = happyIn38 +happyReduce_121 = happySpecReduce_0 38 happyReduction_121 +happyReduction_121 = HappyAbsSyn38 ([] ) -happyReduce_121 = happySpecReduce_1 34# happyReduction_121 -happyReduction_121 happy_x_1 - = case happyOut39 happy_x_1 of { happy_var_1 -> - happyIn38 +happyReduce_122 = happySpecReduce_1 38 happyReduction_122 +happyReduction_122 (HappyAbsSyn38 happy_var_1) + = HappyAbsSyn38 (happy_var_1 - )} + ) +happyReduction_122 _ = notHappyAtAll -happyReduce_122 = happySpecReduce_1 35# happyReduction_122 -happyReduction_122 happy_x_1 - = case happyOut40 happy_x_1 of { happy_var_1 -> - happyIn39 +happyReduce_123 = happySpecReduce_1 39 happyReduction_123 +happyReduction_123 (HappyAbsSyn40 happy_var_1) + = HappyAbsSyn38 ([happy_var_1] - )} + ) +happyReduction_123 _ = notHappyAtAll -happyReduce_123 = happySpecReduce_3 35# happyReduction_123 -happyReduction_123 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut40 happy_x_1 of { happy_var_1 -> - case happyOut39 happy_x_3 of { happy_var_3 -> - happyIn39 +happyReduce_124 = happySpecReduce_3 39 happyReduction_124 +happyReduction_124 (HappyAbsSyn38 happy_var_3) + _ + (HappyAbsSyn40 happy_var_1) + = HappyAbsSyn38 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_124 _ _ _ = notHappyAtAll -happyReduce_124 = happySpecReduce_1 36# happyReduction_124 -happyReduction_124 happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - happyIn40 +happyReduce_125 = happySpecReduce_1 40 happyReduction_125 +happyReduction_125 (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn40 (do e <- happy_var_1; return (e, inferCmmHint e) - )} + ) +happyReduction_125 _ = notHappyAtAll -happyReduce_125 = happyMonadReduce 2# 36# happyReduction_125 -happyReduction_125 (happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_126 = happyMonadReduce 2 40 happyReduction_126 +happyReduction_126 ((HappyTerminal (L _ (CmmT_String happy_var_2))) `HappyStk` + (HappyAbsSyn21 happy_var_1) `HappyStk` happyRest) tk - = happyThen (case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { (L _ (CmmT_String happy_var_2)) -> - ( do h <- parseCmmHint happy_var_2; + = happyThen (( do h <- parseCmmHint happy_var_2; return $ do - e <- happy_var_1; return (e, h))}} - ) (\r -> happyReturn (happyIn40 r)) + e <- happy_var_1; return (e, h)) + ) (\r -> happyReturn (HappyAbsSyn40 r)) -happyReduce_126 = happySpecReduce_0 37# happyReduction_126 -happyReduction_126 = happyIn41 +happyReduce_127 = happySpecReduce_0 41 happyReduction_127 +happyReduction_127 = HappyAbsSyn10 ([] ) -happyReduce_127 = happySpecReduce_1 37# happyReduction_127 -happyReduction_127 happy_x_1 - = case happyOut42 happy_x_1 of { happy_var_1 -> - happyIn41 +happyReduce_128 = happySpecReduce_1 41 happyReduction_128 +happyReduction_128 (HappyAbsSyn10 happy_var_1) + = HappyAbsSyn10 (happy_var_1 - )} + ) +happyReduction_128 _ = notHappyAtAll -happyReduce_128 = happySpecReduce_1 38# happyReduction_128 -happyReduction_128 happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - happyIn42 +happyReduce_129 = happySpecReduce_1 42 happyReduction_129 +happyReduction_129 (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn10 ([ happy_var_1 ] - )} + ) +happyReduction_129 _ = notHappyAtAll -happyReduce_129 = happySpecReduce_3 38# happyReduction_129 -happyReduction_129 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOut42 happy_x_3 of { happy_var_3 -> - happyIn42 +happyReduce_130 = happySpecReduce_3 42 happyReduction_130 +happyReduction_130 (HappyAbsSyn10 happy_var_3) + _ + (HappyAbsSyn21 happy_var_1) + = HappyAbsSyn10 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_130 _ _ _ = notHappyAtAll -happyReduce_130 = happySpecReduce_1 39# happyReduction_130 -happyReduction_130 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn43 +happyReduce_131 = happySpecReduce_1 43 happyReduction_131 +happyReduction_131 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn21 (lookupName happy_var_1 - )} + ) +happyReduction_131 _ = notHappyAtAll -happyReduce_131 = happySpecReduce_1 39# happyReduction_131 -happyReduction_131 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_GlobalReg happy_var_1)) -> - happyIn43 +happyReduce_132 = happySpecReduce_1 43 happyReduction_132 +happyReduction_132 (HappyTerminal (L _ (CmmT_GlobalReg happy_var_1))) + = HappyAbsSyn21 (return (CmmReg (CmmGlobal happy_var_1)) - )} + ) +happyReduction_132 _ = notHappyAtAll -happyReduce_132 = happySpecReduce_0 40# happyReduction_132 -happyReduction_132 = happyIn44 +happyReduce_133 = happySpecReduce_0 44 happyReduction_133 +happyReduction_133 = HappyAbsSyn44 ([] ) -happyReduce_133 = happyReduce 4# 40# happyReduction_133 -happyReduction_133 (happy_x_4 `HappyStk` - happy_x_3 `HappyStk` - happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_134 = happyReduce 4 44 happyReduction_134 +happyReduction_134 (_ `HappyStk` + _ `HappyStk` + (HappyAbsSyn44 happy_var_2) `HappyStk` + _ `HappyStk` happyRest) - = case happyOut45 happy_x_2 of { happy_var_2 -> - happyIn44 + = HappyAbsSyn44 (happy_var_2 - ) `HappyStk` happyRest} + ) `HappyStk` happyRest -happyReduce_134 = happySpecReduce_1 41# happyReduction_134 -happyReduction_134 happy_x_1 - = case happyOut46 happy_x_1 of { happy_var_1 -> - happyIn45 +happyReduce_135 = happySpecReduce_1 45 happyReduction_135 +happyReduction_135 (HappyAbsSyn46 happy_var_1) + = HappyAbsSyn44 ([happy_var_1] - )} + ) +happyReduction_135 _ = notHappyAtAll -happyReduce_135 = happySpecReduce_2 41# happyReduction_135 -happyReduction_135 happy_x_2 - happy_x_1 - = case happyOut46 happy_x_1 of { happy_var_1 -> - happyIn45 +happyReduce_136 = happySpecReduce_2 45 happyReduction_136 +happyReduction_136 _ + (HappyAbsSyn46 happy_var_1) + = HappyAbsSyn44 ([happy_var_1] - )} + ) +happyReduction_136 _ _ = notHappyAtAll -happyReduce_136 = happySpecReduce_3 41# happyReduction_136 -happyReduction_136 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut46 happy_x_1 of { happy_var_1 -> - case happyOut45 happy_x_3 of { happy_var_3 -> - happyIn45 +happyReduce_137 = happySpecReduce_3 45 happyReduction_137 +happyReduction_137 (HappyAbsSyn44 happy_var_3) + _ + (HappyAbsSyn46 happy_var_1) + = HappyAbsSyn44 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_137 _ _ _ = notHappyAtAll -happyReduce_137 = happySpecReduce_1 42# happyReduction_137 -happyReduction_137 happy_x_1 - = case happyOut47 happy_x_1 of { happy_var_1 -> - happyIn46 +happyReduce_138 = happySpecReduce_1 46 happyReduction_138 +happyReduction_138 (HappyAbsSyn47 happy_var_1) + = HappyAbsSyn46 (do e <- happy_var_1; return (e, (inferCmmHint (CmmReg (CmmLocal e)))) - )} + ) +happyReduction_138 _ = notHappyAtAll -happyReduce_138 = happyMonadReduce 2# 42# happyReduction_138 -happyReduction_138 (happy_x_2 `HappyStk` - happy_x_1 `HappyStk` +happyReduce_139 = happyMonadReduce 2 46 happyReduction_139 +happyReduction_139 ((HappyAbsSyn47 happy_var_2) `HappyStk` + (HappyTerminal (L _ (CmmT_String happy_var_1))) `HappyStk` happyRest) tk - = happyThen (case happyOutTok happy_x_1 of { (L _ (CmmT_String happy_var_1)) -> - case happyOut47 happy_x_2 of { happy_var_2 -> - ( do h <- parseCmmHint happy_var_1; + = happyThen (( do h <- parseCmmHint happy_var_1; return $ do - e <- happy_var_2; return (e,h))}} - ) (\r -> happyReturn (happyIn46 r)) + e <- happy_var_2; return (e,h)) + ) (\r -> happyReturn (HappyAbsSyn46 r)) -happyReduce_139 = happySpecReduce_1 43# happyReduction_139 -happyReduction_139 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn47 +happyReduce_140 = happySpecReduce_1 47 happyReduction_140 +happyReduction_140 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn47 (do e <- lookupName happy_var_1; return $ case e of CmmReg (CmmLocal r) -> r other -> pprPanic "CmmParse:" (ftext happy_var_1 <> text " not a local register") - )} + ) +happyReduction_140 _ = notHappyAtAll -happyReduce_140 = happySpecReduce_1 44# happyReduction_140 -happyReduction_140 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_Name happy_var_1)) -> - happyIn48 +happyReduce_141 = happySpecReduce_1 48 happyReduction_141 +happyReduction_141 (HappyTerminal (L _ (CmmT_Name happy_var_1))) + = HappyAbsSyn48 (do e <- lookupName happy_var_1; return $ case e of CmmReg r -> r other -> pprPanic "CmmParse:" (ftext happy_var_1 <> text " not a register") - )} + ) +happyReduction_141 _ = notHappyAtAll -happyReduce_141 = happySpecReduce_1 44# happyReduction_141 -happyReduction_141 happy_x_1 - = case happyOutTok happy_x_1 of { (L _ (CmmT_GlobalReg happy_var_1)) -> - happyIn48 +happyReduce_142 = happySpecReduce_1 48 happyReduction_142 +happyReduction_142 (HappyTerminal (L _ (CmmT_GlobalReg happy_var_1))) + = HappyAbsSyn48 (return (CmmGlobal happy_var_1) - )} + ) +happyReduction_142 _ = notHappyAtAll -happyReduce_142 = happySpecReduce_0 45# happyReduction_142 -happyReduction_142 = happyIn49 +happyReduce_143 = happySpecReduce_0 49 happyReduction_143 +happyReduction_143 = HappyAbsSyn49 (Nothing ) -happyReduce_143 = happySpecReduce_3 45# happyReduction_143 -happyReduction_143 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut50 happy_x_2 of { happy_var_2 -> - happyIn49 +happyReduce_144 = happySpecReduce_3 49 happyReduction_144 +happyReduction_144 _ + (HappyAbsSyn50 happy_var_2) + _ + = HappyAbsSyn49 (Just happy_var_2 - )} + ) +happyReduction_144 _ _ _ = notHappyAtAll -happyReduce_144 = happySpecReduce_0 46# happyReduction_144 -happyReduction_144 = happyIn50 +happyReduce_145 = happySpecReduce_0 50 happyReduction_145 +happyReduction_145 = HappyAbsSyn50 ([] ) -happyReduce_145 = happySpecReduce_1 46# happyReduction_145 -happyReduction_145 happy_x_1 - = case happyOut51 happy_x_1 of { happy_var_1 -> - happyIn50 +happyReduce_146 = happySpecReduce_1 50 happyReduction_146 +happyReduction_146 (HappyAbsSyn50 happy_var_1) + = HappyAbsSyn50 (happy_var_1 - )} + ) +happyReduction_146 _ = notHappyAtAll -happyReduce_146 = happySpecReduce_2 47# happyReduction_146 -happyReduction_146 happy_x_2 - happy_x_1 - = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn51 +happyReduce_147 = happySpecReduce_2 51 happyReduction_147 +happyReduction_147 _ + (HappyAbsSyn47 happy_var_1) + = HappyAbsSyn50 ([happy_var_1] - )} + ) +happyReduction_147 _ _ = notHappyAtAll -happyReduce_147 = happySpecReduce_1 47# happyReduction_147 -happyReduction_147 happy_x_1 - = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn51 +happyReduce_148 = happySpecReduce_1 51 happyReduction_148 +happyReduction_148 (HappyAbsSyn47 happy_var_1) + = HappyAbsSyn50 ([happy_var_1] - )} + ) +happyReduction_148 _ = notHappyAtAll -happyReduce_148 = happySpecReduce_3 47# happyReduction_148 -happyReduction_148 happy_x_3 - happy_x_2 - happy_x_1 - = case happyOut52 happy_x_1 of { happy_var_1 -> - case happyOut51 happy_x_3 of { happy_var_3 -> - happyIn51 +happyReduce_149 = happySpecReduce_3 51 happyReduction_149 +happyReduction_149 (HappyAbsSyn50 happy_var_3) + _ + (HappyAbsSyn47 happy_var_1) + = HappyAbsSyn50 (happy_var_1 : happy_var_3 - )}} + ) +happyReduction_149 _ _ _ = notHappyAtAll -happyReduce_149 = happySpecReduce_2 48# happyReduction_149 -happyReduction_149 happy_x_2 - happy_x_1 - = case happyOut53 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { (L _ (CmmT_Name happy_var_2)) -> - happyIn52 +happyReduce_150 = happySpecReduce_2 52 happyReduction_150 +happyReduction_150 (HappyTerminal (L _ (CmmT_Name happy_var_2))) + (HappyAbsSyn37 happy_var_1) + = HappyAbsSyn47 (newLocal happy_var_1 happy_var_2 - )}} + ) +happyReduction_150 _ _ = notHappyAtAll -happyReduce_150 = happySpecReduce_1 49# happyReduction_150 -happyReduction_150 happy_x_1 - = happyIn53 +happyReduce_151 = happySpecReduce_1 53 happyReduction_151 +happyReduction_151 _ + = HappyAbsSyn37 (b8 ) -happyReduce_151 = happySpecReduce_1 49# happyReduction_151 -happyReduction_151 happy_x_1 - = case happyOut54 happy_x_1 of { happy_var_1 -> - happyIn53 +happyReduce_152 = happySpecReduce_1 53 happyReduction_152 +happyReduction_152 (HappyAbsSyn37 happy_var_1) + = HappyAbsSyn37 (happy_var_1 - )} + ) +happyReduction_152 _ = notHappyAtAll -happyReduce_152 = happySpecReduce_1 50# happyReduction_152 -happyReduction_152 happy_x_1 - = happyIn54 +happyReduce_153 = happySpecReduce_1 54 happyReduction_153 +happyReduction_153 _ + = HappyAbsSyn37 (b16 ) -happyReduce_153 = happySpecReduce_1 50# happyReduction_153 -happyReduction_153 happy_x_1 - = happyIn54 +happyReduce_154 = happySpecReduce_1 54 happyReduction_154 +happyReduction_154 _ + = HappyAbsSyn37 (b32 ) -happyReduce_154 = happySpecReduce_1 50# happyReduction_154 -happyReduction_154 happy_x_1 - = happyIn54 +happyReduce_155 = happySpecReduce_1 54 happyReduction_155 +happyReduction_155 _ + = HappyAbsSyn37 (b64 ) -happyReduce_155 = happySpecReduce_1 50# happyReduction_155 -happyReduction_155 happy_x_1 - = happyIn54 +happyReduce_156 = happySpecReduce_1 54 happyReduction_156 +happyReduction_156 _ + = HappyAbsSyn37 (b128 ) -happyReduce_156 = happySpecReduce_1 50# happyReduction_156 -happyReduction_156 happy_x_1 - = happyIn54 +happyReduce_157 = happySpecReduce_1 54 happyReduction_157 +happyReduction_157 _ + = HappyAbsSyn37 (b256 ) -happyReduce_157 = happySpecReduce_1 50# happyReduction_157 -happyReduction_157 happy_x_1 - = happyIn54 +happyReduce_158 = happySpecReduce_1 54 happyReduction_158 +happyReduction_158 _ + = HappyAbsSyn37 (b512 ) -happyReduce_158 = happySpecReduce_1 50# happyReduction_158 -happyReduction_158 happy_x_1 - = happyIn54 +happyReduce_159 = happySpecReduce_1 54 happyReduction_159 +happyReduction_159 _ + = HappyAbsSyn37 (f32 ) -happyReduce_159 = happySpecReduce_1 50# happyReduction_159 -happyReduction_159 happy_x_1 - = happyIn54 +happyReduce_160 = happySpecReduce_1 54 happyReduction_160 +happyReduction_160 _ + = HappyAbsSyn37 (f64 ) -happyReduce_160 = happyMonadReduce 1# 50# happyReduction_160 -happyReduction_160 (happy_x_1 `HappyStk` +happyReduce_161 = happyMonadReduce 1 54 happyReduction_161 +happyReduction_161 (_ `HappyStk` happyRest) tk = happyThen (( do dflags <- getDynFlags; return $ gcWord dflags) - ) (\r -> happyReturn (happyIn54 r)) + ) (\r -> happyReturn (HappyAbsSyn37 r)) happyNewToken action sts stk = cmmlex(\tk -> - let cont i = happyDoAction i tk action sts stk in + let cont i = action i i tk (HappyState action) sts stk in case tk of { - L _ CmmT_EOF -> happyDoAction 74# tk action sts stk; - L _ (CmmT_SpecChar ':') -> cont 1#; - L _ (CmmT_SpecChar ';') -> cont 2#; - L _ (CmmT_SpecChar '{') -> cont 3#; - L _ (CmmT_SpecChar '}') -> cont 4#; - L _ (CmmT_SpecChar '[') -> cont 5#; - L _ (CmmT_SpecChar ']') -> cont 6#; - L _ (CmmT_SpecChar '(') -> cont 7#; - L _ (CmmT_SpecChar ')') -> cont 8#; - L _ (CmmT_SpecChar '=') -> cont 9#; - L _ (CmmT_SpecChar '`') -> cont 10#; - L _ (CmmT_SpecChar '~') -> cont 11#; - L _ (CmmT_SpecChar '/') -> cont 12#; - L _ (CmmT_SpecChar '*') -> cont 13#; - L _ (CmmT_SpecChar '%') -> cont 14#; - L _ (CmmT_SpecChar '-') -> cont 15#; - L _ (CmmT_SpecChar '+') -> cont 16#; - L _ (CmmT_SpecChar '&') -> cont 17#; - L _ (CmmT_SpecChar '^') -> cont 18#; - L _ (CmmT_SpecChar '|') -> cont 19#; - L _ (CmmT_SpecChar '>') -> cont 20#; - L _ (CmmT_SpecChar '<') -> cont 21#; - L _ (CmmT_SpecChar ',') -> cont 22#; - L _ (CmmT_SpecChar '!') -> cont 23#; - L _ (CmmT_DotDot) -> cont 24#; - L _ (CmmT_DoubleColon) -> cont 25#; - L _ (CmmT_Shr) -> cont 26#; - L _ (CmmT_Shl) -> cont 27#; - L _ (CmmT_Ge) -> cont 28#; - L _ (CmmT_Le) -> cont 29#; - L _ (CmmT_Eq) -> cont 30#; - L _ (CmmT_Ne) -> cont 31#; - L _ (CmmT_BoolAnd) -> cont 32#; - L _ (CmmT_BoolOr) -> cont 33#; - L _ (CmmT_CLOSURE) -> cont 34#; - L _ (CmmT_INFO_TABLE) -> cont 35#; - L _ (CmmT_INFO_TABLE_RET) -> cont 36#; - L _ (CmmT_INFO_TABLE_FUN) -> cont 37#; - L _ (CmmT_INFO_TABLE_CONSTR) -> cont 38#; - L _ (CmmT_INFO_TABLE_SELECTOR) -> cont 39#; - L _ (CmmT_else) -> cont 40#; - L _ (CmmT_export) -> cont 41#; - L _ (CmmT_section) -> cont 42#; - L _ (CmmT_align) -> cont 43#; - L _ (CmmT_goto) -> cont 44#; - L _ (CmmT_if) -> cont 45#; - L _ (CmmT_call) -> cont 46#; - L _ (CmmT_jump) -> cont 47#; - L _ (CmmT_foreign) -> cont 48#; - L _ (CmmT_never) -> cont 49#; - L _ (CmmT_prim) -> cont 50#; - L _ (CmmT_reserve) -> cont 51#; - L _ (CmmT_return) -> cont 52#; - L _ (CmmT_returns) -> cont 53#; - L _ (CmmT_import) -> cont 54#; - L _ (CmmT_switch) -> cont 55#; - L _ (CmmT_case) -> cont 56#; - L _ (CmmT_default) -> cont 57#; - L _ (CmmT_push) -> cont 58#; - L _ (CmmT_bits8) -> cont 59#; - L _ (CmmT_bits16) -> cont 60#; - L _ (CmmT_bits32) -> cont 61#; - L _ (CmmT_bits64) -> cont 62#; - L _ (CmmT_bits128) -> cont 63#; - L _ (CmmT_bits256) -> cont 64#; - L _ (CmmT_bits512) -> cont 65#; - L _ (CmmT_float32) -> cont 66#; - L _ (CmmT_float64) -> cont 67#; - L _ (CmmT_gcptr) -> cont 68#; - L _ (CmmT_GlobalReg happy_dollar_dollar) -> cont 69#; - L _ (CmmT_Name happy_dollar_dollar) -> cont 70#; - L _ (CmmT_String happy_dollar_dollar) -> cont 71#; - L _ (CmmT_Int happy_dollar_dollar) -> cont 72#; - L _ (CmmT_Float happy_dollar_dollar) -> cont 73#; + L _ CmmT_EOF -> action 128 128 tk (HappyState action) sts stk; + L _ (CmmT_SpecChar ':') -> cont 55; + L _ (CmmT_SpecChar ';') -> cont 56; + L _ (CmmT_SpecChar '{') -> cont 57; + L _ (CmmT_SpecChar '}') -> cont 58; + L _ (CmmT_SpecChar '[') -> cont 59; + L _ (CmmT_SpecChar ']') -> cont 60; + L _ (CmmT_SpecChar '(') -> cont 61; + L _ (CmmT_SpecChar ')') -> cont 62; + L _ (CmmT_SpecChar '=') -> cont 63; + L _ (CmmT_SpecChar '`') -> cont 64; + L _ (CmmT_SpecChar '~') -> cont 65; + L _ (CmmT_SpecChar '/') -> cont 66; + L _ (CmmT_SpecChar '*') -> cont 67; + L _ (CmmT_SpecChar '%') -> cont 68; + L _ (CmmT_SpecChar '-') -> cont 69; + L _ (CmmT_SpecChar '+') -> cont 70; + L _ (CmmT_SpecChar '&') -> cont 71; + L _ (CmmT_SpecChar '^') -> cont 72; + L _ (CmmT_SpecChar '|') -> cont 73; + L _ (CmmT_SpecChar '>') -> cont 74; + L _ (CmmT_SpecChar '<') -> cont 75; + L _ (CmmT_SpecChar ',') -> cont 76; + L _ (CmmT_SpecChar '!') -> cont 77; + L _ (CmmT_DotDot) -> cont 78; + L _ (CmmT_DoubleColon) -> cont 79; + L _ (CmmT_Shr) -> cont 80; + L _ (CmmT_Shl) -> cont 81; + L _ (CmmT_Ge) -> cont 82; + L _ (CmmT_Le) -> cont 83; + L _ (CmmT_Eq) -> cont 84; + L _ (CmmT_Ne) -> cont 85; + L _ (CmmT_BoolAnd) -> cont 86; + L _ (CmmT_BoolOr) -> cont 87; + L _ (CmmT_CLOSURE) -> cont 88; + L _ (CmmT_INFO_TABLE) -> cont 89; + L _ (CmmT_INFO_TABLE_RET) -> cont 90; + L _ (CmmT_INFO_TABLE_FUN) -> cont 91; + L _ (CmmT_INFO_TABLE_CONSTR) -> cont 92; + L _ (CmmT_INFO_TABLE_SELECTOR) -> cont 93; + L _ (CmmT_else) -> cont 94; + L _ (CmmT_export) -> cont 95; + L _ (CmmT_section) -> cont 96; + L _ (CmmT_align) -> cont 97; + L _ (CmmT_goto) -> cont 98; + L _ (CmmT_if) -> cont 99; + L _ (CmmT_call) -> cont 100; + L _ (CmmT_jump) -> cont 101; + L _ (CmmT_foreign) -> cont 102; + L _ (CmmT_never) -> cont 103; + L _ (CmmT_prim) -> cont 104; + L _ (CmmT_reserve) -> cont 105; + L _ (CmmT_return) -> cont 106; + L _ (CmmT_returns) -> cont 107; + L _ (CmmT_import) -> cont 108; + L _ (CmmT_switch) -> cont 109; + L _ (CmmT_case) -> cont 110; + L _ (CmmT_default) -> cont 111; + L _ (CmmT_push) -> cont 112; + L _ (CmmT_bits8) -> cont 113; + L _ (CmmT_bits16) -> cont 114; + L _ (CmmT_bits32) -> cont 115; + L _ (CmmT_bits64) -> cont 116; + L _ (CmmT_bits128) -> cont 117; + L _ (CmmT_bits256) -> cont 118; + L _ (CmmT_bits512) -> cont 119; + L _ (CmmT_float32) -> cont 120; + L _ (CmmT_float64) -> cont 121; + L _ (CmmT_gcptr) -> cont 122; + L _ (CmmT_GlobalReg happy_dollar_dollar) -> cont 123; + L _ (CmmT_Name happy_dollar_dollar) -> cont 124; + L _ (CmmT_String happy_dollar_dollar) -> cont 125; + L _ (CmmT_Int happy_dollar_dollar) -> cont 126; + L _ (CmmT_Float happy_dollar_dollar) -> cont 127; _ -> happyError' tk }) -happyError_ 74# tk = happyError' tk +happyError_ 128 tk = happyError' tk happyError_ _ tk = happyError' tk happyThen :: () => P a -> (a -> P b) -> P b @@ -2287,9 +5345,9 @@ happyError' :: () => (Located CmmToken) happyError' tk = (\token -> happyError) tk cmmParse = happySomeParser where - happySomeParser = happyThen (happyParse 0#) (\x -> happyReturn (happyOut4 x)) + happySomeParser = happyThen (happyParse action_0) (\x -> case x of {HappyAbsSyn4 z -> happyReturn z; _other -> notHappyAtAll }) -happySeq = happyDoSeq +happySeq = happyDontSeq section :: String -> Section @@ -2829,8 +5887,13 @@ parseCmmFile dflags filename = do no_module = panic "parseCmmFile: no module" {-# LINE 1 "templates/GenericTemplate.hs" #-} {-# LINE 1 "templates/GenericTemplate.hs" #-} +{-# LINE 1 "" #-} {-# LINE 1 "" #-} -{-# LINE 8 "" #-} + + + + + # 1 "/usr/include/stdc-predef.h" 1 3 4 # 17 "/usr/include/stdc-predef.h" 3 4 @@ -2848,9 +5911,7 @@ parseCmmFile dflags filename = do -# 1 "/usr/include/x86_64-linux-gnu/bits/predefs.h" 1 3 4 -# 18 "/usr/include/x86_64-linux-gnu/bits/predefs.h" 3 4 @@ -2863,7 +5924,6 @@ parseCmmFile dflags filename = do -# 31 "/usr/include/stdc-predef.h" 2 3 4 @@ -2872,30 +5932,23 @@ parseCmmFile dflags filename = do -{-# LINE 8 "" #-} -{-# LINE 1 "templates/GenericTemplate.hs" #-} --- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp -{-# LINE 13 "templates/GenericTemplate.hs" #-} --- Do not remove this comment. Required to fix CPP parsing when using GCC and a clang-compiled alex. -#if __GLASGOW_HASKELL__ > 706 -#define LT(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.<# m)) :: Bool) -#define GTE(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.>=# m)) :: Bool) -#define EQ(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.==# m)) :: Bool) -#else -#define LT(n,m) (n Happy_GHC_Exts.<# m) -#define GTE(n,m) (n Happy_GHC_Exts.>=# m) -#define EQ(n,m) (n Happy_GHC_Exts.==# m) -#endif + +{-# LINE 5 "" #-} +{-# LINE 1 "templates/GenericTemplate.hs" #-} +-- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp + +{-# LINE 13 "templates/GenericTemplate.hs" #-} + {-# LINE 46 "templates/GenericTemplate.hs" #-} -data Happy_IntList = HappyCons Happy_GHC_Exts.Int# Happy_IntList + @@ -2918,163 +5971,121 @@ happyParse start_state = happyNewToken s ----------------------------------------------------------------------------- -- Accepting the parse --- If the current token is 0#, it means we've just accepted a partial +-- 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 0# tk st sts (_ `HappyStk` ans `HappyStk` _) = +happyAccept (1) tk st sts (_ `HappyStk` ans `HappyStk` _) = happyReturn1 ans happyAccept j tk st sts (HappyStk ans _) = - (happyTcHack j (happyTcHack st)) (happyReturn1 ans) + (happyReturn1 ans) ----------------------------------------------------------------------------- -- Arrays only: do the next action +{-# LINE 155 "templates/GenericTemplate.hs" #-} - -happyDoAction i tk st - = {- nothing -} - - - case action of - 0# -> {- nothing -} - happyFail i tk st - -1# -> {- nothing -} - happyAccept i tk st - n | LT(n,(0# :: Happy_GHC_Exts.Int#)) -> {- nothing -} - - (happyReduceArr Happy_Data_Array.! rule) i tk st - where rule = (Happy_GHC_Exts.I# ((Happy_GHC_Exts.negateInt# ((n Happy_GHC_Exts.+# (1# :: Happy_GHC_Exts.Int#)))))) - n -> {- nothing -} - - - happyShift new_state i tk st - where new_state = (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) - where off = indexShortOffAddr happyActOffsets st - off_i = (off Happy_GHC_Exts.+# i) - check = if GTE(off_i,(0# :: Happy_GHC_Exts.Int#)) - then EQ(indexShortOffAddr happyCheck off_i, i) - else False - action - | check = indexShortOffAddr happyTable off_i - | otherwise = indexShortOffAddr happyDefActions st - - -indexShortOffAddr (HappyA# arr) off = - Happy_GHC_Exts.narrow16Int# i - where - i = Happy_GHC_Exts.word2Int# (Happy_GHC_Exts.or# (Happy_GHC_Exts.uncheckedShiftL# high 8#) low) - high = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr (off' Happy_GHC_Exts.+# 1#))) - low = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr off')) - off' = off Happy_GHC_Exts.*# 2# - - - - - -data HappyAddr = HappyA# Happy_GHC_Exts.Addr# +----------------------------------------------------------------------------- +-- 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) ------------------------------------------------------------------------------ --- HappyState data type (not arrays) -{-# LINE 170 "templates/GenericTemplate.hs" #-} ----------------------------------------------------------------------------- -- Shifting a token -happyShift new_state 0# tk st sts stk@(x `HappyStk` _) = - let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in +happyShift new_state (1) tk st sts stk@(x `HappyStk` _) = + let i = (case x of { HappyErrorToken (i) -> i }) in -- trace "shifting the error token" $ - happyDoAction i tk new_state (HappyCons (st) (sts)) (stk) + new_state i i tk (HappyState (new_state)) ((st):(sts)) (stk) happyShift new_state i tk st sts stk = - happyNewToken new_state (HappyCons (st) (sts)) ((happyInTok (tk))`HappyStk`stk) + happyNewToken new_state ((st):(sts)) ((HappyTerminal (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') +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 (happyGoto nt j tk st sts (r `HappyStk` stk')) + happySeq r (action 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') +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 (happyGoto nt j tk st sts (r `HappyStk` stk')) + happySeq r (action 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') +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 (happyGoto nt j tk st sts (r `HappyStk` stk')) + happySeq r (action 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 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 Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) sts of - sts1@((HappyCons (st1@(action)) (_))) -> + = 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 (happyGoto nt j tk st1 sts1 r) + happyDoSeq r (action 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 (1) tk st sts stk + = happyFail (1) tk st sts stk happyMonadReduce k nt fn j tk st sts stk = - case happyDrop k (HappyCons (st) (sts)) of - sts1@((HappyCons (st1@(action)) (_))) -> + case happyDrop k ((st):(sts)) of + sts1@(((st1@(HappyState (action))):(_))) -> let drop_stk = happyDropStk k stk in - happyThen1 (fn stk tk) (\r -> happyGoto nt j tk st1 sts1 (r `HappyStk` drop_stk)) + happyThen1 (fn stk tk) (\r -> action nt j tk st1 sts1 (r `HappyStk` drop_stk)) -happyMonad2Reduce k nt fn 0# tk st sts stk - = happyFail 0# tk st sts 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 = - case happyDrop k (HappyCons (st) (sts)) of - sts1@((HappyCons (st1@(action)) (_))) -> + case happyDrop k ((st):(sts)) of + sts1@(((st1@(HappyState (action))):(_))) -> let drop_stk = happyDropStk k stk - off = indexShortOffAddr happyGotoOffsets st1 - off_i = (off Happy_GHC_Exts.+# nt) - new_state = indexShortOffAddr happyTable off_i + + new_state = action + in happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk)) -happyDrop 0# l = l -happyDrop n (HappyCons (_) (t)) = happyDrop (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) t +happyDrop (0) l = l +happyDrop n ((_):(t)) = happyDrop (n - ((1) :: Int)) t -happyDropStk 0# l = l -happyDropStk n (x `HappyStk` xs) = happyDropStk (n Happy_GHC_Exts.-# (1#::Happy_GHC_Exts.Int#)) xs +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 Happy_GHC_Exts.+# nt) - new_state = indexShortOffAddr happyTable off_i - - +{-# LINE 256 "templates/GenericTemplate.hs" #-} +happyGoto action j tk st = action j j tk (HappyState action) ----------------------------------------------------------------------------- --- Error recovery (0# is the error token) +-- Error recovery ((1) is the error token) -- parse error if we are in recovery and we fail again -happyFail 0# tk old_st _ stk@(x `HappyStk` _) = - let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in +happyFail (1) tk old_st _ stk@(x `HappyStk` _) = + let i = (case x of { HappyErrorToken (i) -> i }) in -- trace "failing" $ happyError_ i tk @@ -3083,17 +6094,17 @@ happyFail 0# tk old_st _ stk@(x `HappySt for now --SDM -- discard a state -happyFail 0# tk old_st (HappyCons ((action)) (sts)) +happyFail (1) tk old_st (((HappyState (action))):(sts)) (saved_tok `HappyStk` _ `HappyStk` stk) = -- trace ("discarding state, depth " ++ show (length stk)) $ - happyDoAction 0# tk action sts ((saved_tok`HappyStk`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 (action) sts stk = +happyFail i tk (HappyState (action)) sts stk = -- trace "entering error recovery" $ - happyDoAction 0# tk action sts ( (Happy_GHC_Exts.unsafeCoerce# (Happy_GHC_Exts.I# (i))) `HappyStk` stk) + action (1) (1) tk (HappyState (action)) sts ( (HappyErrorToken (i)) `HappyStk` stk) -- Internal happy errors: @@ -3104,9 +6115,9 @@ notHappyAtAll = error "Internal Happy er -- Hack to get the typechecker to accept our action functions -happyTcHack :: Happy_GHC_Exts.Int# -> a -> a -happyTcHack x y = y -{-# INLINE happyTcHack #-} + + + ----------------------------------------------------------------------------- @@ -3124,14 +6135,7 @@ happyDontSeq a b = b -- 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 #-} - +{-# LINE 322 "templates/GenericTemplate.hs" #-} {-# NOINLINE happyShift #-} {-# NOINLINE happySpecReduce_0 #-} {-# NOINLINE happySpecReduce_1 #-}