{-# OPTIONS_GHC -w #-}
{-# OPTIONS -XMagicHash -XBangPatterns -XTypeSynonymInstances -XFlexibleInstances -cpp #-}
#if __GLASGOW_HASKELL__ >= 710
{-# OPTIONS_GHC -XPartialTypeSignatures #-}
#endif
module Parser
  ( parse,
    E (..),
    Token (..),
    SExpr (..),
  )
where

import Lexer (Token (..))
import qualified Data.Array as Happy_Data_Array
import qualified Data.Bits as Bits
import qualified GHC.Exts as Happy_GHC_Exts
import Control.Applicative(Applicative(..))
import Control.Monad (ap)

-- parser produced by Happy Version 1.20.1.1

newtype HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 = HappyAbsSyn HappyAny
#if __GLASGOW_HASKELL__ >= 607
type HappyAny = Happy_GHC_Exts.Any
#else
type HappyAny = forall a . a
#endif
happyIn4 :: t4 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn4 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn4 t4
x = t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t4
x
{-# INLINE happyIn4 #-}
happyOut4 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t4
happyOut4 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut4 #-}
happyIn5 :: t5 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn5 :: forall t5 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t5 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn5 t5
x = t5 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t5
x
{-# INLINE happyIn5 #-}
happyOut5 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t5
happyOut5 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t5
happyOut5 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t5
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut5 #-}
happyIn6 :: t6 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn6 :: forall t6 t4 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn6 t6
x = t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t6
x
{-# INLINE happyIn6 #-}
happyOut6 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t6
happyOut6 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t6
happyOut6 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t6
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut6 #-}
happyIn7 :: t7 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn7 :: forall t7 t4 t5 t6 t8 t9 t10 t11 t12 t13 t14 t15.
t7 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn7 t7
x = t7 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t7
x
{-# INLINE happyIn7 #-}
happyOut7 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t7
happyOut7 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t7
happyOut7 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t7
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut7 #-}
happyIn8 :: t8 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn8 :: forall t8 t4 t5 t6 t7 t9 t10 t11 t12 t13 t14 t15.
t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn8 t8
x = t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t8
x
{-# INLINE happyIn8 #-}
happyOut8 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t8
happyOut8 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t8
happyOut8 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t8
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut8 #-}
happyIn9 :: t9 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn9 :: forall t9 t4 t5 t6 t7 t8 t10 t11 t12 t13 t14 t15.
t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn9 t9
x = t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t9
x
{-# INLINE happyIn9 #-}
happyOut9 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t9
happyOut9 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t9
happyOut9 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t9
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut9 #-}
happyIn10 :: t10 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn10 :: forall t10 t4 t5 t6 t7 t8 t9 t11 t12 t13 t14 t15.
t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn10 t10
x = t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t10
x
{-# INLINE happyIn10 #-}
happyOut10 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t10
happyOut10 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut10 #-}
happyIn11 :: t11 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn11 :: forall t11 t4 t5 t6 t7 t8 t9 t10 t12 t13 t14 t15.
t11 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn11 t11
x = t11 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t11
x
{-# INLINE happyIn11 #-}
happyOut11 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t11
happyOut11 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
happyOut11 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut11 #-}
happyIn12 :: t12 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn12 :: forall t12 t4 t5 t6 t7 t8 t9 t10 t11 t13 t14 t15.
t12 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn12 t12
x = t12 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t12
x
{-# INLINE happyIn12 #-}
happyOut12 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t12
happyOut12 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t12
happyOut12 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t12
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut12 #-}
happyIn13 :: t13 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn13 :: forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13 t13
x = t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t13
x
{-# INLINE happyIn13 #-}
happyOut13 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t13
happyOut13 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t13
happyOut13 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t13
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut13 #-}
happyIn14 :: t14 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn14 :: forall t14 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15.
t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn14 t14
x = t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t14
x
{-# INLINE happyIn14 #-}
happyOut14 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t14
happyOut14 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut14 #-}
happyIn15 :: t15 -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyIn15 :: forall t15 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14.
t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn15 t15
x = t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# t15
x
{-# INLINE happyIn15 #-}
happyOut15 :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> t15
happyOut15 :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
happyOut15 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOut15 #-}
happyInTok :: (Token) -> (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyInTok :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
Token -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyInTok Token
x = Token -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# Token
x
{-# INLINE happyInTok #-}
happyOutTok :: (HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15) -> (Token)
happyOutTok :: forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x = HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
x
{-# INLINE happyOutTok #-}


happyExpList :: HappyAddr
happyExpList :: HappyAddr
happyExpList = Addr# -> HappyAddr
HappyA# Addr#
"\x00\x80\x59\x42\x10\x02\x00\x08\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\xc0\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x98\x25\x04\x21\x00\x80\x59\x42\x10\x02\x00\x00\x02\x00\x00\x00\x80\x59\x42\x10\x02\x00\x20\x04\x00\x01\x00\x00\x00\x00\x00\x04\x00\x00\x10\x00\x18\x00\x80\x59\x42\x10\x02\x00\x00\x00\x00\x00\x00\x00\x42\x00\x10\x00\x00\x00\x00\x00\x02\x00\x80\x59\x42\x50\x02\x00\x00\x00\x04\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x08\x04\x00\x00\x58\x40\x10\x02\x00\x80\x05\x04\x21\x00\x00\x58\x40\x10\x02\x00\x80\x05\x04\x21\x00\x00\x58\x40\x10\x02\x00\x80\x05\x04\x21\x00\x00\x00\x00\x40\x00\x00\x20\x04\x00\x01\x00\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x80\x59\x42\x10\x02\x00\x00\x00\xc0\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x80\x59\x42\x10\x02\x00\x20\x04\x00\x01\x00\x80\x59\x42\x10\x02\x00\x00\x00\x00\x00\x00\x00\x42\x00\x10\x00\x00\x98\x25\x04\x21\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x42\x00\x10\x00\x00\x20\x04\x00\x01\x00\x00\x42\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x08\x00\x00\x00\x40\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x80\x00\x00\x00\x98\x25\x04\x21\x00\x00\x00\x00\x00\x00\x00\x98\x25\x04\x21\x00\x80\x59\x42\x10\x02\x00\x98\x25\x04\x21\x00\x00\x80\x00\x40\x00\x00\x98\x25\x04\x21\x00\x00\x42\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x98\x25\x04\x21\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x59\x42\x10\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#

{-# NOINLINE happyExpListPerState #-}
happyExpListPerState :: Int -> [String]
happyExpListPerState Int
st =
    [String]
token_strs_expected
  where token_strs :: [String]
token_strs = [String
"error",String
"%dummy",String
"%start_parse",String
"Expr",String
"TypeDef",String
"FuncDef",String
"Conditional",String
"FuncApp",String
"LowTerm",String
"HighTerm",String
"LowLogicOp",String
"HighLogicOp",String
"Factor",String
"LowTypeNote",String
"HighTypeNote",String
"let",String
"type",String
"typeof",String
"in",String
"int",String
"bool",String
"string",String
"literal",String
"fatarrow",String
"arrow",String
"if",String
"then",String
"else",String
"and",String
"or",String
"'\"'",String
"'='",String
"'+'",String
"'-'",String
"'*'",String
"'/'",String
"'('",String
"')'",String
"':'",String
"'|'",String
"'&'",String
"'<'",String
"'>'",String
"%eof"]
        bit_start :: Int
bit_start = Int
st Int -> Int -> Int
forall a. Num a => a -> a -> a
Prelude.* Int
44
        bit_end :: Int
bit_end = (Int
st Int -> Int -> Int
forall a. Num a => a -> a -> a
Prelude.+ Int
1) Int -> Int -> Int
forall a. Num a => a -> a -> a
Prelude.* Int
44
        read_bit :: Int -> Bool
read_bit = HappyAddr -> Int -> Bool
readArrayBit HappyAddr
happyExpList
        bits :: [Bool]
bits = (Int -> Bool) -> [Int] -> [Bool]
forall a b. (a -> b) -> [a] -> [b]
Prelude.map Int -> Bool
read_bit [Int
bit_start..Int
bit_end Int -> Int -> Int
forall a. Num a => a -> a -> a
Prelude.- Int
1]
        bits_indexed :: [(Bool, Int)]
bits_indexed = [Bool] -> [Int] -> [(Bool, Int)]
forall a b. [a] -> [b] -> [(a, b)]
Prelude.zip [Bool]
bits [Int
0..Int
43]
        token_strs_expected :: [String]
token_strs_expected = ((Bool, Int) -> [String]) -> [(Bool, Int)] -> [String]
forall (t :: * -> *) a b. Foldable t => (a -> [b]) -> t a -> [b]
Prelude.concatMap (Bool, Int) -> [String]
f [(Bool, Int)]
bits_indexed
        f :: (Bool, Int) -> [String]
f (Bool
Prelude.False, Int
_) = []
        f (Bool
Prelude.True, Int
nr) = [[String]
token_strs [String] -> Int -> String
forall a. HasCallStack => [a] -> Int -> a
Prelude.!! Int
nr]

happyActOffsets :: HappyAddr
happyActOffsets :: HappyAddr
happyActOffsets = Addr# -> HappyAddr
HappyA# Addr#
"\x0d\x00\x04\x00\x02\x00\xeb\xff\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xfe\xff\x06\x00\x00\x00\x0e\x00\x24\x00\x00\x00\x00\x00\x0d\x00\x0d\x00\x27\x00\x19\x00\x1d\x00\x1c\x00\x18\x00\x25\x00\x00\x00\x1d\x00\x23\x00\x01\x00\x3b\x00\x3a\x00\x00\x00\xeb\x00\xf3\xff\x31\x00\x31\x00\x31\x00\x31\x00\x31\x00\x31\x00\xfd\x00\x1d\x00\xe9\x00\x00\x00\x25\x00\xe9\x00\xf6\x00\xf6\x00\x09\x01\x00\x00\x25\x00\x1d\x00\x25\x00\x00\x00\x1d\x00\x25\x00\xff\x00\x00\x00\x1d\x00\x1d\x00\x1d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x01\x07\x01\x15\x01\x16\x01\x05\x01\x0a\x01\x25\x00\x00\x00\x25\x00\x25\x00\x25\x00\xf8\xff\x25\x00\x1d\x00\x00\x00\x00\x00\x00\x00\x19\x01\x25\x00\x17\x01\x00\x00\x25\x00\x00\x00\x00\x00\x00\x00"#

happyGotoOffsets :: HappyAddr
happyGotoOffsets :: HappyAddr
happyGotoOffsets = Addr# -> HappyAddr
HappyA# Addr#
"\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x57\x00\x61\x00\x00\x00\x6b\x00\xf5\x00\x00\x00\x00\x00\x75\x00\x00\x00\xf7\x00\x00\x00\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x01\xfb\x00\x41\x00\xf0\x00\x36\x00\x3c\x00\x00\x00\xfc\x00\x00\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\xfe\x00\x9d\x00\x00\x00\x00\x01\xa7\x00\x00\x00\x00\x00\x02\x01\x04\x01\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x00\x00\xbb\x00\xc5\x00\xcf\x00\x00\x00\xd9\x00\x08\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x00\x00\x00\xed\x00\x00\x00\x00\x00\x00\x00"#

happyAdjustOffset :: Happy_GHC_Exts.Int# -> Happy_GHC_Exts.Int#
happyAdjustOffset :: Int# -> Int#
happyAdjustOffset Int#
off = Int#
off

happyDefActions :: HappyAddr
happyDefActions :: HappyAddr
happyDefActions = Addr# -> HappyAddr
HappyA# Addr#
"\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xff\xfa\xff\xf7\xff\xf5\xff\xf2\xff\xef\xff\xec\xff\xea\xff\xe8\xff\x00\x00\x00\x00\xe5\xff\xe4\xff\xe6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\xff\x00\x00\xdd\xff\x00\x00\x00\x00\xe6\xff\x00\x00\x00\x00\xf4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xe6\xff\x00\x00\xf1\xff\xed\xff\xee\xff\xeb\xff\xe9\xff\x00\x00\x00\x00\x00\x00\xe7\xff\x00\x00\xe3\xff\x00\x00\xdc\xff\x00\x00\x00\x00\x00\x00\xe2\xff\xdf\xff\xe0\xff\xe1\xff\xdb\xff\xf3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf6\xff\xfb\xff\xfd\xff\x00\x00\x00\x00\x00\x00\xf8\xff\x00\x00\xfe\xff\xf9\xff"#

happyCheck :: HappyAddr
happyCheck :: HappyAddr
happyCheck = Addr# -> HappyAddr
HappyA# Addr#
"\xff\xff\x09\x00\x01\x00\x02\x00\x11\x00\x01\x00\x05\x00\x06\x00\x1d\x00\x08\x00\x08\x00\x18\x00\x0b\x00\x0f\x00\x01\x00\x02\x00\x18\x00\x10\x00\x05\x00\x06\x00\x0e\x00\x08\x00\x08\x00\x16\x00\x0b\x00\x18\x00\x01\x00\x02\x00\x1b\x00\x10\x00\x05\x00\x06\x00\x03\x00\x08\x00\x0a\x00\x16\x00\x0b\x00\x08\x00\x01\x00\x02\x00\x1b\x00\x10\x00\x05\x00\x06\x00\x08\x00\x08\x00\x07\x00\x16\x00\x0b\x00\x19\x00\x1a\x00\x16\x00\x1b\x00\x10\x00\x05\x00\x06\x00\x1c\x00\x08\x00\x17\x00\x16\x00\x06\x00\x07\x00\x08\x00\x09\x00\x1b\x00\x10\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0c\x00\x16\x00\x07\x00\x08\x00\x09\x00\x10\x00\x1b\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x07\x00\x08\x00\x09\x00\x12\x00\x13\x00\x11\x00\x14\x00\x15\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x08\x00\x09\x00\x0f\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0a\x00\x0b\x00\x0d\x00\x18\x00\x17\x00\x0e\x00\x17\x00\x04\x00\x04\x00\x11\x00\x17\x00\x04\x00\xff\xff\xff\xff\x09\x00\x09\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#

happyTable :: HappyAddr
happyTable :: HappyAddr
happyTable = Addr# -> HappyAddr
HappyA# Addr#
"\x00\x00\x50\x00\x0e\x00\x0f\x00\x33\x00\x03\x00\x10\x00\x11\x00\xff\xff\x12\x00\x29\x00\x2a\x00\x13\x00\x24\x00\x0e\x00\x0f\x00\x51\x00\x14\x00\x10\x00\x11\x00\x23\x00\x12\x00\x22\x00\x15\x00\x13\x00\x37\x00\x0e\x00\x0f\x00\x16\x00\x14\x00\x10\x00\x11\x00\x19\x00\x1d\x00\x3b\x00\x15\x00\x13\x00\x1a\x00\x0e\x00\x0f\x00\x16\x00\x14\x00\x10\x00\x11\x00\x21\x00\x12\x00\x1e\x00\x15\x00\x13\x00\x3c\x00\x3d\x00\x1b\x00\x16\x00\x14\x00\x10\x00\x11\x00\x3e\x00\x2c\x00\x38\x00\x15\x00\x2d\x00\x0a\x00\x0b\x00\x0c\x00\x16\x00\x14\x00\x2a\x00\x0a\x00\x0b\x00\x0c\x00\x35\x00\x2d\x00\x2f\x00\x0b\x00\x0c\x00\x36\x00\x16\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x1f\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x1e\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x1b\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x39\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x1f\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x47\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x46\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x44\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x42\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x54\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x53\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x52\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x51\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x57\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x59\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x5a\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x2e\x00\x0b\x00\x0c\x00\x27\x00\x28\x00\x34\x00\x25\x00\x26\x00\x16\x00\x17\x00\x38\x00\x17\x00\x30\x00\x0c\x00\x24\x00\x48\x00\x17\x00\x45\x00\x17\x00\x43\x00\x17\x00\x40\x00\x17\x00\x3f\x00\x17\x00\x3e\x00\x17\x00\x56\x00\x17\x00\x4e\x00\x2a\x00\x42\x00\x23\x00\x4f\x00\x4d\x00\x4c\x00\x4a\x00\x4b\x00\x56\x00\x00\x00\x00\x00\x59\x00\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#

happyReduceArr :: Array
  Int
  (Int#
   -> Token
   -> Int#
   -> Happy_IntList
   -> HappyStk
        (HappyAbsSyn
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr)
   -> [Token]
   -> E (HappyAbsSyn
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr
           SExpr))
happyReduceArr = (Int, Int)
-> [(Int,
     Int#
     -> Token
     -> Int#
     -> Happy_IntList
     -> HappyStk
          (HappyAbsSyn
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr)
     -> [Token]
     -> E (HappyAbsSyn
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr
             SExpr))]
-> Array
     Int
     (Int#
      -> Token
      -> Int#
      -> Happy_IntList
      -> HappyStk
           (HappyAbsSyn
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr)
      -> [Token]
      -> E (HappyAbsSyn
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr
              SExpr))
forall i e. Ix i => (i, i) -> [(i, e)] -> Array i e
Happy_Data_Array.array (Int
1, Int
36) [
	(Int
1 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_1),
	(Int
2 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_2),
	(Int
3 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_3),
	(Int
4 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_4),
	(Int
5 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_5),
	(Int
6 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_6),
	(Int
7 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_7),
	(Int
8 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_8),
	(Int
9 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_9),
	(Int
10 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_10),
	(Int
11 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_11),
	(Int
12 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_12),
	(Int
13 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_13),
	(Int
14 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_14),
	(Int
15 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_15),
	(Int
16 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_16),
	(Int
17 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_17),
	(Int
18 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_18),
	(Int
19 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_19),
	(Int
20 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_20),
	(Int
21 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_21),
	(Int
22 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_22),
	(Int
23 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_23),
	(Int
24 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_24),
	(Int
25 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_25),
	(Int
26 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_26),
	(Int
27 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_27),
	(Int
28 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_28),
	(Int
29 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_29),
	(Int
30 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_30),
	(Int
31 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_31),
	(Int
32 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_32),
	(Int
33 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_33),
	(Int
34 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_34),
	(Int
35 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_35),
	(Int
36 , Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_36)
	]

happy_n_terms :: Int
happy_n_terms = Int
30 :: Prelude.Int
happy_n_nonterms :: Int
happy_n_nonterms = Int
12 :: Prelude.Int

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_1 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_1 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
8# Int#
0# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_1
happyReduction_1 :: HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_1 (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_8 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_7 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 of { (TokenLiteral String
happy_var_2) -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 of { SExpr
happy_var_6 -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_8 of { SExpr
happy_var_8 -> 
	SExpr -> HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn4
		 (String -> SExpr -> SExpr -> SExpr -> SExpr
SLet String
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_6 SExpr
happy_var_8
	) HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest}}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_2 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_2 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
6# Int#
0# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15}.
HappyStk (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyReduction_2
happyReduction_2 :: HappyStk (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyReduction_2 (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 `HappyStk`
	HappyStk (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { (TokenLiteral String
happy_var_2) -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_6 of { SExpr
happy_var_6 -> 
	SExpr -> HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn4
		 (String -> SExpr -> SExpr -> SExpr
SLetInfer String
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_6
	) HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk (HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15)
happyRest}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_3 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_3 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
0# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t4} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_3
happyReduction_3 :: HappyAbsSyn t4 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_3 HappyAbsSyn t4 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t5
happyOut5 HappyAbsSyn t4 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { t4
happy_var_1 -> 
	t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t4 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn4
		 (t4
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_4 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_4 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
6# Int#
1# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyStk
  (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_4
happyReduction_4 :: HappyStk
  (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_4 (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest)
	 = case HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 of { (TokenLiteral String
happy_var_2) -> 
	case HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 of { SExpr
happy_var_6 -> 
	SExpr
-> HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t5 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t5 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn5
		 (String -> SExpr -> SExpr -> SExpr
STypeAlias String
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_6
	) HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> HappyStk
     (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr SExpr t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_5 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_5 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
1# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t5} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_5
happyReduction_5 :: HappyAbsSyn t4 t5 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_5 HappyAbsSyn t4 t5 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t5
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t6
happyOut6 HappyAbsSyn t4 t5 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { t5
happy_var_1 -> 
	t5 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t5 t4 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t5 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn5
		 (t5
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_6 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_6 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
9# Int#
2# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_6
happyReduction_6 :: HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_6 (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_9 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_8 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_7 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 of { (TokenLiteral String
happy_var_2) -> 
	case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_7 of { SExpr
happy_var_7 -> 
	case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_9 of { SExpr
happy_var_9 -> 
	SExpr
-> HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t6 t4 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn6
		 (String -> SExpr -> SExpr -> SExpr -> SExpr
SDef String
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_7 SExpr
happy_var_9
	) HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest}}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_7 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_7 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
7# Int#
2# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_7
happyReduction_7 :: HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyReduction_7 (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_7 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_2 of { (TokenLiteral String
happy_var_2) -> 
	case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_7 of { SExpr
happy_var_7 -> 
	SExpr
-> HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t6 t4 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn6
		 (String -> SExpr -> SExpr -> SExpr
SDefInfer String
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_7
	) HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr t5 SExpr t7 t8 t9 t10 t11 t12 t13 SExpr t15)
happyRest}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_8 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_8 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
2# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t6} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t6 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_8
happyReduction_8 :: HappyAbsSyn t4 t5 t6 t6 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_8 HappyAbsSyn t4 t5 t6 t6 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t6 t8 t9 t10 t11 t12 t13 t14 t15 -> t6
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t7
happyOut7 HappyAbsSyn t4 t5 t6 t6 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { t6
happy_var_1 -> 
	t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t6 t4 t5 t7 t8 t9 t10 t11 t12 t13 t14 t15.
t6 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn6
		 (t6
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_9 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_9 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
6# Int#
3# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t6} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyStk
  (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
happyReduction_9
happyReduction_9 :: HappyStk
  (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
happyReduction_9 (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_6 `HappyStk`
	HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_5 `HappyStk`
	HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { SExpr
happy_var_2 -> 
	case HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_4 of { SExpr
happy_var_4 -> 
	case HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
happy_x_6 of { SExpr
happy_var_6 -> 
	SExpr
-> HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
forall t7 t4 t5 t6 t8 t9 t10 t11 t12 t13 t14 t15.
t7 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn7
		 (SExpr -> SExpr -> SExpr -> SExpr
SConditional SExpr
happy_var_2 SExpr
happy_var_4 SExpr
happy_var_6
	) HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr t5 t6 SExpr t8 t9 t10 t11 t12 t13 t14 t15)
happyRest}}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_10 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_10 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
3# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t7} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t7 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_10
happyReduction_10 :: HappyAbsSyn t4 t5 t6 t7 t7 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_10 HappyAbsSyn t4 t5 t6 t7 t7 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t7 t9 t10 t11 t12 t13 t14 t15 -> t7
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t8
happyOut8 HappyAbsSyn t4 t5 t6 t7 t7 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { t7
happy_var_1 -> 
	t7 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t7 t4 t5 t6 t8 t9 t10 t11 t12 t13 t14 t15.
t7 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn7
		 (t7
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_11 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_11 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_2  Int#
4# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happyReduction_11
happyReduction_11 :: HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happyReduction_11 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { (TokenLiteral String
happy_var_1) -> 
	case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { SExpr
happy_var_2 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
forall t8 t4 t5 t6 t7 t9 t10 t11 t12 t13 t14 t15.
t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn8
		 (SExpr -> SExpr -> SExpr
SApp (String -> SExpr
SName String
happy_var_1) SExpr
happy_var_2
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_12 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_12 = Int#
-> Int#
-> (HappyStk
      (HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
    -> HappyStk
         (HappyAbsSyn
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr
            SExpr))
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce Int#
4# Int#
4# HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall {t5} {t6} {t7} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
happyReduction_12
happyReduction_12 :: HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
happyReduction_12 (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_4 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_3 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_2 `HappyStk`
	HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_1 `HappyStk`
	HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
happyRest)
	 = case HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { SExpr
happy_var_2 -> 
	case HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
happy_x_4 of { SExpr
happy_var_4 -> 
	SExpr
-> HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
forall t8 t4 t5 t6 t7 t9 t10 t11 t12 t13 t14 t15.
t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn8
		 (SExpr -> SExpr -> SExpr
SApp SExpr
happy_var_2 SExpr
happy_var_4
	) HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
-> HappyStk
     (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk
  (HappyAbsSyn SExpr t5 t6 t7 SExpr t9 t10 t11 t12 t13 t14 t15)
happyRest}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_13 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_13 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
4# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t8} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t9} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t8 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_13
happyReduction_13 :: HappyAbsSyn t4 t5 t6 t7 t8 t8 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_13 HappyAbsSyn t4 t5 t6 t7 t8 t8 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t8 t10 t11 t12 t13 t14 t15 -> t8
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t9
happyOut9 HappyAbsSyn t4 t5 t6 t7 t8 t8 t10 t11 t12 t13 t14 t15
happy_x_1 of { t8
happy_var_1 -> 
	t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t8 t4 t5 t6 t7 t9 t10 t11 t12 t13 t14 t15.
t8 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn8
		 (t8
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_14 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_14 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
5# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t10} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happyReduction_14
happyReduction_14 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happyReduction_14 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t9
happyOut9 HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
forall t9 t4 t5 t6 t7 t8 t10 t11 t12 t13 t14 t15.
t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn9
		 (SExpr -> SExpr -> SExpr
SPlus SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_15 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_15 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
5# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t10} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happyReduction_15
happyReduction_15 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happyReduction_15 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t9
happyOut9 HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 SExpr t10 t11 t12 t13 t14 t15
forall t9 t4 t5 t6 t7 t8 t10 t11 t12 t13 t14 t15.
t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn9
		 (SExpr -> SExpr -> SExpr
SMinus SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_16 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_16 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
5# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t9} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t10} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t9 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_16
happyReduction_16 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t9 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_16 HappyAbsSyn t4 t5 t6 t7 t8 t9 t9 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t9 t11 t12 t13 t14 t15 -> t9
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 t9 t11 t12 t13 t14 t15
happy_x_1 of { t9
happy_var_1 -> 
	t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t9 t4 t5 t6 t7 t8 t10 t11 t12 t13 t14 t15.
t9 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn9
		 (t9
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_17 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_17 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
6# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t12} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happyReduction_17
happyReduction_17 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happyReduction_17 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
happyOut11 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
forall t10 t4 t5 t6 t7 t8 t9 t11 t12 t13 t14 t15.
t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn10
		 (SExpr -> SExpr -> SExpr
STimes SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_18 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_18 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
6# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t12} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happyReduction_18
happyReduction_18 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happyReduction_18 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t10
happyOut10 HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
happyOut11 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 SExpr t11 t12 t13 t14 t15
forall t10 t4 t5 t6 t7 t8 t9 t11 t12 t13 t14 t15.
t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn10
		 (SExpr -> SExpr -> SExpr
SDiv SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_19 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_19 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
6# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t10} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t11} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t10 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_19
happyReduction_19 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t10 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_19 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t10 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t10 t12 t13 t14 t15 -> t10
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
happyOut11 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t10 t12 t13 t14 t15
happy_x_1 of { t10
happy_var_1 -> 
	t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t10 t4 t5 t6 t7 t8 t9 t11 t12 t13 t14 t15.
t10 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn10
		 (t10
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_20 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_20 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
7# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t12} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happyReduction_20
happyReduction_20 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happyReduction_20 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t11
happyOut11 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t12
happyOut12 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 SExpr t12 t13 t14 t15
forall t11 t4 t5 t6 t7 t8 t9 t10 t12 t13 t14 t15.
t11 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn11
		 (SExpr -> SExpr -> SExpr
SOr SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_21 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_21 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
7# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t11} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t12} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t11 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_21
happyReduction_21 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t11 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_21 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t11 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t11 t13 t14 t15 -> t11
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t12
happyOut12 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t11 t13 t14 t15
happy_x_1 of { t11
happy_var_1 -> 
	t11 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t11 t4 t5 t6 t7 t8 t9 t10 t12 t13 t14 t15.
t11 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn11
		 (t11
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_22 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_22 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
8# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t13} {t14} {t15}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happyReduction_22
happyReduction_22 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happyReduction_22 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t12
happyOut12 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t13
happyOut13 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 SExpr t13 t14 t15
forall t12 t4 t5 t6 t7 t8 t9 t10 t11 t13 t14 t15.
t12 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn12
		 (SExpr -> SExpr -> SExpr
SAnd SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_23 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_23 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
8# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t12} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t13} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t12 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_23
happyReduction_23 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t12 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_23 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t12 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t12 t14 t15 -> t12
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t13
happyOut13 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t12 t14 t15
happy_x_1 of { t12
happy_var_1 -> 
	t12 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t12 t4 t5 t6 t7 t8 t9 t10 t11 t13 t14 t15.
t12 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn12
		 (t12
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_24 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_24 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13}
       {t14} {t15} {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12}
       {t14} {t15}.
p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_24
happyReduction_24 :: p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_24 p
happy_x_3
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { (TokenString String
happy_var_2) -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (String -> SExpr
SString String
happy_var_2
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_25 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_25 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_25
happyReduction_25 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_25 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { (TokenLiteral String
happy_var_1) -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (String -> SExpr
SName String
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_26 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_26 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_26
happyReduction_26 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_26 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { (TokenInt Integer
happy_var_1) -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (Integer -> SExpr
SInt Integer
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_27 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_27 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t14} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_27
happyReduction_27 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_27 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { (TokenBool Bool
happy_var_1) -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (Bool -> SExpr
SBool Bool
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_28 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_28 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {p} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t14}
       {t15}.
p
-> HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_28
happyReduction_28 :: p
-> HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
happyReduction_28 p
happy_x_3
	HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { SExpr
happy_var_2 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 SExpr t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (SExpr -> SExpr
SBrack SExpr
happy_var_2
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_29 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_29 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
9# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13}
       {t13} {t15} {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12}
       {t14} {t15}.
p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t13 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_29
happyReduction_29 :: p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t13 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_29 p
happy_x_3
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t13 t15
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t13 t15 -> t13
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t13 t15
happy_x_2 of { t13
happy_var_2 -> 
	t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t13 t4 t5 t6 t7 t8 t9 t10 t11 t12 t14 t15.
t13 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn13
		 (t13
happy_var_2
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_30 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_30 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
10# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_30
happyReduction_30 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_30 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
happyOut15 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t14 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15.
t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn14
		 (SExpr -> SExpr -> SExpr
STypeFunc SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_31 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_31 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
10# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_31
happyReduction_31 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_31 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
happyOut15 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t14 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15.
t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn14
		 (SExpr -> SExpr -> SExpr
STypeUnion SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_32 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_32 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
10# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_32
happyReduction_32 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happyReduction_32 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3
	p
happy_x_2
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
happyOut15 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happy_x_1 of { SExpr
happy_var_1 -> 
	case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
happy_x_3 of { SExpr
happy_var_3 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 SExpr t15
forall t14 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15.
t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn14
		 (SExpr -> SExpr -> SExpr
STypeIntersection SExpr
happy_var_1 SExpr
happy_var_3
	)}}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_33 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_33 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
10# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t14} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t15}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t14
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_33
happyReduction_33 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t14
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_33 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t14
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t14 -> t14
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t15
happyOut15 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t14
happy_x_1 of { t14
happy_var_1 -> 
	t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t14 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15.
t14 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn14
		 (t14
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_34 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_34 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_1  Int#
11# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}
       {t15} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happyReduction_34
happyReduction_34 :: HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happyReduction_34 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> Token
happyOutTok HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_1 of { (TokenLiteral String
happy_var_1) -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
forall t15 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14.
t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn15
		 (String -> SExpr
SType String
happy_var_1
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_35 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_35 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_2  Int#
11# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14} {t15}
       {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13} {t14}.
HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happyReduction_35
happyReduction_35 :: HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
-> p -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
happyReduction_35 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn SExpr t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happy_x_2 of { SExpr
happy_var_2 -> 
	SExpr -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 SExpr
forall t15 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14.
t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn15
		 (SExpr -> SExpr
STypeof SExpr
happy_var_2
	)}

#if __GLASGOW_HASKELL__ >= 710
#endif
happyReduce_36 :: Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyReduce_36 = Int#
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
    -> HappyAbsSyn
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr
         SExpr)
-> Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happySpecReduce_3  Int#
11# HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
-> HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
forall {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12} {t13}
       {t15} {t15} {p} {t4} {t5} {t6} {t7} {t8} {t9} {t10} {t11} {t12}
       {t13} {t14}.
p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_36
happyReduction_36 :: p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15 t15
-> p
-> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyReduction_36 p
happy_x_3
	HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15 t15
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15 t15 -> t15
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t14
happyOut14 HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t15 t15
happy_x_2 of { t15
happy_var_2 -> 
	t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
forall t15 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14.
t15 -> HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15
happyIn15
		 (t15
happy_var_2
	)}

happyNewToken :: Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyNewToken Int#
action Happy_IntList
sts HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
stk [] =
	Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyDoAction Int#
29# Token
forall a. a
notHappyAtAll Int#
action Happy_IntList
sts HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
stk []

happyNewToken Int#
action Happy_IntList
sts HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
stk (Token
tk:[Token]
tks) =
	let cont :: Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
i = Int#
-> Token
-> Int#
-> Happy_IntList
-> HappyStk
     (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyDoAction Int#
i Token
tk Int#
action Happy_IntList
sts HappyStk
  (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
stk [Token]
tks in
	case Token
tk of {
	Token
TokenLet -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
1#;
	Token
TokenType -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
2#;
	Token
TokenTypeof -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
3#;
	Token
TokenIn -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
4#;
	TokenInt Integer
happy_dollar_dollar -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
5#;
	TokenBool Bool
happy_dollar_dollar -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
6#;
	TokenString String
happy_dollar_dollar -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
7#;
	TokenLiteral String
happy_dollar_dollar -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
8#;
	Token
TokenFatArrow -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
9#;
	Token
TokenArrow -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
10#;
	Token
TokenIf -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
11#;
	Token
TokenThen -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
12#;
	Token
TokenElse -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
13#;
	Token
TokenAnd -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
14#;
	Token
TokenOr -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
15#;
	Token
TokenQuote -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
16#;
	Token
TokenEq -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
17#;
	Token
TokenPlus -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
18#;
	Token
TokenMinus -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
19#;
	Token
TokenTimes -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
20#;
	Token
TokenDiv -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
21#;
	Token
TokenOB -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
22#;
	Token
TokenCB -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
23#;
	Token
TokenColon -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
24#;
	Token
TokenPipe -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
25#;
	Token
TokenAmpersand -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
26#;
	Token
TokenLT -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
27#;
	Token
TokenGT -> Int#
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
cont Int#
28#;
	Token
_ -> ([Token], [String])
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
forall a. ([Token], [String]) -> E a
happyError' ((Token
tkToken -> [Token] -> [Token]
forall a. a -> [a] -> [a]
:[Token]
tks), [])
	}

happyError_ :: [String] -> Int# -> Token -> [Token] -> E a
happyError_ [String]
explist Int#
29# Token
tk [Token]
tks = ([Token], [String]) -> E a
forall a. ([Token], [String]) -> E a
happyError' ([Token]
tks, [String]
explist)
happyError_ [String]
explist Int#
_ Token
tk [Token]
tks = ([Token], [String]) -> E a
forall a. ([Token], [String]) -> E a
happyError' ((Token
tkToken -> [Token] -> [Token]
forall a. a -> [a] -> [a]
:[Token]
tks), [String]
explist)

happyThen :: () => E a -> (a -> E b) -> E b
happyThen :: forall a b. E a -> (a -> E b) -> E b
happyThen = (E a -> (a -> E b) -> E b
forall a b. E a -> (a -> E b) -> E b
thenE)
happyReturn :: () => a -> E a
happyReturn :: forall a. a -> E a
happyReturn = (a -> E a
forall a. a -> E a
returnE)
happyThen1 :: E t -> (t -> t -> E b) -> t -> E b
happyThen1 E t
m t -> t -> E b
k t
tks = (forall a b. E a -> (a -> E b) -> E b
thenE) E t
m (\t
a -> t -> t -> E b
k t
a t
tks)
happyReturn1 :: () => a -> b -> E a
happyReturn1 :: forall a b. a -> b -> E a
happyReturn1 = \a
a b
tks -> (forall a. a -> E a
returnE) a
a
happyError' :: () => ([(Token)], [Prelude.String]) -> E a
happyError' :: forall a. ([Token], [String]) -> E a
happyError' = (\([Token]
tokens, [String]
_) -> [Token] -> E a
forall a. [Token] -> E a
parseError [Token]
tokens)
parse :: [Token] -> E SExpr
parse [Token]
tks = E SExpr
happySomeParser where
 happySomeParser :: E SExpr
happySomeParser = E (HappyAbsSyn
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr
     SExpr)
-> (HappyAbsSyn
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
      SExpr
    -> E SExpr)
-> E SExpr
forall a b. E a -> (a -> E b) -> E b
happyThen (Int#
-> [Token]
-> E (HappyAbsSyn
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr
        SExpr)
happyParse Int#
0# [Token]
tks) (\HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
x -> SExpr -> E SExpr
forall a. a -> E a
happyReturn (let {x' :: SExpr
x' = HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
-> SExpr
forall t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15.
HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 -> t4
happyOut4 HappyAbsSyn
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
  SExpr
x} in SExpr
x'))

happySeq :: a -> b -> b
happySeq = a -> b -> b
forall a b. a -> b -> b
happyDontSeq


data E a = Ok a | Failed String
  deriving (Int -> E a -> ShowS
[E a] -> ShowS
E a -> String
(Int -> E a -> ShowS)
-> (E a -> String) -> ([E a] -> ShowS) -> Show (E a)
forall a. Show a => Int -> E a -> ShowS
forall a. Show a => [E a] -> ShowS
forall a. Show a => E a -> String
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: forall a. Show a => Int -> E a -> ShowS
showsPrec :: Int -> E a -> ShowS
$cshow :: forall a. Show a => E a -> String
show :: E a -> String
$cshowList :: forall a. Show a => [E a] -> ShowS
showList :: [E a] -> ShowS
Show)
parseError :: [Token] -> E a
parseError :: forall a. [Token] -> E a
parseError [Token]
tokens = String -> E a
forall a. String -> E a
Failed (String -> E a) -> String -> E a
forall a b. (a -> b) -> a -> b
$ String
"Failed parsing next tokens: " String -> ShowS
forall a. [a] -> [a] -> [a]
++ [Token] -> String
forall a. Show a => a -> String
show [Token]
tokens

thenE :: E a -> (a -> E b) -> E b
E a
m thenE :: forall a b. E a -> (a -> E b) -> E b
`thenE` a -> E b
k =
   case E a
m of
       Ok a
a     -> a -> E b
k a
a
       Failed String
e -> String -> E b
forall a. String -> E a
Failed String
e

returnE :: a -> E a
returnE :: forall a. a -> E a
returnE a
a = a -> E a
forall a. a -> E a
Ok a
a

data SExpr
  = SLet String SExpr SExpr SExpr
  | SLetInfer String SExpr SExpr
  | STypeAlias String SExpr SExpr
  | SDef String SExpr SExpr SExpr
  | SDefInfer String SExpr SExpr
  | SConditional SExpr SExpr SExpr
  | SApp SExpr SExpr
  | SPlus SExpr SExpr
  | SMinus SExpr SExpr
  | STimes SExpr SExpr
  | SDiv SExpr SExpr
  | SAnd SExpr SExpr
  | SOr SExpr SExpr
  | SString String
  | SInt Integer
  | SName String
  | SBool Bool
  | SBrack SExpr
  | SType String
  | STypeof SExpr
  | STypeUnion SExpr SExpr
  | STypeIntersection SExpr SExpr
  | STypeFunc SExpr SExpr
  deriving (Int -> SExpr -> ShowS
[SExpr] -> ShowS
SExpr -> String
(Int -> SExpr -> ShowS)
-> (SExpr -> String) -> ([SExpr] -> ShowS) -> Show SExpr
forall a.
(Int -> a -> ShowS) -> (a -> String) -> ([a] -> ShowS) -> Show a
$cshowsPrec :: Int -> SExpr -> ShowS
showsPrec :: Int -> SExpr -> ShowS
$cshow :: SExpr -> String
show :: SExpr -> String
$cshowList :: [SExpr] -> ShowS
showList :: [SExpr] -> ShowS
Show)
{-# LINE 1 "templates/GenericTemplate.hs" #-}
-- $Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp $













-- 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)) :: Prelude.Bool)
#define GTE(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.>=# m)) :: Prelude.Bool)
#define EQ(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.==# m)) :: Prelude.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



















data Happy_IntList = HappyCons Happy_GHC_Exts.Int# Happy_IntList








































infixr 9 `HappyStk`
data HappyStk a = HappyStk a (HappyStk a)

-----------------------------------------------------------------------------
-- starting the parse

happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll

-----------------------------------------------------------------------------
-- Accepting the parse

-- If the current token is ERROR_TOK, it means we've just accepted a partial
-- parse (a %partial parser).  We must ignore the saved token on the top of
-- the stack in this case.
happyAccept 0# tk st sts (_ `HappyStk` ans `HappyStk` _) =
        happyReturn1 ans
happyAccept j tk st sts (HappyStk ans _) = 
        (happyTcHack j (happyTcHack st)) (happyReturn1 ans)

-----------------------------------------------------------------------------
-- Arrays only: do the next action



happyDoAction i tk st
        = {- nothing -}
          case action of
                0#           -> {- nothing -}
                                     happyFail (happyExpListPerState ((Happy_GHC_Exts.I# (st)) :: Prelude.Int)) 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    = happyAdjustOffset (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 Prelude.False
         action
          | check     = indexShortOffAddr happyTable off_i
          | Prelude.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#




{-# INLINE happyLt #-}
happyLt x y = LT(x,y)


readArrayBit arr bit =
    Bits.testBit (Happy_GHC_Exts.I# (indexShortOffAddr arr ((unbox_int bit) `Happy_GHC_Exts.iShiftRA#` 4#))) (bit `Prelude.mod` 16)
  where unbox_int (Happy_GHC_Exts.I# x) = x






data HappyAddr = HappyA# Happy_GHC_Exts.Addr#


-----------------------------------------------------------------------------
-- HappyState data type (not arrays)













-----------------------------------------------------------------------------
-- 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
--     trace "shifting the error token" $
     happyDoAction i tk new_state (HappyCons (st) (sts)) (stk)

happyShift new_state i tk st sts stk =
     happyNewToken new_state (HappyCons (st) (sts)) ((happyInTok (tk))`HappyStk`stk)

-- happyReduce is specialised for the common cases.

happySpecReduce_0 i fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happySpecReduce_0 nt fn j tk st@((action)) sts stk
     = happyGoto nt j tk st (HappyCons (st) (sts)) (fn `HappyStk` stk)

happySpecReduce_1 i fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happySpecReduce_1 nt fn j tk _ sts@((HappyCons (st@(action)) (_))) (v1`HappyStk`stk')
     = let r = fn v1 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happySpecReduce_2 i fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happySpecReduce_2 nt fn j tk _ (HappyCons (_) (sts@((HappyCons (st@(action)) (_))))) (v1`HappyStk`v2`HappyStk`stk')
     = let r = fn v1 v2 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happySpecReduce_3 i fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happySpecReduce_3 nt fn j tk _ (HappyCons (_) ((HappyCons (_) (sts@((HappyCons (st@(action)) (_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
     = let r = fn v1 v2 v3 in
       happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))

happyReduce k i fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happyReduce k nt fn j tk st sts stk
     = case happyDrop (k Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) sts of
         sts1@((HappyCons (st1@(action)) (_))) ->
                let r = fn stk in  -- it doesn't hurt to always seq here...
                happyDoSeq r (happyGoto nt j tk st1 sts1 r)

happyMonadReduce k nt fn 0# tk st sts stk
     = happyFail [] 0# tk st sts stk
happyMonadReduce k nt fn j tk st sts stk =
      case happyDrop k (HappyCons (st) (sts)) of
        sts1@((HappyCons (st1@(action)) (_))) ->
          let drop_stk = happyDropStk k stk in
          happyThen1 (fn stk tk) (\r -> happyGoto 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 j tk st sts stk =
      case happyDrop k (HappyCons (st) (sts)) of
        sts1@((HappyCons (st1@(action)) (_))) ->
         let drop_stk = happyDropStk k stk

             off = happyAdjustOffset (indexShortOffAddr happyGotoOffsets st1)
             off_i = (off Happy_GHC_Exts.+# nt)
             new_state = indexShortOffAddr happyTable off_i




          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

happyDropStk 0# l = l
happyDropStk n (x `HappyStk` xs) = happyDropStk (n Happy_GHC_Exts.-# (1#::Happy_GHC_Exts.Int#)) xs

-----------------------------------------------------------------------------
-- Moving to a new state after a reduction


happyGoto nt j tk st = 
   {- nothing -}
   happyDoAction j tk new_state
   where off = happyAdjustOffset (indexShortOffAddr happyGotoOffsets st)
         off_i = (off Happy_GHC_Exts.+# nt)
         new_state = indexShortOffAddr happyTable off_i




-----------------------------------------------------------------------------
-- Error recovery (ERROR_TOK is the error token)

-- parse error if we are in recovery and we fail again
happyFail explist 0# tk old_st _ stk@(x `HappyStk` _) =
     let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in
--      trace "failing" $ 
        happyError_ explist i tk

{-  We don't need state discarding for our restricted implementation of
    "error".  In fact, it can cause some bogus parses, so I've disabled it
    for now --SDM

-- discard a state
happyFail  ERROR_TOK tk old_st CONS(HAPPYSTATE(action),sts) 
                                                (saved_tok `HappyStk` _ `HappyStk` stk) =
--      trace ("discarding state, depth " ++ show (length stk))  $
        DO_ACTION(action,ERROR_TOK,tk,sts,(saved_tok`HappyStk`stk))
-}

-- Enter error recovery: generate an error token,
--                       save the old token and carry on.
happyFail explist i tk (action) sts stk =
--      trace "entering error recovery" $
        happyDoAction 0# tk action sts ((Happy_GHC_Exts.unsafeCoerce# (Happy_GHC_Exts.I# (i))) `HappyStk` stk)

-- Internal happy errors:

notHappyAtAll :: a
notHappyAtAll = Prelude.error "Internal Happy error\n"

-----------------------------------------------------------------------------
-- Hack to get the typechecker to accept our action functions


happyTcHack :: Happy_GHC_Exts.Int# -> a -> a
happyTcHack x y = y
{-# INLINE happyTcHack #-}


-----------------------------------------------------------------------------
-- Seq-ing.  If the --strict flag is given, then Happy emits 
--      happySeq = happyDoSeq
-- otherwise it emits
--      happySeq = happyDontSeq

happyDoSeq, happyDontSeq :: a -> b -> b
happyDoSeq   a b = a `Prelude.seq` b
happyDontSeq a b = b

-----------------------------------------------------------------------------
-- Don't inline any functions from the template.  GHC has a nasty habit
-- of deciding to inline happyGoto everywhere, which increases the size of
-- the generated parser quite a bit.


{-# NOINLINE happyDoAction #-}
{-# NOINLINE happyTable #-}
{-# NOINLINE happyCheck #-}
{-# NOINLINE happyActOffsets #-}
{-# NOINLINE happyGotoOffsets #-}
{-# NOINLINE happyDefActions #-}

{-# NOINLINE happyShift #-}
{-# NOINLINE happySpecReduce_0 #-}
{-# NOINLINE happySpecReduce_1 #-}
{-# NOINLINE happySpecReduce_2 #-}
{-# NOINLINE happySpecReduce_3 #-}
{-# NOINLINE happyReduce #-}
{-# NOINLINE happyMonadReduce #-}
{-# NOINLINE happyGoto #-}
{-# NOINLINE happyFail #-}

-- end of Happy Template.