    {-# OPTIONS_GHC -w #-}
    {-# OPTIONS -XMagicHash -XBangPatterns -XTypeSynonymInstances -XFlexibleInstances -cpp #-}
    #if __GLASGOW_HASKELL__ >= 710
    {-# OPTIONS_GHC -XPartialTypeSignatures #-}
    #endif
    #if  __GLASGOW_HASKELL__ > 800
    {-# OPTIONS_GHC -Wno-error=missing-signatures #-}
    #endif
    {-# LANGUAGE PatternGuards #-}

    {-| The parser is generated by Happy (<http://www.haskell.org/happy>).
     -
     - Ideally, ranges should be as precise as possible, to get messages that
     - emphasize precisely the faulting term(s) upon error.
     -
     - However, interactive highlighting is only applied at the end of each
     - mutual block, keywords are only highlighted once (see
     - `TypeChecking.Rules.Decl'). So if the ranges of two declarations
     - interleave, one must ensure that keyword ranges are not included in
     - the intersection. (Otherwise they are uncolored by the interactive
     - highlighting.)
     -
     -}
    module Agda.Syntax.Parser.Parser (
          moduleParser
        , moduleNameParser
        , exprParser
        , exprWhereParser
        , tokensParser
        , holeContentParser
        , splitOnDots  -- only used by the internal test-suite
        ) where

    import Prelude hiding ( null )

    import Control.Applicative ( (<|>) )
    import Control.Monad

    import Data.Bifunctor (first, second)
    import Data.Char
    import qualified Data.List as List
    import Data.Maybe
    import Data.Semigroup ((<>), sconcat)
    import qualified Data.Traversable as T

    import Agda.Syntax.Position hiding (tests)
    import Agda.Syntax.Parser.Monad
    import Agda.Syntax.Parser.Lexer
    import Agda.Syntax.Parser.Tokens
    import Agda.Syntax.Concrete as C
    import Agda.Syntax.Concrete.Attribute
    import Agda.Syntax.Concrete.Pattern
    import Agda.Syntax.Common
    import Agda.Syntax.Notation
    import Agda.Syntax.Literal

    import Agda.TypeChecking.Positivity.Occurrence hiding (tests)

    import Agda.Utils.Either hiding (tests)
    import Agda.Utils.Functor
    import Agda.Utils.Hash
    import Agda.Utils.List ( spanJust, chopWhen )
    import Agda.Utils.List1 ( List1, pattern (:|), (<|) )
    import Agda.Utils.Monad
    import Agda.Utils.Null
    import Agda.Utils.Pretty hiding ((<>))
    import Agda.Utils.Singleton
    import qualified Agda.Utils.Maybe.Strict as Strict
    import qualified Agda.Utils.List1 as List1
    import qualified Agda.Utils.List2 as List2

    import Agda.Utils.Impossible
    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.0

    newtype HappyAbsSyn  = HappyAbsSyn HappyAny
    #if __GLASGOW_HASKELL__ >= 607
    type HappyAny = Happy_GHC_Exts.Any
    #else
    type HappyAny = forall a . a
    #endif
    newtype HappyWrap10 = HappyWrap10 ([Token])
    happyIn10 :: ([Token]) -> (HappyAbsSyn )
    happyIn10 :: [Token] -> HappyAbsSyn
    happyIn10 [Token]
    x = HappyWrap10 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Token] -> HappyWrap10
    HappyWrap10 [Token]
    x)
    {-# INLINE happyIn10 #-}
    happyOut10 :: (HappyAbsSyn ) -> HappyWrap10
    happyOut10 :: HappyAbsSyn -> HappyWrap10
    happyOut10 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap10
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut10 #-}
    newtype HappyWrap11 = HappyWrap11 ([Token])
    happyIn11 :: ([Token]) -> (HappyAbsSyn )
    happyIn11 :: [Token] -> HappyAbsSyn
    happyIn11 [Token]
    x = HappyWrap11 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Token] -> HappyWrap11
    HappyWrap11 [Token]
    x)
    {-# INLINE happyIn11 #-}
    happyOut11 :: (HappyAbsSyn ) -> HappyWrap11
    happyOut11 :: HappyAbsSyn -> HappyWrap11
    happyOut11 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap11
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut11 #-}
    newtype HappyWrap12 = HappyWrap12 (Token)
    happyIn12 :: (Token) -> (HappyAbsSyn )
    happyIn12 :: Token -> HappyAbsSyn
    happyIn12 Token
    x = HappyWrap12 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Token -> HappyWrap12
    HappyWrap12 Token
    x)
    {-# INLINE happyIn12 #-}
    happyOut12 :: (HappyAbsSyn ) -> HappyWrap12
    happyOut12 :: HappyAbsSyn -> HappyWrap12
    happyOut12 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap12
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut12 #-}
    newtype HappyWrap13 = HappyWrap13 (Module)
    happyIn13 :: (Module) -> (HappyAbsSyn )
    happyIn13 :: Module -> HappyAbsSyn
    happyIn13 Module
    x = HappyWrap13 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Module -> HappyWrap13
    HappyWrap13 Module
    x)
    {-# INLINE happyIn13 #-}
    happyOut13 :: (HappyAbsSyn ) -> HappyWrap13
    happyOut13 :: HappyAbsSyn -> HappyWrap13
    happyOut13 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap13
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut13 #-}
    newtype HappyWrap14 = HappyWrap14 (())
    happyIn14 :: (()) -> (HappyAbsSyn )
    happyIn14 :: () -> HappyAbsSyn
    happyIn14 ()
    x = HappyWrap14 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (() -> HappyWrap14
    HappyWrap14 ()
    x)
    {-# INLINE happyIn14 #-}
    happyOut14 :: (HappyAbsSyn ) -> HappyWrap14
    happyOut14 :: HappyAbsSyn -> HappyWrap14
    happyOut14 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap14
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut14 #-}
    newtype HappyWrap15 = HappyWrap15 (())
    happyIn15 :: (()) -> (HappyAbsSyn )
    happyIn15 :: () -> HappyAbsSyn
    happyIn15 ()
    x = HappyWrap15 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (() -> HappyWrap15
    HappyWrap15 ()
    x)
    {-# INLINE happyIn15 #-}
    happyOut15 :: (HappyAbsSyn ) -> HappyWrap15
    happyOut15 :: HappyAbsSyn -> HappyWrap15
    happyOut15 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap15
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut15 #-}
    newtype HappyWrap16 = HappyWrap16 (Interval)
    happyIn16 :: (Interval) -> (HappyAbsSyn )
    happyIn16 :: Interval -> HappyAbsSyn
    happyIn16 Interval
    x = HappyWrap16 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Interval -> HappyWrap16
    HappyWrap16 Interval
    x)
    {-# INLINE happyIn16 #-}
    happyOut16 :: (HappyAbsSyn ) -> HappyWrap16
    happyOut16 :: HappyAbsSyn -> HappyWrap16
    happyOut16 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap16
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut16 #-}
    newtype HappyWrap17 = HappyWrap17 (())
    happyIn17 :: (()) -> (HappyAbsSyn )
    happyIn17 :: () -> HappyAbsSyn
    happyIn17 ()
    x = HappyWrap17 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (() -> HappyWrap17
    HappyWrap17 ()
    x)
    {-# INLINE happyIn17 #-}
    happyOut17 :: (HappyAbsSyn ) -> HappyWrap17
    happyOut17 :: HappyAbsSyn -> HappyWrap17
    happyOut17 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap17
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut17 #-}
    newtype HappyWrap18 = HappyWrap18 (Ranged Double)
    happyIn18 :: (Ranged Double) -> (HappyAbsSyn )
    happyIn18 :: Ranged Double -> HappyAbsSyn
    happyIn18 Ranged Double
    x = HappyWrap18 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Ranged Double -> HappyWrap18
    HappyWrap18 Ranged Double
    x)
    {-# INLINE happyIn18 #-}
    happyOut18 :: (HappyAbsSyn ) -> HappyWrap18
    happyOut18 :: HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap18
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut18 #-}
    newtype HappyWrap19 = HappyWrap19 (Name)
    happyIn19 :: (Name) -> (HappyAbsSyn )
    happyIn19 :: Name -> HappyAbsSyn
    happyIn19 Name
    x = HappyWrap19 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Name -> HappyWrap19
    HappyWrap19 Name
    x)
    {-# INLINE happyIn19 #-}
    happyOut19 :: (HappyAbsSyn ) -> HappyWrap19
    happyOut19 :: HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap19
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut19 #-}
    newtype HappyWrap20 = HappyWrap20 (List1 Name)
    happyIn20 :: (List1 Name) -> (HappyAbsSyn )
    happyIn20 :: List1 Name -> HappyAbsSyn
    happyIn20 List1 Name
    x = HappyWrap20 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Name -> HappyWrap20
    HappyWrap20 List1 Name
    x)
    {-# INLINE happyIn20 #-}
    happyOut20 :: (HappyAbsSyn ) -> HappyWrap20
    happyOut20 :: HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap20
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut20 #-}
    newtype HappyWrap21 = HappyWrap21 (Range)
    happyIn21 :: (Range) -> (HappyAbsSyn )
    happyIn21 :: Range -> HappyAbsSyn
    happyIn21 Range
    x = HappyWrap21 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Range -> HappyWrap21
    HappyWrap21 Range
    x)
    {-# INLINE happyIn21 #-}
    happyOut21 :: (HappyAbsSyn ) -> HappyWrap21
    happyOut21 :: HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap21
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut21 #-}
    newtype HappyWrap22 = HappyWrap22 (Arg Name)
    happyIn22 :: (Arg Name) -> (HappyAbsSyn )
    happyIn22 :: Arg Name -> HappyAbsSyn
    happyIn22 Arg Name
    x = HappyWrap22 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Arg Name -> HappyWrap22
    HappyWrap22 Arg Name
    x)
    {-# INLINE happyIn22 #-}
    happyOut22 :: (HappyAbsSyn ) -> HappyWrap22
    happyOut22 :: HappyAbsSyn -> HappyWrap22
    happyOut22 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap22
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut22 #-}
    newtype HappyWrap23 = HappyWrap23 (List1 (Arg Name))
    happyIn23 :: (List1 (Arg Name)) -> (HappyAbsSyn )
    happyIn23 :: List1 (Arg Name) -> HappyAbsSyn
    happyIn23 List1 (Arg Name)
    x = HappyWrap23 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Arg Name) -> HappyWrap23
    HappyWrap23 List1 (Arg Name)
    x)
    {-# INLINE happyIn23 #-}
    happyOut23 :: (HappyAbsSyn ) -> HappyWrap23
    happyOut23 :: HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap23
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut23 #-}
    newtype HappyWrap24 = HappyWrap24 (List1 (Arg Name))
    happyIn24 :: (List1 (Arg Name)) -> (HappyAbsSyn )
    happyIn24 :: List1 (Arg Name) -> HappyAbsSyn
    happyIn24 List1 (Arg Name)
    x = HappyWrap24 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Arg Name) -> HappyWrap24
    HappyWrap24 List1 (Arg Name)
    x)
    {-# INLINE happyIn24 #-}
    happyOut24 :: (HappyAbsSyn ) -> HappyWrap24
    happyOut24 :: HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap24
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut24 #-}
    newtype HappyWrap25 = HappyWrap25 (([Attr], List1 (Arg Name)))
    happyIn25 :: (([Attr], List1 (Arg Name))) -> (HappyAbsSyn )
    happyIn25 :: ([Attr], List1 (Arg Name)) -> HappyAbsSyn
    happyIn25 ([Attr], List1 (Arg Name))
    x = HappyWrap25 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (([Attr], List1 (Arg Name)) -> HappyWrap25
    HappyWrap25 ([Attr], List1 (Arg Name))
    x)
    {-# INLINE happyIn25 #-}
    happyOut25 :: (HappyAbsSyn ) -> HappyWrap25
    happyOut25 :: HappyAbsSyn -> HappyWrap25
    happyOut25 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap25
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut25 #-}
    newtype HappyWrap26 = HappyWrap26 (Attr)
    happyIn26 :: (Attr) -> (HappyAbsSyn )
    happyIn26 :: Attr -> HappyAbsSyn
    happyIn26 Attr
    x = HappyWrap26 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Attr -> HappyWrap26
    HappyWrap26 Attr
    x)
    {-# INLINE happyIn26 #-}
    happyOut26 :: (HappyAbsSyn ) -> HappyWrap26
    happyOut26 :: HappyAbsSyn -> HappyWrap26
    happyOut26 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap26
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut26 #-}
    newtype HappyWrap27 = HappyWrap27 ([Attr])
    happyIn27 :: ([Attr]) -> (HappyAbsSyn )
    happyIn27 :: [Attr] -> HappyAbsSyn
    happyIn27 [Attr]
    x = HappyWrap27 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Attr] -> HappyWrap27
    HappyWrap27 [Attr]
    x)
    {-# INLINE happyIn27 #-}
    happyOut27 :: (HappyAbsSyn ) -> HappyWrap27
    happyOut27 :: HappyAbsSyn -> HappyWrap27
    happyOut27 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap27
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut27 #-}
    newtype HappyWrap28 = HappyWrap28 (List1 Attr)
    happyIn28 :: (List1 Attr) -> (HappyAbsSyn )
    happyIn28 :: List1 Attr -> HappyAbsSyn
    happyIn28 List1 Attr
    x = HappyWrap28 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Attr -> HappyWrap28
    HappyWrap28 List1 Attr
    x)
    {-# INLINE happyIn28 #-}
    happyOut28 :: (HappyAbsSyn ) -> HappyWrap28
    happyOut28 :: HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap28
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut28 #-}
    newtype HappyWrap29 = HappyWrap29 (QName)
    happyIn29 :: (QName) -> (HappyAbsSyn )
    happyIn29 :: QName -> HappyAbsSyn
    happyIn29 QName
    x = HappyWrap29 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (QName -> HappyWrap29
    HappyWrap29 QName
    x)
    {-# INLINE happyIn29 #-}
    happyOut29 :: (HappyAbsSyn ) -> HappyWrap29
    happyOut29 :: HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap29
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut29 #-}
    newtype HappyWrap30 = HappyWrap30 (QName)
    happyIn30 :: (QName) -> (HappyAbsSyn )
    happyIn30 :: QName -> HappyAbsSyn
    happyIn30 QName
    x = HappyWrap30 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (QName -> HappyWrap30
    HappyWrap30 QName
    x)
    {-# INLINE happyIn30 #-}
    happyOut30 :: (HappyAbsSyn ) -> HappyWrap30
    happyOut30 :: HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap30
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut30 #-}
    newtype HappyWrap31 = HappyWrap31 (Name)
    happyIn31 :: (Name) -> (HappyAbsSyn )
    happyIn31 :: Name -> HappyAbsSyn
    happyIn31 Name
    x = HappyWrap31 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Name -> HappyWrap31
    HappyWrap31 Name
    x)
    {-# INLINE happyIn31 #-}
    happyOut31 :: (HappyAbsSyn ) -> HappyWrap31
    happyOut31 :: HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap31
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut31 #-}
    newtype HappyWrap32 = HappyWrap32 (List1 Name)
    happyIn32 :: (List1 Name) -> (HappyAbsSyn )
    happyIn32 :: List1 Name -> HappyAbsSyn
    happyIn32 List1 Name
    x = HappyWrap32 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Name -> HappyWrap32
    HappyWrap32 List1 Name
    x)
    {-# INLINE happyIn32 #-}
    happyOut32 :: (HappyAbsSyn ) -> HappyWrap32
    happyOut32 :: HappyAbsSyn -> HappyWrap32
    happyOut32 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap32
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut32 #-}
    newtype HappyWrap33 = HappyWrap33 (List1 (NamedArg Binder))
    happyIn33 :: (List1 (NamedArg Binder)) -> (HappyAbsSyn )
    happyIn33 :: List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn33 List1 (NamedArg Binder)
    x = HappyWrap33 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (NamedArg Binder) -> HappyWrap33
    HappyWrap33 List1 (NamedArg Binder)
    x)
    {-# INLINE happyIn33 #-}
    happyOut33 :: (HappyAbsSyn ) -> HappyWrap33
    happyOut33 :: HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap33
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut33 #-}
    newtype HappyWrap34 = HappyWrap34 (Either (List1 (NamedArg Binder)) (List1 Expr))
    happyIn34 :: (Either (List1 (NamedArg Binder)) (List1 Expr)) -> (HappyAbsSyn )
    happyIn34 :: Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    x = HappyWrap34 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyWrap34
    HappyWrap34 Either (List1 (NamedArg Binder)) (List1 Expr)
    x)
    {-# INLINE happyIn34 #-}
    happyOut34 :: (HappyAbsSyn ) -> HappyWrap34
    happyOut34 :: HappyAbsSyn -> HappyWrap34
    happyOut34 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap34
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut34 #-}
    newtype HappyWrap35 = HappyWrap35 (List1 (NamedArg Binder))
    happyIn35 :: (List1 (NamedArg Binder)) -> (HappyAbsSyn )
    happyIn35 :: List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn35 List1 (NamedArg Binder)
    x = HappyWrap35 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (NamedArg Binder) -> HappyWrap35
    HappyWrap35 List1 (NamedArg Binder)
    x)
    {-# INLINE happyIn35 #-}
    happyOut35 :: (HappyAbsSyn ) -> HappyWrap35
    happyOut35 :: HappyAbsSyn -> HappyWrap35
    happyOut35 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap35
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut35 #-}
    newtype HappyWrap36 = HappyWrap36 ([String])
    happyIn36 :: ([String]) -> (HappyAbsSyn )
    happyIn36 :: [[Char]] -> HappyAbsSyn
    happyIn36 [[Char]]
    x = HappyWrap36 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([[Char]] -> HappyWrap36
    HappyWrap36 [[Char]]
    x)
    {-# INLINE happyIn36 #-}
    happyOut36 :: (HappyAbsSyn ) -> HappyWrap36
    happyOut36 :: HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap36
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut36 #-}
    newtype HappyWrap37 = HappyWrap37 ([(Interval, String)])
    happyIn37 :: ([(Interval, String)]) -> (HappyAbsSyn )
    happyIn37 :: [(Interval, [Char])] -> HappyAbsSyn
    happyIn37 [(Interval, [Char])]
    x = HappyWrap37 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([(Interval, [Char])] -> HappyWrap37
    HappyWrap37 [(Interval, [Char])]
    x)
    {-# INLINE happyIn37 #-}
    happyOut37 :: (HappyAbsSyn ) -> HappyWrap37
    happyOut37 :: HappyAbsSyn -> HappyWrap37
    happyOut37 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap37
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut37 #-}
    newtype HappyWrap38 = HappyWrap38 ([(Interval, String)])
    happyIn38 :: ([(Interval, String)]) -> (HappyAbsSyn )
    happyIn38 :: [(Interval, [Char])] -> HappyAbsSyn
    happyIn38 [(Interval, [Char])]
    x = HappyWrap38 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([(Interval, [Char])] -> HappyWrap38
    HappyWrap38 [(Interval, [Char])]
    x)
    {-# INLINE happyIn38 #-}
    happyOut38 :: (HappyAbsSyn ) -> HappyWrap38
    happyOut38 :: HappyAbsSyn -> HappyWrap38
    happyOut38 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap38
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut38 #-}
    newtype HappyWrap39 = HappyWrap39 (Name)
    happyIn39 :: (Name) -> (HappyAbsSyn )
    happyIn39 :: Name -> HappyAbsSyn
    happyIn39 Name
    x = HappyWrap39 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Name -> HappyWrap39
    HappyWrap39 Name
    x)
    {-# INLINE happyIn39 #-}
    happyOut39 :: (HappyAbsSyn ) -> HappyWrap39
    happyOut39 :: HappyAbsSyn -> HappyWrap39
    happyOut39 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap39
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut39 #-}
    newtype HappyWrap40 = HappyWrap40 (QName)
    happyIn40 :: (QName) -> (HappyAbsSyn )
    happyIn40 :: QName -> HappyAbsSyn
    happyIn40 QName
    x = HappyWrap40 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (QName -> HappyWrap40
    HappyWrap40 QName
    x)
    {-# INLINE happyIn40 #-}
    happyOut40 :: (HappyAbsSyn ) -> HappyWrap40
    happyOut40 :: HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap40
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut40 #-}
    newtype HappyWrap41 = HappyWrap41 ([QName])
    happyIn41 :: ([QName]) -> (HappyAbsSyn )
    happyIn41 :: [QName] -> HappyAbsSyn
    happyIn41 [QName]
    x = HappyWrap41 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([QName] -> HappyWrap41
    HappyWrap41 [QName]
    x)
    {-# INLINE happyIn41 #-}
    happyOut41 :: (HappyAbsSyn ) -> HappyWrap41
    happyOut41 :: HappyAbsSyn -> HappyWrap41
    happyOut41 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap41
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut41 #-}
    newtype HappyWrap42 = HappyWrap42 (Expr)
    happyIn42 :: (Expr) -> (HappyAbsSyn )
    happyIn42 :: Expr -> HappyAbsSyn
    happyIn42 Expr
    x = HappyWrap42 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap42
    HappyWrap42 Expr
    x)
    {-# INLINE happyIn42 #-}
    happyOut42 :: (HappyAbsSyn ) -> HappyWrap42
    happyOut42 :: HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap42
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut42 #-}
    newtype HappyWrap43 = HappyWrap43 (Expr)
    happyIn43 :: (Expr) -> (HappyAbsSyn )
    happyIn43 :: Expr -> HappyAbsSyn
    happyIn43 Expr
    x = HappyWrap43 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap43
    HappyWrap43 Expr
    x)
    {-# INLINE happyIn43 #-}
    happyOut43 :: (HappyAbsSyn ) -> HappyWrap43
    happyOut43 :: HappyAbsSyn -> HappyWrap43
    happyOut43 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap43
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut43 #-}
    newtype HappyWrap44 = HappyWrap44 (List1 (Named Name Expr))
    happyIn44 :: (List1 (Named Name Expr)) -> (HappyAbsSyn )
    happyIn44 :: List1 (Named Name Expr) -> HappyAbsSyn
    happyIn44 List1 (Named Name Expr)
    x = HappyWrap44 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Named Name Expr) -> HappyWrap44
    HappyWrap44 List1 (Named Name Expr)
    x)
    {-# INLINE happyIn44 #-}
    happyOut44 :: (HappyAbsSyn ) -> HappyWrap44
    happyOut44 :: HappyAbsSyn -> HappyWrap44
    happyOut44 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap44
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut44 #-}
    newtype HappyWrap45 = HappyWrap45 (List1 Expr)
    happyIn45 :: (List1 Expr) -> (HappyAbsSyn )
    happyIn45 :: List1 Expr -> HappyAbsSyn
    happyIn45 List1 Expr
    x = HappyWrap45 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Expr -> HappyWrap45
    HappyWrap45 List1 Expr
    x)
    {-# INLINE happyIn45 #-}
    happyOut45 :: (HappyAbsSyn ) -> HappyWrap45
    happyOut45 :: HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap45
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut45 #-}
    newtype HappyWrap46 = HappyWrap46 (List1 Expr)
    happyIn46 :: (List1 Expr) -> (HappyAbsSyn )
    happyIn46 :: List1 Expr -> HappyAbsSyn
    happyIn46 List1 Expr
    x = HappyWrap46 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Expr -> HappyWrap46
    HappyWrap46 List1 Expr
    x)
    {-# INLINE happyIn46 #-}
    happyOut46 :: (HappyAbsSyn ) -> HappyWrap46
    happyOut46 :: HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap46
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut46 #-}
    newtype HappyWrap47 = HappyWrap47 (Expr)
    happyIn47 :: (Expr) -> (HappyAbsSyn )
    happyIn47 :: Expr -> HappyAbsSyn
    happyIn47 Expr
    x = HappyWrap47 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap47
    HappyWrap47 Expr
    x)
    {-# INLINE happyIn47 #-}
    happyOut47 :: (HappyAbsSyn ) -> HappyWrap47
    happyOut47 :: HappyAbsSyn -> HappyWrap47
    happyOut47 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap47
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut47 #-}
    newtype HappyWrap48 = HappyWrap48 (Maybe Expr)
    happyIn48 :: (Maybe Expr) -> (HappyAbsSyn )
    happyIn48 :: Maybe Expr -> HappyAbsSyn
    happyIn48 Maybe Expr
    x = HappyWrap48 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Maybe Expr -> HappyWrap48
    HappyWrap48 Maybe Expr
    x)
    {-# INLINE happyIn48 #-}
    happyOut48 :: (HappyAbsSyn ) -> HappyWrap48
    happyOut48 :: HappyAbsSyn -> HappyWrap48
    happyOut48 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap48
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut48 #-}
    newtype HappyWrap49 = HappyWrap49 (Expr)
    happyIn49 :: (Expr) -> (HappyAbsSyn )
    happyIn49 :: Expr -> HappyAbsSyn
    happyIn49 Expr
    x = HappyWrap49 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap49
    HappyWrap49 Expr
    x)
    {-# INLINE happyIn49 #-}
    happyOut49 :: (HappyAbsSyn ) -> HappyWrap49
    happyOut49 :: HappyAbsSyn -> HappyWrap49
    happyOut49 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap49
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut49 #-}
    newtype HappyWrap50 = HappyWrap50 (List1 Expr)
    happyIn50 :: (List1 Expr) -> (HappyAbsSyn )
    happyIn50 :: List1 Expr -> HappyAbsSyn
    happyIn50 List1 Expr
    x = HappyWrap50 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Expr -> HappyWrap50
    HappyWrap50 List1 Expr
    x)
    {-# INLINE happyIn50 #-}
    happyOut50 :: (HappyAbsSyn ) -> HappyWrap50
    happyOut50 :: HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap50
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut50 #-}
    newtype HappyWrap51 = HappyWrap51 ([Expr])
    happyIn51 :: ([Expr]) -> (HappyAbsSyn )
    happyIn51 :: [Expr] -> HappyAbsSyn
    happyIn51 [Expr]
    x = HappyWrap51 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Expr] -> HappyWrap51
    HappyWrap51 [Expr]
    x)
    {-# INLINE happyIn51 #-}
    happyOut51 :: (HappyAbsSyn ) -> HappyWrap51
    happyOut51 :: HappyAbsSyn -> HappyWrap51
    happyOut51 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap51
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut51 #-}
    newtype HappyWrap52 = HappyWrap52 (Expr)
    happyIn52 :: (Expr) -> (HappyAbsSyn )
    happyIn52 :: Expr -> HappyAbsSyn
    happyIn52 Expr
    x = HappyWrap52 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap52
    HappyWrap52 Expr
    x)
    {-# INLINE happyIn52 #-}
    happyOut52 :: (HappyAbsSyn ) -> HappyWrap52
    happyOut52 :: HappyAbsSyn -> HappyWrap52
    happyOut52 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap52
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut52 #-}
    newtype HappyWrap53 = HappyWrap53 (Expr)
    happyIn53 :: (Expr) -> (HappyAbsSyn )
    happyIn53 :: Expr -> HappyAbsSyn
    happyIn53 Expr
    x = HappyWrap53 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap53
    HappyWrap53 Expr
    x)
    {-# INLINE happyIn53 #-}
    happyOut53 :: (HappyAbsSyn ) -> HappyWrap53
    happyOut53 :: HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap53
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut53 #-}
    newtype HappyWrap54 = HappyWrap54 (Expr)
    happyIn54 :: (Expr) -> (HappyAbsSyn )
    happyIn54 :: Expr -> HappyAbsSyn
    happyIn54 Expr
    x = HappyWrap54 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap54
    HappyWrap54 Expr
    x)
    {-# INLINE happyIn54 #-}
    happyOut54 :: (HappyAbsSyn ) -> HappyWrap54
    happyOut54 :: HappyAbsSyn -> HappyWrap54
    happyOut54 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap54
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut54 #-}
    newtype HappyWrap55 = HappyWrap55 (Expr)
    happyIn55 :: (Expr) -> (HappyAbsSyn )
    happyIn55 :: Expr -> HappyAbsSyn
    happyIn55 Expr
    x = HappyWrap55 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap55
    HappyWrap55 Expr
    x)
    {-# INLINE happyIn55 #-}
    happyOut55 :: (HappyAbsSyn ) -> HappyWrap55
    happyOut55 :: HappyAbsSyn -> HappyWrap55
    happyOut55 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap55
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut55 #-}
    newtype HappyWrap56 = HappyWrap56 (Expr)
    happyIn56 :: (Expr) -> (HappyAbsSyn )
    happyIn56 :: Expr -> HappyAbsSyn
    happyIn56 Expr
    x = HappyWrap56 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Expr -> HappyWrap56
    HappyWrap56 Expr
    x)
    {-# INLINE happyIn56 #-}
    happyOut56 :: (HappyAbsSyn ) -> HappyWrap56
    happyOut56 :: HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap56
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut56 #-}
    newtype HappyWrap57 = HappyWrap57 (RecordAssignments)
    happyIn57 :: (RecordAssignments) -> (HappyAbsSyn )
    happyIn57 :: RecordAssignments -> HappyAbsSyn
    happyIn57 RecordAssignments
    x = HappyWrap57 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (RecordAssignments -> HappyWrap57
    HappyWrap57 RecordAssignments
    x)
    {-# INLINE happyIn57 #-}
    happyOut57 :: (HappyAbsSyn ) -> HappyWrap57
    happyOut57 :: HappyAbsSyn -> HappyWrap57
    happyOut57 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap57
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut57 #-}
    newtype HappyWrap58 = HappyWrap58 (List1 RecordAssignment)
    happyIn58 :: (List1 RecordAssignment) -> (HappyAbsSyn )
    happyIn58 :: List1 RecordAssignment -> HappyAbsSyn
    happyIn58 List1 RecordAssignment
    x = HappyWrap58 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 RecordAssignment -> HappyWrap58
    HappyWrap58 List1 RecordAssignment
    x)
    {-# INLINE happyIn58 #-}
    happyOut58 :: (HappyAbsSyn ) -> HappyWrap58
    happyOut58 :: HappyAbsSyn -> HappyWrap58
    happyOut58 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap58
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut58 #-}
    newtype HappyWrap59 = HappyWrap59 (RecordAssignment)
    happyIn59 :: (RecordAssignment) -> (HappyAbsSyn )
    happyIn59 :: RecordAssignment -> HappyAbsSyn
    happyIn59 RecordAssignment
    x = HappyWrap59 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (RecordAssignment -> HappyWrap59
    HappyWrap59 RecordAssignment
    x)
    {-# INLINE happyIn59 #-}
    happyOut59 :: (HappyAbsSyn ) -> HappyWrap59
    happyOut59 :: HappyAbsSyn -> HappyWrap59
    happyOut59 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap59
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut59 #-}
    newtype HappyWrap60 = HappyWrap60 (ModuleAssignment)
    happyIn60 :: (ModuleAssignment) -> (HappyAbsSyn )
    happyIn60 :: ModuleAssignment -> HappyAbsSyn
    happyIn60 ModuleAssignment
    x = HappyWrap60 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ModuleAssignment -> HappyWrap60
    HappyWrap60 ModuleAssignment
    x)
    {-# INLINE happyIn60 #-}
    happyOut60 :: (HappyAbsSyn ) -> HappyWrap60
    happyOut60 :: HappyAbsSyn -> HappyWrap60
    happyOut60 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap60
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut60 #-}
    newtype HappyWrap61 = HappyWrap61 ([FieldAssignment])
    happyIn61 :: ([FieldAssignment]) -> (HappyAbsSyn )
    happyIn61 :: [FieldAssignment] -> HappyAbsSyn
    happyIn61 [FieldAssignment]
    x = HappyWrap61 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([FieldAssignment] -> HappyWrap61
    HappyWrap61 [FieldAssignment]
    x)
    {-# INLINE happyIn61 #-}
    happyOut61 :: (HappyAbsSyn ) -> HappyWrap61
    happyOut61 :: HappyAbsSyn -> HappyWrap61
    happyOut61 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap61
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut61 #-}
    newtype HappyWrap62 = HappyWrap62 (List1 FieldAssignment)
    happyIn62 :: (List1 FieldAssignment) -> (HappyAbsSyn )
    happyIn62 :: List1 FieldAssignment -> HappyAbsSyn
    happyIn62 List1 FieldAssignment
    x = HappyWrap62 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 FieldAssignment -> HappyWrap62
    HappyWrap62 List1 FieldAssignment
    x)
    {-# INLINE happyIn62 #-}
    happyOut62 :: (HappyAbsSyn ) -> HappyWrap62
    happyOut62 :: HappyAbsSyn -> HappyWrap62
    happyOut62 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap62
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut62 #-}
    newtype HappyWrap63 = HappyWrap63 (FieldAssignment)
    happyIn63 :: (FieldAssignment) -> (HappyAbsSyn )
    happyIn63 :: FieldAssignment -> HappyAbsSyn
    happyIn63 FieldAssignment
    x = HappyWrap63 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (FieldAssignment -> HappyWrap63
    HappyWrap63 FieldAssignment
    x)
    {-# INLINE happyIn63 #-}
    happyOut63 :: (HappyAbsSyn ) -> HappyWrap63
    happyOut63 :: HappyAbsSyn -> HappyWrap63
    happyOut63 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap63
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut63 #-}
    newtype HappyWrap64 = HappyWrap64 (Telescope1)
    happyIn64 :: (Telescope1) -> (HappyAbsSyn )
    happyIn64 :: Telescope1 -> HappyAbsSyn
    happyIn64 Telescope1
    x = HappyWrap64 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Telescope1 -> HappyWrap64
    HappyWrap64 Telescope1
    x)
    {-# INLINE happyIn64 #-}
    happyOut64 :: (HappyAbsSyn ) -> HappyWrap64
    happyOut64 :: HappyAbsSyn -> HappyWrap64
    happyOut64 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap64
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut64 #-}
    newtype HappyWrap65 = HappyWrap65 (Telescope1)
    happyIn65 :: (Telescope1) -> (HappyAbsSyn )
    happyIn65 :: Telescope1 -> HappyAbsSyn
    happyIn65 Telescope1
    x = HappyWrap65 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Telescope1 -> HappyWrap65
    HappyWrap65 Telescope1
    x)
    {-# INLINE happyIn65 #-}
    happyOut65 :: (HappyAbsSyn ) -> HappyWrap65
    happyOut65 :: HappyAbsSyn -> HappyWrap65
    happyOut65 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap65
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut65 #-}
    newtype HappyWrap66 = HappyWrap66 (List1 TypedBinding)
    happyIn66 :: (List1 TypedBinding) -> (HappyAbsSyn )
    happyIn66 :: Telescope1 -> HappyAbsSyn
    happyIn66 Telescope1
    x = HappyWrap66 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Telescope1 -> HappyWrap66
    HappyWrap66 Telescope1
    x)
    {-# INLINE happyIn66 #-}
    happyOut66 :: (HappyAbsSyn ) -> HappyWrap66
    happyOut66 :: HappyAbsSyn -> HappyWrap66
    happyOut66 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap66
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut66 #-}
    newtype HappyWrap67 = HappyWrap67 (TypedBinding)
    happyIn67 :: (TypedBinding) -> (HappyAbsSyn )
    happyIn67 :: TypedBinding -> HappyAbsSyn
    happyIn67 TypedBinding
    x = HappyWrap67 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (TypedBinding -> HappyWrap67
    HappyWrap67 TypedBinding
    x)
    {-# INLINE happyIn67 #-}
    happyOut67 :: (HappyAbsSyn ) -> HappyWrap67
    happyOut67 :: HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap67
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut67 #-}
    newtype HappyWrap68 = HappyWrap68 (TypedBinding)
    happyIn68 :: (TypedBinding) -> (HappyAbsSyn )
    happyIn68 :: TypedBinding -> HappyAbsSyn
    happyIn68 TypedBinding
    x = HappyWrap68 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (TypedBinding -> HappyWrap68
    HappyWrap68 TypedBinding
    x)
    {-# INLINE happyIn68 #-}
    happyOut68 :: (HappyAbsSyn ) -> HappyWrap68
    happyOut68 :: HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap68
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut68 #-}
    newtype HappyWrap69 = HappyWrap69 (TypedBinding)
    happyIn69 :: (TypedBinding) -> (HappyAbsSyn )
    happyIn69 :: TypedBinding -> HappyAbsSyn
    happyIn69 TypedBinding
    x = HappyWrap69 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (TypedBinding -> HappyWrap69
    HappyWrap69 TypedBinding
    x)
    {-# INLINE happyIn69 #-}
    happyOut69 :: (HappyAbsSyn ) -> HappyWrap69
    happyOut69 :: HappyAbsSyn -> HappyWrap69
    happyOut69 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap69
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut69 #-}
    newtype HappyWrap70 = HappyWrap70 (TypedBinding)
    happyIn70 :: (TypedBinding) -> (HappyAbsSyn )
    happyIn70 :: TypedBinding -> HappyAbsSyn
    happyIn70 TypedBinding
    x = HappyWrap70 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (TypedBinding -> HappyWrap70
    HappyWrap70 TypedBinding
    x)
    {-# INLINE happyIn70 #-}
    happyOut70 :: (HappyAbsSyn ) -> HappyWrap70
    happyOut70 :: HappyAbsSyn -> HappyWrap70
    happyOut70 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap70
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut70 #-}
    newtype HappyWrap71 = HappyWrap71 (TypedBinding)
    happyIn71 :: (TypedBinding) -> (HappyAbsSyn )
    happyIn71 :: TypedBinding -> HappyAbsSyn
    happyIn71 TypedBinding
    x = HappyWrap71 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (TypedBinding -> HappyWrap71
    HappyWrap71 TypedBinding
    x)
    {-# INLINE happyIn71 #-}
    happyOut71 :: (HappyAbsSyn ) -> HappyWrap71
    happyOut71 :: HappyAbsSyn -> HappyWrap71
    happyOut71 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap71
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut71 #-}
    newtype HappyWrap72 = HappyWrap72 (List1 LamBinding)
    happyIn72 :: (List1 LamBinding) -> (HappyAbsSyn )
    happyIn72 :: List1 LamBinding -> HappyAbsSyn
    happyIn72 List1 LamBinding
    x = HappyWrap72 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 LamBinding -> HappyWrap72
    HappyWrap72 List1 LamBinding
    x)
    {-# INLINE happyIn72 #-}
    happyOut72 :: (HappyAbsSyn ) -> HappyWrap72
    happyOut72 :: HappyAbsSyn -> HappyWrap72
    happyOut72 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap72
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut72 #-}
    newtype HappyWrap73 = HappyWrap73 (Either ([LamBinding], Hiding) (List1 Expr))
    happyIn73 :: (Either ([LamBinding], Hiding) (List1 Expr)) -> (HappyAbsSyn )
    happyIn73 :: Either ([LamBinding], Hiding) (List1 Expr) -> HappyAbsSyn
    happyIn73 Either ([LamBinding], Hiding) (List1 Expr)
    x = HappyWrap73 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Either ([LamBinding], Hiding) (List1 Expr) -> HappyWrap73
    HappyWrap73 Either ([LamBinding], Hiding) (List1 Expr)
    x)
    {-# INLINE happyIn73 #-}
    happyOut73 :: (HappyAbsSyn ) -> HappyWrap73
    happyOut73 :: HappyAbsSyn -> HappyWrap73
    happyOut73 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap73
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut73 #-}
    newtype HappyWrap74 = HappyWrap74 (LamBinds)
    happyIn74 :: (LamBinds) -> (HappyAbsSyn )
    happyIn74 :: LamBinds -> HappyAbsSyn
    happyIn74 LamBinds
    x = HappyWrap74 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (LamBinds -> HappyWrap74
    HappyWrap74 LamBinds
    x)
    {-# INLINE happyIn74 #-}
    happyOut74 :: (HappyAbsSyn ) -> HappyWrap74
    happyOut74 :: HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap74
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut74 #-}
    newtype HappyWrap75 = HappyWrap75 (Either LamBinds (List1 Expr))
    happyIn75 :: (Either LamBinds (List1 Expr)) -> (HappyAbsSyn )
    happyIn75 :: Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75 Either LamBinds (List1 Expr)
    x = HappyWrap75 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Either LamBinds (List1 Expr) -> HappyWrap75
    HappyWrap75 Either LamBinds (List1 Expr)
    x)
    {-# INLINE happyIn75 #-}
    happyOut75 :: (HappyAbsSyn ) -> HappyWrap75
    happyOut75 :: HappyAbsSyn -> HappyWrap75
    happyOut75 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap75
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut75 #-}
    newtype HappyWrap76 = HappyWrap76 (LamClause)
    happyIn76 :: (LamClause) -> (HappyAbsSyn )
    happyIn76 :: LamClause -> HappyAbsSyn
    happyIn76 LamClause
    x = HappyWrap76 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (LamClause -> HappyWrap76
    HappyWrap76 LamClause
    x)
    {-# INLINE happyIn76 #-}
    happyOut76 :: (HappyAbsSyn ) -> HappyWrap76
    happyOut76 :: HappyAbsSyn -> HappyWrap76
    happyOut76 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap76
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut76 #-}
    newtype HappyWrap77 = HappyWrap77 (LamClause)
    happyIn77 :: (LamClause) -> (HappyAbsSyn )
    happyIn77 :: LamClause -> HappyAbsSyn
    happyIn77 LamClause
    x = HappyWrap77 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (LamClause -> HappyWrap77
    HappyWrap77 LamClause
    x)
    {-# INLINE happyIn77 #-}
    happyOut77 :: (HappyAbsSyn ) -> HappyWrap77
    happyOut77 :: HappyAbsSyn -> HappyWrap77
    happyOut77 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap77
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut77 #-}
    newtype HappyWrap78 = HappyWrap78 (LamClause)
    happyIn78 :: (LamClause) -> (HappyAbsSyn )
    happyIn78 :: LamClause -> HappyAbsSyn
    happyIn78 LamClause
    x = HappyWrap78 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (LamClause -> HappyWrap78
    HappyWrap78 LamClause
    x)
    {-# INLINE happyIn78 #-}
    happyOut78 :: (HappyAbsSyn ) -> HappyWrap78
    happyOut78 :: HappyAbsSyn -> HappyWrap78
    happyOut78 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap78
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut78 #-}
    newtype HappyWrap79 = HappyWrap79 (List1 LamClause)
    happyIn79 :: (List1 LamClause) -> (HappyAbsSyn )
    happyIn79 :: NonEmpty LamClause -> HappyAbsSyn
    happyIn79 NonEmpty LamClause
    x = HappyWrap79 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (NonEmpty LamClause -> HappyWrap79
    HappyWrap79 NonEmpty LamClause
    x)
    {-# INLINE happyIn79 #-}
    happyOut79 :: (HappyAbsSyn ) -> HappyWrap79
    happyOut79 :: HappyAbsSyn -> HappyWrap79
    happyOut79 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap79
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut79 #-}
    newtype HappyWrap80 = HappyWrap80 (List1 LamClause)
    happyIn80 :: (List1 LamClause) -> (HappyAbsSyn )
    happyIn80 :: NonEmpty LamClause -> HappyAbsSyn
    happyIn80 NonEmpty LamClause
    x = HappyWrap80 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (NonEmpty LamClause -> HappyWrap80
    HappyWrap80 NonEmpty LamClause
    x)
    {-# INLINE happyIn80 #-}
    happyOut80 :: (HappyAbsSyn ) -> HappyWrap80
    happyOut80 :: HappyAbsSyn -> HappyWrap80
    happyOut80 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap80
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut80 #-}
    newtype HappyWrap81 = HappyWrap81 (List1 LamBinding)
    happyIn81 :: (List1 LamBinding) -> (HappyAbsSyn )
    happyIn81 :: List1 LamBinding -> HappyAbsSyn
    happyIn81 List1 LamBinding
    x = HappyWrap81 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 LamBinding -> HappyWrap81
    HappyWrap81 List1 LamBinding
    x)
    {-# INLINE happyIn81 #-}
    happyOut81 :: (HappyAbsSyn ) -> HappyWrap81
    happyOut81 :: HappyAbsSyn -> HappyWrap81
    happyOut81 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap81
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut81 #-}
    newtype HappyWrap82 = HappyWrap82 (List1 LamBinding)
    happyIn82 :: (List1 LamBinding) -> (HappyAbsSyn )
    happyIn82 :: List1 LamBinding -> HappyAbsSyn
    happyIn82 List1 LamBinding
    x = HappyWrap82 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 LamBinding -> HappyWrap82
    HappyWrap82 List1 LamBinding
    x)
    {-# INLINE happyIn82 #-}
    happyOut82 :: (HappyAbsSyn ) -> HappyWrap82
    happyOut82 :: HappyAbsSyn -> HappyWrap82
    happyOut82 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap82
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut82 #-}
    newtype HappyWrap83 = HappyWrap83 ([LamBinding])
    happyIn83 :: ([LamBinding]) -> (HappyAbsSyn )
    happyIn83 :: [LamBinding] -> HappyAbsSyn
    happyIn83 [LamBinding]
    x = HappyWrap83 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([LamBinding] -> HappyWrap83
    HappyWrap83 [LamBinding]
    x)
    {-# INLINE happyIn83 #-}
    happyOut83 :: (HappyAbsSyn ) -> HappyWrap83
    happyOut83 :: HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap83
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut83 #-}
    newtype HappyWrap84 = HappyWrap84 ([NamedArg Binder])
    happyIn84 :: ([NamedArg Binder]) -> (HappyAbsSyn )
    happyIn84 :: [NamedArg Binder] -> HappyAbsSyn
    happyIn84 [NamedArg Binder]
    x = HappyWrap84 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([NamedArg Binder] -> HappyWrap84
    HappyWrap84 [NamedArg Binder]
    x)
    {-# INLINE happyIn84 #-}
    happyOut84 :: (HappyAbsSyn ) -> HappyWrap84
    happyOut84 :: HappyAbsSyn -> HappyWrap84
    happyOut84 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap84
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut84 #-}
    newtype HappyWrap85 = HappyWrap85 (List1 (NamedArg Binder))
    happyIn85 :: (List1 (NamedArg Binder)) -> (HappyAbsSyn )
    happyIn85 :: List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn85 List1 (NamedArg Binder)
    x = HappyWrap85 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (NamedArg Binder) -> HappyWrap85
    HappyWrap85 List1 (NamedArg Binder)
    x)
    {-# INLINE happyIn85 #-}
    happyOut85 :: (HappyAbsSyn ) -> HappyWrap85
    happyOut85 :: HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap85
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut85 #-}
    newtype HappyWrap86 = HappyWrap86 (Maybe Pattern)
    happyIn86 :: (Maybe Pattern) -> (HappyAbsSyn )
    happyIn86 :: Maybe Pattern -> HappyAbsSyn
    happyIn86 Maybe Pattern
    x = HappyWrap86 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Maybe Pattern -> HappyWrap86
    HappyWrap86 Maybe Pattern
    x)
    {-# INLINE happyIn86 #-}
    happyOut86 :: (HappyAbsSyn ) -> HappyWrap86
    happyOut86 :: HappyAbsSyn -> HappyWrap86
    happyOut86 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap86
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut86 #-}
    newtype HappyWrap87 = HappyWrap87 (Either (List1 (NamedArg Binder)) (List1 Expr))
    happyIn87 :: (Either (List1 (NamedArg Binder)) (List1 Expr)) -> (HappyAbsSyn )
    happyIn87 :: Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87 Either (List1 (NamedArg Binder)) (List1 Expr)
    x = HappyWrap87 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyWrap87
    HappyWrap87 Either (List1 (NamedArg Binder)) (List1 Expr)
    x)
    {-# INLINE happyIn87 #-}
    happyOut87 :: (HappyAbsSyn ) -> HappyWrap87
    happyOut87 :: HappyAbsSyn -> HappyWrap87
    happyOut87 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap87
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut87 #-}
    newtype HappyWrap88 = HappyWrap88 (List1 DoStmt)
    happyIn88 :: (List1 DoStmt) -> (HappyAbsSyn )
    happyIn88 :: List1 DoStmt -> HappyAbsSyn
    happyIn88 List1 DoStmt
    x = HappyWrap88 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 DoStmt -> HappyWrap88
    HappyWrap88 List1 DoStmt
    x)
    {-# INLINE happyIn88 #-}
    happyOut88 :: (HappyAbsSyn ) -> HappyWrap88
    happyOut88 :: HappyAbsSyn -> HappyWrap88
    happyOut88 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap88
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut88 #-}
    newtype HappyWrap89 = HappyWrap89 (DoStmt)
    happyIn89 :: (DoStmt) -> (HappyAbsSyn )
    happyIn89 :: DoStmt -> HappyAbsSyn
    happyIn89 DoStmt
    x = HappyWrap89 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (DoStmt -> HappyWrap89
    HappyWrap89 DoStmt
    x)
    {-# INLINE happyIn89 #-}
    happyOut89 :: (HappyAbsSyn ) -> HappyWrap89
    happyOut89 :: HappyAbsSyn -> HappyWrap89
    happyOut89 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap89
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut89 #-}
    newtype HappyWrap90 = HappyWrap90 ([LamClause])
    happyIn90 :: ([LamClause]) -> (HappyAbsSyn )
    happyIn90 :: [LamClause] -> HappyAbsSyn
    happyIn90 [LamClause]
    x = HappyWrap90 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([LamClause] -> HappyWrap90
    HappyWrap90 [LamClause]
    x)
    {-# INLINE happyIn90 #-}
    happyOut90 :: (HappyAbsSyn ) -> HappyWrap90
    happyOut90 :: HappyAbsSyn -> HappyWrap90
    happyOut90 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap90
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut90 #-}
    newtype HappyWrap91 = HappyWrap91 (ImportDirective)
    happyIn91 :: (ImportDirective) -> (HappyAbsSyn )
    happyIn91 :: ImportDirective -> HappyAbsSyn
    happyIn91 ImportDirective
    x = HappyWrap91 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ImportDirective -> HappyWrap91
    HappyWrap91 ImportDirective
    x)
    {-# INLINE happyIn91 #-}
    happyOut91 :: (HappyAbsSyn ) -> HappyWrap91
    happyOut91 :: HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap91
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut91 #-}
    newtype HappyWrap92 = HappyWrap92 (ImportDirective)
    happyIn92 :: (ImportDirective) -> (HappyAbsSyn )
    happyIn92 :: ImportDirective -> HappyAbsSyn
    happyIn92 ImportDirective
    x = HappyWrap92 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ImportDirective -> HappyWrap92
    HappyWrap92 ImportDirective
    x)
    {-# INLINE happyIn92 #-}
    happyOut92 :: (HappyAbsSyn ) -> HappyWrap92
    happyOut92 :: HappyAbsSyn -> HappyWrap92
    happyOut92 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap92
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut92 #-}
    newtype HappyWrap93 = HappyWrap93 ((Using, Range))
    happyIn93 :: ((Using, Range)) -> (HappyAbsSyn )
    happyIn93 :: (Using, Range) -> HappyAbsSyn
    happyIn93 (Using, Range)
    x = HappyWrap93 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((Using, Range) -> HappyWrap93
    HappyWrap93 (Using, Range)
    x)
    {-# INLINE happyIn93 #-}
    happyOut93 :: (HappyAbsSyn ) -> HappyWrap93
    happyOut93 :: HappyAbsSyn -> HappyWrap93
    happyOut93 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap93
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut93 #-}
    newtype HappyWrap94 = HappyWrap94 (([ImportedName], Range))
    happyIn94 :: (([ImportedName], Range)) -> (HappyAbsSyn )
    happyIn94 :: ([ImportedName], Range) -> HappyAbsSyn
    happyIn94 ([ImportedName], Range)
    x = HappyWrap94 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (([ImportedName], Range) -> HappyWrap94
    HappyWrap94 ([ImportedName], Range)
    x)
    {-# INLINE happyIn94 #-}
    happyOut94 :: (HappyAbsSyn ) -> HappyWrap94
    happyOut94 :: HappyAbsSyn -> HappyWrap94
    happyOut94 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap94
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut94 #-}
    newtype HappyWrap95 = HappyWrap95 (([Renaming] , Range))
    happyIn95 :: (([Renaming] , Range)) -> (HappyAbsSyn )
    happyIn95 :: ([Renaming], Range) -> HappyAbsSyn
    happyIn95 ([Renaming], Range)
    x = HappyWrap95 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (([Renaming], Range) -> HappyWrap95
    HappyWrap95 ([Renaming], Range)
    x)
    {-# INLINE happyIn95 #-}
    happyOut95 :: (HappyAbsSyn ) -> HappyWrap95
    happyOut95 :: HappyAbsSyn -> HappyWrap95
    happyOut95 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap95
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut95 #-}
    newtype HappyWrap96 = HappyWrap96 ([Renaming])
    happyIn96 :: ([Renaming]) -> (HappyAbsSyn )
    happyIn96 :: [Renaming] -> HappyAbsSyn
    happyIn96 [Renaming]
    x = HappyWrap96 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Renaming] -> HappyWrap96
    HappyWrap96 [Renaming]
    x)
    {-# INLINE happyIn96 #-}
    happyOut96 :: (HappyAbsSyn ) -> HappyWrap96
    happyOut96 :: HappyAbsSyn -> HappyWrap96
    happyOut96 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap96
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut96 #-}
    newtype HappyWrap97 = HappyWrap97 (Renaming)
    happyIn97 :: (Renaming) -> (HappyAbsSyn )
    happyIn97 :: Renaming -> HappyAbsSyn
    happyIn97 Renaming
    x = HappyWrap97 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Renaming -> HappyWrap97
    HappyWrap97 Renaming
    x)
    {-# INLINE happyIn97 #-}
    happyOut97 :: (HappyAbsSyn ) -> HappyWrap97
    happyOut97 :: HappyAbsSyn -> HappyWrap97
    happyOut97 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap97
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut97 #-}
    newtype HappyWrap98 = HappyWrap98 ((Maybe Fixity, Name))
    happyIn98 :: ((Maybe Fixity, Name)) -> (HappyAbsSyn )
    happyIn98 :: (Maybe Fixity, Name) -> HappyAbsSyn
    happyIn98 (Maybe Fixity, Name)
    x = HappyWrap98 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((Maybe Fixity, Name) -> HappyWrap98
    HappyWrap98 (Maybe Fixity, Name)
    x)
    {-# INLINE happyIn98 #-}
    happyOut98 :: (HappyAbsSyn ) -> HappyWrap98
    happyOut98 :: HappyAbsSyn -> HappyWrap98
    happyOut98 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap98
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut98 #-}
    newtype HappyWrap99 = HappyWrap99 (ImportedName)
    happyIn99 :: (ImportedName) -> (HappyAbsSyn )
    happyIn99 :: ImportedName -> HappyAbsSyn
    happyIn99 ImportedName
    x = HappyWrap99 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ImportedName -> HappyWrap99
    HappyWrap99 ImportedName
    x)
    {-# INLINE happyIn99 #-}
    happyOut99 :: (HappyAbsSyn ) -> HappyWrap99
    happyOut99 :: HappyAbsSyn -> HappyWrap99
    happyOut99 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap99
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut99 #-}
    newtype HappyWrap100 = HappyWrap100 (ImportedName)
    happyIn100 :: (ImportedName) -> (HappyAbsSyn )
    happyIn100 :: ImportedName -> HappyAbsSyn
    happyIn100 ImportedName
    x = HappyWrap100 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ImportedName -> HappyWrap100
    HappyWrap100 ImportedName
    x)
    {-# INLINE happyIn100 #-}
    happyOut100 :: (HappyAbsSyn ) -> HappyWrap100
    happyOut100 :: HappyAbsSyn -> HappyWrap100
    happyOut100 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap100
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut100 #-}
    newtype HappyWrap101 = HappyWrap101 ([ImportedName])
    happyIn101 :: ([ImportedName]) -> (HappyAbsSyn )
    happyIn101 :: [ImportedName] -> HappyAbsSyn
    happyIn101 [ImportedName]
    x = HappyWrap101 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([ImportedName] -> HappyWrap101
    HappyWrap101 [ImportedName]
    x)
    {-# INLINE happyIn101 #-}
    happyOut101 :: (HappyAbsSyn ) -> HappyWrap101
    happyOut101 :: HappyAbsSyn -> HappyWrap101
    happyOut101 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap101
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut101 #-}
    newtype HappyWrap102 = HappyWrap102 (List1 ImportedName)
    happyIn102 :: (List1 ImportedName) -> (HappyAbsSyn )
    happyIn102 :: List1 ImportedName -> HappyAbsSyn
    happyIn102 List1 ImportedName
    x = HappyWrap102 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 ImportedName -> HappyWrap102
    HappyWrap102 List1 ImportedName
    x)
    {-# INLINE happyIn102 #-}
    happyOut102 :: (HappyAbsSyn ) -> HappyWrap102
    happyOut102 :: HappyAbsSyn -> HappyWrap102
    happyOut102 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap102
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut102 #-}
    newtype HappyWrap103 = HappyWrap103 ([RewriteEqn] -> [WithExpr] -> LHS)
    happyIn103 :: ([RewriteEqn] -> [WithExpr] -> LHS) -> (HappyAbsSyn )
    happyIn103 :: ([RewriteEqn] -> [WithExpr] -> LHS) -> HappyAbsSyn
    happyIn103 [RewriteEqn] -> [WithExpr] -> LHS
    x = HappyWrap103 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (([RewriteEqn] -> [WithExpr] -> LHS) -> HappyWrap103
    HappyWrap103 [RewriteEqn] -> [WithExpr] -> LHS
    x)
    {-# INLINE happyIn103 #-}
    happyOut103 :: (HappyAbsSyn ) -> HappyWrap103
    happyOut103 :: HappyAbsSyn -> HappyWrap103
    happyOut103 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap103
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut103 #-}
    newtype HappyWrap104 = HappyWrap104 ([Either RewriteEqn (List1 (Named Name Expr))])
    happyIn104 :: ([Either RewriteEqn (List1 (Named Name Expr))]) -> (HappyAbsSyn )
    happyIn104 :: [Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn104 [Either RewriteEqn (List1 (Named Name Expr))]
    x = HappyWrap104 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Either RewriteEqn (List1 (Named Name Expr))] -> HappyWrap104
    HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    x)
    {-# INLINE happyIn104 #-}
    happyOut104 :: (HappyAbsSyn ) -> HappyWrap104
    happyOut104 :: HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap104
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut104 #-}
    newtype HappyWrap105 = HappyWrap105 (HoleContent)
    happyIn105 :: (HoleContent) -> (HappyAbsSyn )
    happyIn105 :: HoleContent -> HappyAbsSyn
    happyIn105 HoleContent
    x = HappyWrap105 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (HoleContent -> HappyWrap105
    HappyWrap105 HoleContent
    x)
    {-# INLINE happyIn105 #-}
    happyOut105 :: (HappyAbsSyn ) -> HappyWrap105
    happyOut105 :: HappyAbsSyn -> HappyWrap105
    happyOut105 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap105
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut105 #-}
    newtype HappyWrap106 = HappyWrap106 (WhereClause)
    happyIn106 :: (WhereClause) -> (HappyAbsSyn )
    happyIn106 :: WhereClause -> HappyAbsSyn
    happyIn106 WhereClause
    x = HappyWrap106 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (WhereClause -> HappyWrap106
    HappyWrap106 WhereClause
    x)
    {-# INLINE happyIn106 #-}
    happyOut106 :: (HappyAbsSyn ) -> HappyWrap106
    happyOut106 :: HappyAbsSyn -> HappyWrap106
    happyOut106 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap106
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut106 #-}
    newtype HappyWrap107 = HappyWrap107 (ExprWhere)
    happyIn107 :: (ExprWhere) -> (HappyAbsSyn )
    happyIn107 :: ExprWhere -> HappyAbsSyn
    happyIn107 ExprWhere
    x = HappyWrap107 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (ExprWhere -> HappyWrap107
    HappyWrap107 ExprWhere
    x)
    {-# INLINE happyIn107 #-}
    happyOut107 :: (HappyAbsSyn ) -> HappyWrap107
    happyOut107 :: HappyAbsSyn -> HappyWrap107
    happyOut107 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap107
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut107 #-}
    newtype HappyWrap108 = HappyWrap108 (List1 Declaration)
    happyIn108 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn108 :: List1 Declaration -> HappyAbsSyn
    happyIn108 List1 Declaration
    x = HappyWrap108 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap108
    HappyWrap108 List1 Declaration
    x)
    {-# INLINE happyIn108 #-}
    happyOut108 :: (HappyAbsSyn ) -> HappyWrap108
    happyOut108 :: HappyAbsSyn -> HappyWrap108
    happyOut108 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap108
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut108 #-}
    newtype HappyWrap109 = HappyWrap109 (List1 Declaration)
    happyIn109 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn109 :: List1 Declaration -> HappyAbsSyn
    happyIn109 List1 Declaration
    x = HappyWrap109 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap109
    HappyWrap109 List1 Declaration
    x)
    {-# INLINE happyIn109 #-}
    happyOut109 :: (HappyAbsSyn ) -> HappyWrap109
    happyOut109 :: HappyAbsSyn -> HappyWrap109
    happyOut109 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap109
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut109 #-}
    newtype HappyWrap110 = HappyWrap110 (List1 (Arg Declaration))
    happyIn110 :: (List1 (Arg Declaration)) -> (HappyAbsSyn )
    happyIn110 :: List1 (Arg Declaration) -> HappyAbsSyn
    happyIn110 List1 (Arg Declaration)
    x = HappyWrap110 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Arg Declaration) -> HappyWrap110
    HappyWrap110 List1 (Arg Declaration)
    x)
    {-# INLINE happyIn110 #-}
    happyOut110 :: (HappyAbsSyn ) -> HappyWrap110
    happyOut110 :: HappyAbsSyn -> HappyWrap110
    happyOut110 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap110
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut110 #-}
    newtype HappyWrap111 = HappyWrap111 (List1 Declaration)
    happyIn111 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn111 :: List1 Declaration -> HappyAbsSyn
    happyIn111 List1 Declaration
    x = HappyWrap111 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap111
    HappyWrap111 List1 Declaration
    x)
    {-# INLINE happyIn111 #-}
    happyOut111 :: (HappyAbsSyn ) -> HappyWrap111
    happyOut111 :: HappyAbsSyn -> HappyWrap111
    happyOut111 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap111
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut111 #-}
    newtype HappyWrap112 = HappyWrap112 ([Either RewriteEqn (List1 (Named Name Expr))])
    happyIn112 :: ([Either RewriteEqn (List1 (Named Name Expr))]) -> (HappyAbsSyn )
    happyIn112 :: [Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn112 [Either RewriteEqn (List1 (Named Name Expr))]
    x = HappyWrap112 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Either RewriteEqn (List1 (Named Name Expr))] -> HappyWrap112
    HappyWrap112 [Either RewriteEqn (List1 (Named Name Expr))]
    x)
    {-# INLINE happyIn112 #-}
    happyOut112 :: (HappyAbsSyn ) -> HappyWrap112
    happyOut112 :: HappyAbsSyn -> HappyWrap112
    happyOut112 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap112
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut112 #-}
    newtype HappyWrap113 = HappyWrap113 (RHSOrTypeSigs)
    happyIn113 :: (RHSOrTypeSigs) -> (HappyAbsSyn )
    happyIn113 :: RHSOrTypeSigs -> HappyAbsSyn
    happyIn113 RHSOrTypeSigs
    x = HappyWrap113 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (RHSOrTypeSigs -> HappyWrap113
    HappyWrap113 RHSOrTypeSigs
    x)
    {-# INLINE happyIn113 #-}
    happyOut113 :: (HappyAbsSyn ) -> HappyWrap113
    happyOut113 :: HappyAbsSyn -> HappyWrap113
    happyOut113 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap113
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut113 #-}
    newtype HappyWrap114 = HappyWrap114 (Declaration)
    happyIn114 :: (Declaration) -> (HappyAbsSyn )
    happyIn114 :: Declaration -> HappyAbsSyn
    happyIn114 Declaration
    x = HappyWrap114 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap114
    HappyWrap114 Declaration
    x)
    {-# INLINE happyIn114 #-}
    happyOut114 :: (HappyAbsSyn ) -> HappyWrap114
    happyOut114 :: HappyAbsSyn -> HappyWrap114
    happyOut114 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap114
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut114 #-}
    newtype HappyWrap115 = HappyWrap115 (Declaration)
    happyIn115 :: (Declaration) -> (HappyAbsSyn )
    happyIn115 :: Declaration -> HappyAbsSyn
    happyIn115 Declaration
    x = HappyWrap115 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap115
    HappyWrap115 Declaration
    x)
    {-# INLINE happyIn115 #-}
    happyOut115 :: (HappyAbsSyn ) -> HappyWrap115
    happyOut115 :: HappyAbsSyn -> HappyWrap115
    happyOut115 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap115
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut115 #-}
    newtype HappyWrap116 = HappyWrap116 (Declaration)
    happyIn116 :: (Declaration) -> (HappyAbsSyn )
    happyIn116 :: Declaration -> HappyAbsSyn
    happyIn116 Declaration
    x = HappyWrap116 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap116
    HappyWrap116 Declaration
    x)
    {-# INLINE happyIn116 #-}
    happyOut116 :: (HappyAbsSyn ) -> HappyWrap116
    happyOut116 :: HappyAbsSyn -> HappyWrap116
    happyOut116 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap116
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut116 #-}
    newtype HappyWrap117 = HappyWrap117 (Declaration)
    happyIn117 :: (Declaration) -> (HappyAbsSyn )
    happyIn117 :: Declaration -> HappyAbsSyn
    happyIn117 Declaration
    x = HappyWrap117 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap117
    HappyWrap117 Declaration
    x)
    {-# INLINE happyIn117 #-}
    happyOut117 :: (HappyAbsSyn ) -> HappyWrap117
    happyOut117 :: HappyAbsSyn -> HappyWrap117
    happyOut117 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap117
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut117 #-}
    newtype HappyWrap118 = HappyWrap118 (Declaration)
    happyIn118 :: (Declaration) -> (HappyAbsSyn )
    happyIn118 :: Declaration -> HappyAbsSyn
    happyIn118 Declaration
    x = HappyWrap118 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap118
    HappyWrap118 Declaration
    x)
    {-# INLINE happyIn118 #-}
    happyOut118 :: (HappyAbsSyn ) -> HappyWrap118
    happyOut118 :: HappyAbsSyn -> HappyWrap118
    happyOut118 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap118
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut118 #-}
    newtype HappyWrap119 = HappyWrap119 ((Name, IsInstance))
    happyIn119 :: ((Name, IsInstance)) -> (HappyAbsSyn )
    happyIn119 :: (Name, IsInstance) -> HappyAbsSyn
    happyIn119 (Name, IsInstance)
    x = HappyWrap119 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((Name, IsInstance) -> HappyWrap119
    HappyWrap119 (Name, IsInstance)
    x)
    {-# INLINE happyIn119 #-}
    happyOut119 :: (HappyAbsSyn ) -> HappyWrap119
    happyOut119 :: HappyAbsSyn -> HappyWrap119
    happyOut119 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap119
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut119 #-}
    newtype HappyWrap120 = HappyWrap120 (Declaration)
    happyIn120 :: (Declaration) -> (HappyAbsSyn )
    happyIn120 :: Declaration -> HappyAbsSyn
    happyIn120 Declaration
    x = HappyWrap120 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap120
    HappyWrap120 Declaration
    x)
    {-# INLINE happyIn120 #-}
    happyOut120 :: (HappyAbsSyn ) -> HappyWrap120
    happyOut120 :: HappyAbsSyn -> HappyWrap120
    happyOut120 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap120
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut120 #-}
    newtype HappyWrap121 = HappyWrap121 (Declaration)
    happyIn121 :: (Declaration) -> (HappyAbsSyn )
    happyIn121 :: Declaration -> HappyAbsSyn
    happyIn121 Declaration
    x = HappyWrap121 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap121
    HappyWrap121 Declaration
    x)
    {-# INLINE happyIn121 #-}
    happyOut121 :: (HappyAbsSyn ) -> HappyWrap121
    happyOut121 :: HappyAbsSyn -> HappyWrap121
    happyOut121 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap121
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut121 #-}
    newtype HappyWrap122 = HappyWrap122 (Declaration)
    happyIn122 :: (Declaration) -> (HappyAbsSyn )
    happyIn122 :: Declaration -> HappyAbsSyn
    happyIn122 Declaration
    x = HappyWrap122 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap122
    HappyWrap122 Declaration
    x)
    {-# INLINE happyIn122 #-}
    happyOut122 :: (HappyAbsSyn ) -> HappyWrap122
    happyOut122 :: HappyAbsSyn -> HappyWrap122
    happyOut122 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap122
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut122 #-}
    newtype HappyWrap123 = HappyWrap123 (Declaration)
    happyIn123 :: (Declaration) -> (HappyAbsSyn )
    happyIn123 :: Declaration -> HappyAbsSyn
    happyIn123 Declaration
    x = HappyWrap123 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap123
    HappyWrap123 Declaration
    x)
    {-# INLINE happyIn123 #-}
    happyOut123 :: (HappyAbsSyn ) -> HappyWrap123
    happyOut123 :: HappyAbsSyn -> HappyWrap123
    happyOut123 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap123
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut123 #-}
    newtype HappyWrap124 = HappyWrap124 (Declaration)
    happyIn124 :: (Declaration) -> (HappyAbsSyn )
    happyIn124 :: Declaration -> HappyAbsSyn
    happyIn124 Declaration
    x = HappyWrap124 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap124
    HappyWrap124 Declaration
    x)
    {-# INLINE happyIn124 #-}
    happyOut124 :: (HappyAbsSyn ) -> HappyWrap124
    happyOut124 :: HappyAbsSyn -> HappyWrap124
    happyOut124 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap124
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut124 #-}
    newtype HappyWrap125 = HappyWrap125 (Declaration)
    happyIn125 :: (Declaration) -> (HappyAbsSyn )
    happyIn125 :: Declaration -> HappyAbsSyn
    happyIn125 Declaration
    x = HappyWrap125 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap125
    HappyWrap125 Declaration
    x)
    {-# INLINE happyIn125 #-}
    happyOut125 :: (HappyAbsSyn ) -> HappyWrap125
    happyOut125 :: HappyAbsSyn -> HappyWrap125
    happyOut125 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap125
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut125 #-}
    newtype HappyWrap126 = HappyWrap126 (Declaration)
    happyIn126 :: (Declaration) -> (HappyAbsSyn )
    happyIn126 :: Declaration -> HappyAbsSyn
    happyIn126 Declaration
    x = HappyWrap126 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap126
    HappyWrap126 Declaration
    x)
    {-# INLINE happyIn126 #-}
    happyOut126 :: (HappyAbsSyn ) -> HappyWrap126
    happyOut126 :: HappyAbsSyn -> HappyWrap126
    happyOut126 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap126
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut126 #-}
    newtype HappyWrap127 = HappyWrap127 (Declaration)
    happyIn127 :: (Declaration) -> (HappyAbsSyn )
    happyIn127 :: Declaration -> HappyAbsSyn
    happyIn127 Declaration
    x = HappyWrap127 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap127
    HappyWrap127 Declaration
    x)
    {-# INLINE happyIn127 #-}
    happyOut127 :: (HappyAbsSyn ) -> HappyWrap127
    happyOut127 :: HappyAbsSyn -> HappyWrap127
    happyOut127 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap127
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut127 #-}
    newtype HappyWrap128 = HappyWrap128 (Declaration)
    happyIn128 :: (Declaration) -> (HappyAbsSyn )
    happyIn128 :: Declaration -> HappyAbsSyn
    happyIn128 Declaration
    x = HappyWrap128 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap128
    HappyWrap128 Declaration
    x)
    {-# INLINE happyIn128 #-}
    happyOut128 :: (HappyAbsSyn ) -> HappyWrap128
    happyOut128 :: HappyAbsSyn -> HappyWrap128
    happyOut128 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap128
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut128 #-}
    newtype HappyWrap129 = HappyWrap129 (Declaration)
    happyIn129 :: (Declaration) -> (HappyAbsSyn )
    happyIn129 :: Declaration -> HappyAbsSyn
    happyIn129 Declaration
    x = HappyWrap129 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap129
    HappyWrap129 Declaration
    x)
    {-# INLINE happyIn129 #-}
    happyOut129 :: (HappyAbsSyn ) -> HappyWrap129
    happyOut129 :: HappyAbsSyn -> HappyWrap129
    happyOut129 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap129
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut129 #-}
    newtype HappyWrap130 = HappyWrap130 (Declaration)
    happyIn130 :: (Declaration) -> (HappyAbsSyn )
    happyIn130 :: Declaration -> HappyAbsSyn
    happyIn130 Declaration
    x = HappyWrap130 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap130
    HappyWrap130 Declaration
    x)
    {-# INLINE happyIn130 #-}
    happyOut130 :: (HappyAbsSyn ) -> HappyWrap130
    happyOut130 :: HappyAbsSyn -> HappyWrap130
    happyOut130 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap130
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut130 #-}
    newtype HappyWrap131 = HappyWrap131 (Declaration)
    happyIn131 :: (Declaration) -> (HappyAbsSyn )
    happyIn131 :: Declaration -> HappyAbsSyn
    happyIn131 Declaration
    x = HappyWrap131 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap131
    HappyWrap131 Declaration
    x)
    {-# INLINE happyIn131 #-}
    happyOut131 :: (HappyAbsSyn ) -> HappyWrap131
    happyOut131 :: HappyAbsSyn -> HappyWrap131
    happyOut131 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap131
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut131 #-}
    newtype HappyWrap132 = HappyWrap132 (Declaration)
    happyIn132 :: (Declaration) -> (HappyAbsSyn )
    happyIn132 :: Declaration -> HappyAbsSyn
    happyIn132 Declaration
    x = HappyWrap132 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap132
    HappyWrap132 Declaration
    x)
    {-# INLINE happyIn132 #-}
    happyOut132 :: (HappyAbsSyn ) -> HappyWrap132
    happyOut132 :: HappyAbsSyn -> HappyWrap132
    happyOut132 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap132
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut132 #-}
    newtype HappyWrap133 = HappyWrap133 ([Arg Name])
    happyIn133 :: ([Arg Name]) -> (HappyAbsSyn )
    happyIn133 :: [Arg Name] -> HappyAbsSyn
    happyIn133 [Arg Name]
    x = HappyWrap133 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Arg Name] -> HappyWrap133
    HappyWrap133 [Arg Name]
    x)
    {-# INLINE happyIn133 #-}
    happyOut133 :: (HappyAbsSyn ) -> HappyWrap133
    happyOut133 :: HappyAbsSyn -> HappyWrap133
    happyOut133 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap133
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut133 #-}
    newtype HappyWrap134 = HappyWrap134 ([RString])
    happyIn134 :: ([RString]) -> (HappyAbsSyn )
    happyIn134 :: [RString] -> HappyAbsSyn
    happyIn134 [RString]
    x = HappyWrap134 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([RString] -> HappyWrap134
    HappyWrap134 [RString]
    x)
    {-# INLINE happyIn134 #-}
    happyOut134 :: (HappyAbsSyn ) -> HappyWrap134
    happyOut134 :: HappyAbsSyn -> HappyWrap134
    happyOut134 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap134
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut134 #-}
    newtype HappyWrap135 = HappyWrap135 ([NamedArg HoleName])
    happyIn135 :: ([NamedArg HoleName]) -> (HappyAbsSyn )
    happyIn135 :: [NamedArg HoleName] -> HappyAbsSyn
    happyIn135 [NamedArg HoleName]
    x = HappyWrap135 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([NamedArg HoleName] -> HappyWrap135
    HappyWrap135 [NamedArg HoleName]
    x)
    {-# INLINE happyIn135 #-}
    happyOut135 :: (HappyAbsSyn ) -> HappyWrap135
    happyOut135 :: HappyAbsSyn -> HappyWrap135
    happyOut135 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap135
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut135 #-}
    newtype HappyWrap136 = HappyWrap136 (NamedArg HoleName)
    happyIn136 :: (NamedArg HoleName) -> (HappyAbsSyn )
    happyIn136 :: NamedArg HoleName -> HappyAbsSyn
    happyIn136 NamedArg HoleName
    x = HappyWrap136 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (NamedArg HoleName -> HappyWrap136
    HappyWrap136 NamedArg HoleName
    x)
    {-# INLINE happyIn136 #-}
    happyOut136 :: (HappyAbsSyn ) -> HappyWrap136
    happyOut136 :: HappyAbsSyn -> HappyWrap136
    happyOut136 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap136
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut136 #-}
    newtype HappyWrap137 = HappyWrap137 (HoleName)
    happyIn137 :: (HoleName) -> (HappyAbsSyn )
    happyIn137 :: HoleName -> HappyAbsSyn
    happyIn137 HoleName
    x = HappyWrap137 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (HoleName -> HappyWrap137
    HappyWrap137 HoleName
    x)
    {-# INLINE happyIn137 #-}
    happyOut137 :: (HappyAbsSyn ) -> HappyWrap137
    happyOut137 :: HappyAbsSyn -> HappyWrap137
    happyOut137 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap137
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut137 #-}
    newtype HappyWrap138 = HappyWrap138 (HoleName)
    happyIn138 :: (HoleName) -> (HappyAbsSyn )
    happyIn138 :: HoleName -> HappyAbsSyn
    happyIn138 HoleName
    x = HappyWrap138 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (HoleName -> HappyWrap138
    HappyWrap138 HoleName
    x)
    {-# INLINE happyIn138 #-}
    happyOut138 :: (HappyAbsSyn ) -> HappyWrap138
    happyOut138 :: HappyAbsSyn -> HappyWrap138
    happyOut138 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap138
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut138 #-}
    newtype HappyWrap139 = HappyWrap139 (RString)
    happyIn139 :: (RString) -> (HappyAbsSyn )
    happyIn139 :: RString -> HappyAbsSyn
    happyIn139 RString
    x = HappyWrap139 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (RString -> HappyWrap139
    HappyWrap139 RString
    x)
    {-# INLINE happyIn139 #-}
    happyOut139 :: (HappyAbsSyn ) -> HappyWrap139
    happyOut139 :: HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap139
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut139 #-}
    newtype HappyWrap140 = HappyWrap140 (Maybe Range)
    happyIn140 :: (Maybe Range) -> (HappyAbsSyn )
    happyIn140 :: Maybe Range -> HappyAbsSyn
    happyIn140 Maybe Range
    x = HappyWrap140 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Maybe Range -> HappyWrap140
    HappyWrap140 Maybe Range
    x)
    {-# INLINE happyIn140 #-}
    happyOut140 :: (HappyAbsSyn ) -> HappyWrap140
    happyOut140 :: HappyAbsSyn -> HappyWrap140
    happyOut140 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap140
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut140 #-}
    newtype HappyWrap141 = HappyWrap141 (List1 Declaration)
    happyIn141 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn141 :: List1 Declaration -> HappyAbsSyn
    happyIn141 List1 Declaration
    x = HappyWrap141 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap141
    HappyWrap141 List1 Declaration
    x)
    {-# INLINE happyIn141 #-}
    happyOut141 :: (HappyAbsSyn ) -> HappyWrap141
    happyOut141 :: HappyAbsSyn -> HappyWrap141
    happyOut141 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap141
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut141 #-}
    newtype HappyWrap142 = HappyWrap142 ([Expr])
    happyIn142 :: ([Expr]) -> (HappyAbsSyn )
    happyIn142 :: [Expr] -> HappyAbsSyn
    happyIn142 [Expr]
    x = HappyWrap142 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Expr] -> HappyWrap142
    HappyWrap142 [Expr]
    x)
    {-# INLINE happyIn142 #-}
    happyOut142 :: (HappyAbsSyn ) -> HappyWrap142
    happyOut142 :: HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap142
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut142 #-}
    newtype HappyWrap143 = HappyWrap143 (Telescope -> Parser ModuleApplication)
    happyIn143 :: (Telescope -> Parser ModuleApplication) -> (HappyAbsSyn )
    happyIn143 :: (Telescope -> Parser ModuleApplication) -> HappyAbsSyn
    happyIn143 Telescope -> Parser ModuleApplication
    x = HappyWrap143 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((Telescope -> Parser ModuleApplication) -> HappyWrap143
    HappyWrap143 Telescope -> Parser ModuleApplication
    x)
    {-# INLINE happyIn143 #-}
    happyOut143 :: (HappyAbsSyn ) -> HappyWrap143
    happyOut143 :: HappyAbsSyn -> HappyWrap143
    happyOut143 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap143
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut143 #-}
    newtype HappyWrap144 = HappyWrap144 (Declaration)
    happyIn144 :: (Declaration) -> (HappyAbsSyn )
    happyIn144 :: Declaration -> HappyAbsSyn
    happyIn144 Declaration
    x = HappyWrap144 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap144
    HappyWrap144 Declaration
    x)
    {-# INLINE happyIn144 #-}
    happyOut144 :: (HappyAbsSyn ) -> HappyWrap144
    happyOut144 :: HappyAbsSyn -> HappyWrap144
    happyOut144 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap144
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut144 #-}
    newtype HappyWrap145 = HappyWrap145 (Declaration)
    happyIn145 :: (Declaration) -> (HappyAbsSyn )
    happyIn145 :: Declaration -> HappyAbsSyn
    happyIn145 Declaration
    x = HappyWrap145 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap145
    HappyWrap145 Declaration
    x)
    {-# INLINE happyIn145 #-}
    happyOut145 :: (HappyAbsSyn ) -> HappyWrap145
    happyOut145 :: HappyAbsSyn -> HappyWrap145
    happyOut145 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap145
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut145 #-}
    newtype HappyWrap146 = HappyWrap146 (Name)
    happyIn146 :: (Name) -> (HappyAbsSyn )
    happyIn146 :: Name -> HappyAbsSyn
    happyIn146 Name
    x = HappyWrap146 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Name -> HappyWrap146
    HappyWrap146 Name
    x)
    {-# INLINE happyIn146 #-}
    happyOut146 :: (HappyAbsSyn ) -> HappyWrap146
    happyOut146 :: HappyAbsSyn -> HappyWrap146
    happyOut146 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap146
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut146 #-}
    newtype HappyWrap147 = HappyWrap147 ([Declaration])
    happyIn147 :: ([Declaration]) -> (HappyAbsSyn )
    happyIn147 :: [Declaration] -> HappyAbsSyn
    happyIn147 [Declaration]
    x = HappyWrap147 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Declaration] -> HappyWrap147
    HappyWrap147 [Declaration]
    x)
    {-# INLINE happyIn147 #-}
    happyOut147 :: (HappyAbsSyn ) -> HappyWrap147
    happyOut147 :: HappyAbsSyn -> HappyWrap147
    happyOut147 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap147
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut147 #-}
    newtype HappyWrap148 = HappyWrap148 (Declaration)
    happyIn148 :: (Declaration) -> (HappyAbsSyn )
    happyIn148 :: Declaration -> HappyAbsSyn
    happyIn148 Declaration
    x = HappyWrap148 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Declaration -> HappyWrap148
    HappyWrap148 Declaration
    x)
    {-# INLINE happyIn148 #-}
    happyOut148 :: (HappyAbsSyn ) -> HappyWrap148
    happyOut148 :: HappyAbsSyn -> HappyWrap148
    happyOut148 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap148
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut148 #-}
    newtype HappyWrap149 = HappyWrap149 (Pragma)
    happyIn149 :: (Pragma) -> (HappyAbsSyn )
    happyIn149 :: Pragma -> HappyAbsSyn
    happyIn149 Pragma
    x = HappyWrap149 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap149
    HappyWrap149 Pragma
    x)
    {-# INLINE happyIn149 #-}
    happyOut149 :: (HappyAbsSyn ) -> HappyWrap149
    happyOut149 :: HappyAbsSyn -> HappyWrap149
    happyOut149 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap149
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut149 #-}
    newtype HappyWrap150 = HappyWrap150 (Pragma)
    happyIn150 :: (Pragma) -> (HappyAbsSyn )
    happyIn150 :: Pragma -> HappyAbsSyn
    happyIn150 Pragma
    x = HappyWrap150 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap150
    HappyWrap150 Pragma
    x)
    {-# INLINE happyIn150 #-}
    happyOut150 :: (HappyAbsSyn ) -> HappyWrap150
    happyOut150 :: HappyAbsSyn -> HappyWrap150
    happyOut150 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap150
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut150 #-}
    newtype HappyWrap151 = HappyWrap151 (Pragma)
    happyIn151 :: (Pragma) -> (HappyAbsSyn )
    happyIn151 :: Pragma -> HappyAbsSyn
    happyIn151 Pragma
    x = HappyWrap151 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap151
    HappyWrap151 Pragma
    x)
    {-# INLINE happyIn151 #-}
    happyOut151 :: (HappyAbsSyn ) -> HappyWrap151
    happyOut151 :: HappyAbsSyn -> HappyWrap151
    happyOut151 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap151
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut151 #-}
    newtype HappyWrap152 = HappyWrap152 (Pragma)
    happyIn152 :: (Pragma) -> (HappyAbsSyn )
    happyIn152 :: Pragma -> HappyAbsSyn
    happyIn152 Pragma
    x = HappyWrap152 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap152
    HappyWrap152 Pragma
    x)
    {-# INLINE happyIn152 #-}
    happyOut152 :: (HappyAbsSyn ) -> HappyWrap152
    happyOut152 :: HappyAbsSyn -> HappyWrap152
    happyOut152 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap152
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut152 #-}
    newtype HappyWrap153 = HappyWrap153 (Pragma)
    happyIn153 :: (Pragma) -> (HappyAbsSyn )
    happyIn153 :: Pragma -> HappyAbsSyn
    happyIn153 Pragma
    x = HappyWrap153 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap153
    HappyWrap153 Pragma
    x)
    {-# INLINE happyIn153 #-}
    happyOut153 :: (HappyAbsSyn ) -> HappyWrap153
    happyOut153 :: HappyAbsSyn -> HappyWrap153
    happyOut153 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap153
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut153 #-}
    newtype HappyWrap154 = HappyWrap154 (Pragma)
    happyIn154 :: (Pragma) -> (HappyAbsSyn )
    happyIn154 :: Pragma -> HappyAbsSyn
    happyIn154 Pragma
    x = HappyWrap154 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap154
    HappyWrap154 Pragma
    x)
    {-# INLINE happyIn154 #-}
    happyOut154 :: (HappyAbsSyn ) -> HappyWrap154
    happyOut154 :: HappyAbsSyn -> HappyWrap154
    happyOut154 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap154
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut154 #-}
    newtype HappyWrap155 = HappyWrap155 (Pragma)
    happyIn155 :: (Pragma) -> (HappyAbsSyn )
    happyIn155 :: Pragma -> HappyAbsSyn
    happyIn155 Pragma
    x = HappyWrap155 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap155
    HappyWrap155 Pragma
    x)
    {-# INLINE happyIn155 #-}
    happyOut155 :: (HappyAbsSyn ) -> HappyWrap155
    happyOut155 :: HappyAbsSyn -> HappyWrap155
    happyOut155 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap155
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut155 #-}
    newtype HappyWrap156 = HappyWrap156 (Pragma)
    happyIn156 :: (Pragma) -> (HappyAbsSyn )
    happyIn156 :: Pragma -> HappyAbsSyn
    happyIn156 Pragma
    x = HappyWrap156 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap156
    HappyWrap156 Pragma
    x)
    {-# INLINE happyIn156 #-}
    happyOut156 :: (HappyAbsSyn ) -> HappyWrap156
    happyOut156 :: HappyAbsSyn -> HappyWrap156
    happyOut156 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap156
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut156 #-}
    newtype HappyWrap157 = HappyWrap157 (Pragma)
    happyIn157 :: (Pragma) -> (HappyAbsSyn )
    happyIn157 :: Pragma -> HappyAbsSyn
    happyIn157 Pragma
    x = HappyWrap157 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap157
    HappyWrap157 Pragma
    x)
    {-# INLINE happyIn157 #-}
    happyOut157 :: (HappyAbsSyn ) -> HappyWrap157
    happyOut157 :: HappyAbsSyn -> HappyWrap157
    happyOut157 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap157
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut157 #-}
    newtype HappyWrap158 = HappyWrap158 (Pragma)
    happyIn158 :: (Pragma) -> (HappyAbsSyn )
    happyIn158 :: Pragma -> HappyAbsSyn
    happyIn158 Pragma
    x = HappyWrap158 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap158
    HappyWrap158 Pragma
    x)
    {-# INLINE happyIn158 #-}
    happyOut158 :: (HappyAbsSyn ) -> HappyWrap158
    happyOut158 :: HappyAbsSyn -> HappyWrap158
    happyOut158 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap158
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut158 #-}
    newtype HappyWrap159 = HappyWrap159 (Pragma)
    happyIn159 :: (Pragma) -> (HappyAbsSyn )
    happyIn159 :: Pragma -> HappyAbsSyn
    happyIn159 Pragma
    x = HappyWrap159 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap159
    HappyWrap159 Pragma
    x)
    {-# INLINE happyIn159 #-}
    happyOut159 :: (HappyAbsSyn ) -> HappyWrap159
    happyOut159 :: HappyAbsSyn -> HappyWrap159
    happyOut159 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap159
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut159 #-}
    newtype HappyWrap160 = HappyWrap160 (Pragma)
    happyIn160 :: (Pragma) -> (HappyAbsSyn )
    happyIn160 :: Pragma -> HappyAbsSyn
    happyIn160 Pragma
    x = HappyWrap160 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap160
    HappyWrap160 Pragma
    x)
    {-# INLINE happyIn160 #-}
    happyOut160 :: (HappyAbsSyn ) -> HappyWrap160
    happyOut160 :: HappyAbsSyn -> HappyWrap160
    happyOut160 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap160
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut160 #-}
    newtype HappyWrap161 = HappyWrap161 (Pragma)
    happyIn161 :: (Pragma) -> (HappyAbsSyn )
    happyIn161 :: Pragma -> HappyAbsSyn
    happyIn161 Pragma
    x = HappyWrap161 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap161
    HappyWrap161 Pragma
    x)
    {-# INLINE happyIn161 #-}
    happyOut161 :: (HappyAbsSyn ) -> HappyWrap161
    happyOut161 :: HappyAbsSyn -> HappyWrap161
    happyOut161 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap161
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut161 #-}
    newtype HappyWrap162 = HappyWrap162 (Pragma)
    happyIn162 :: (Pragma) -> (HappyAbsSyn )
    happyIn162 :: Pragma -> HappyAbsSyn
    happyIn162 Pragma
    x = HappyWrap162 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap162
    HappyWrap162 Pragma
    x)
    {-# INLINE happyIn162 #-}
    happyOut162 :: (HappyAbsSyn ) -> HappyWrap162
    happyOut162 :: HappyAbsSyn -> HappyWrap162
    happyOut162 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap162
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut162 #-}
    newtype HappyWrap163 = HappyWrap163 (Pragma)
    happyIn163 :: (Pragma) -> (HappyAbsSyn )
    happyIn163 :: Pragma -> HappyAbsSyn
    happyIn163 Pragma
    x = HappyWrap163 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap163
    HappyWrap163 Pragma
    x)
    {-# INLINE happyIn163 #-}
    happyOut163 :: (HappyAbsSyn ) -> HappyWrap163
    happyOut163 :: HappyAbsSyn -> HappyWrap163
    happyOut163 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap163
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut163 #-}
    newtype HappyWrap164 = HappyWrap164 (Pragma)
    happyIn164 :: (Pragma) -> (HappyAbsSyn )
    happyIn164 :: Pragma -> HappyAbsSyn
    happyIn164 Pragma
    x = HappyWrap164 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap164
    HappyWrap164 Pragma
    x)
    {-# INLINE happyIn164 #-}
    happyOut164 :: (HappyAbsSyn ) -> HappyWrap164
    happyOut164 :: HappyAbsSyn -> HappyWrap164
    happyOut164 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap164
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut164 #-}
    newtype HappyWrap165 = HappyWrap165 (Pragma)
    happyIn165 :: (Pragma) -> (HappyAbsSyn )
    happyIn165 :: Pragma -> HappyAbsSyn
    happyIn165 Pragma
    x = HappyWrap165 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap165
    HappyWrap165 Pragma
    x)
    {-# INLINE happyIn165 #-}
    happyOut165 :: (HappyAbsSyn ) -> HappyWrap165
    happyOut165 :: HappyAbsSyn -> HappyWrap165
    happyOut165 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap165
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut165 #-}
    newtype HappyWrap166 = HappyWrap166 (Pragma)
    happyIn166 :: (Pragma) -> (HappyAbsSyn )
    happyIn166 :: Pragma -> HappyAbsSyn
    happyIn166 Pragma
    x = HappyWrap166 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap166
    HappyWrap166 Pragma
    x)
    {-# INLINE happyIn166 #-}
    happyOut166 :: (HappyAbsSyn ) -> HappyWrap166
    happyOut166 :: HappyAbsSyn -> HappyWrap166
    happyOut166 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap166
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut166 #-}
    newtype HappyWrap167 = HappyWrap167 (Pragma)
    happyIn167 :: (Pragma) -> (HappyAbsSyn )
    happyIn167 :: Pragma -> HappyAbsSyn
    happyIn167 Pragma
    x = HappyWrap167 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap167
    HappyWrap167 Pragma
    x)
    {-# INLINE happyIn167 #-}
    happyOut167 :: (HappyAbsSyn ) -> HappyWrap167
    happyOut167 :: HappyAbsSyn -> HappyWrap167
    happyOut167 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap167
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut167 #-}
    newtype HappyWrap168 = HappyWrap168 (Pragma)
    happyIn168 :: (Pragma) -> (HappyAbsSyn )
    happyIn168 :: Pragma -> HappyAbsSyn
    happyIn168 Pragma
    x = HappyWrap168 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap168
    HappyWrap168 Pragma
    x)
    {-# INLINE happyIn168 #-}
    happyOut168 :: (HappyAbsSyn ) -> HappyWrap168
    happyOut168 :: HappyAbsSyn -> HappyWrap168
    happyOut168 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap168
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut168 #-}
    newtype HappyWrap169 = HappyWrap169 (Pragma)
    happyIn169 :: (Pragma) -> (HappyAbsSyn )
    happyIn169 :: Pragma -> HappyAbsSyn
    happyIn169 Pragma
    x = HappyWrap169 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap169
    HappyWrap169 Pragma
    x)
    {-# INLINE happyIn169 #-}
    happyOut169 :: (HappyAbsSyn ) -> HappyWrap169
    happyOut169 :: HappyAbsSyn -> HappyWrap169
    happyOut169 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap169
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut169 #-}
    newtype HappyWrap170 = HappyWrap170 (Pragma)
    happyIn170 :: (Pragma) -> (HappyAbsSyn )
    happyIn170 :: Pragma -> HappyAbsSyn
    happyIn170 Pragma
    x = HappyWrap170 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap170
    HappyWrap170 Pragma
    x)
    {-# INLINE happyIn170 #-}
    happyOut170 :: (HappyAbsSyn ) -> HappyWrap170
    happyOut170 :: HappyAbsSyn -> HappyWrap170
    happyOut170 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap170
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut170 #-}
    newtype HappyWrap171 = HappyWrap171 (Pragma)
    happyIn171 :: (Pragma) -> (HappyAbsSyn )
    happyIn171 :: Pragma -> HappyAbsSyn
    happyIn171 Pragma
    x = HappyWrap171 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap171
    HappyWrap171 Pragma
    x)
    {-# INLINE happyIn171 #-}
    happyOut171 :: (HappyAbsSyn ) -> HappyWrap171
    happyOut171 :: HappyAbsSyn -> HappyWrap171
    happyOut171 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap171
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut171 #-}
    newtype HappyWrap172 = HappyWrap172 (Pragma)
    happyIn172 :: (Pragma) -> (HappyAbsSyn )
    happyIn172 :: Pragma -> HappyAbsSyn
    happyIn172 Pragma
    x = HappyWrap172 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Pragma -> HappyWrap172
    HappyWrap172 Pragma
    x)
    {-# INLINE happyIn172 #-}
    happyOut172 :: (HappyAbsSyn ) -> HappyWrap172
    happyOut172 :: HappyAbsSyn -> HappyWrap172
    happyOut172 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap172
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut172 #-}
    newtype HappyWrap173 = HappyWrap173 ([(Range, Occurrence)])
    happyIn173 :: ([(Range, Occurrence)]) -> (HappyAbsSyn )
    happyIn173 :: [(Range, Occurrence)] -> HappyAbsSyn
    happyIn173 [(Range, Occurrence)]
    x = HappyWrap173 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([(Range, Occurrence)] -> HappyWrap173
    HappyWrap173 [(Range, Occurrence)]
    x)
    {-# INLINE happyIn173 #-}
    happyOut173 :: (HappyAbsSyn ) -> HappyWrap173
    happyOut173 :: HappyAbsSyn -> HappyWrap173
    happyOut173 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap173
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut173 #-}
    newtype HappyWrap174 = HappyWrap174 ((Range, Occurrence))
    happyIn174 :: ((Range, Occurrence)) -> (HappyAbsSyn )
    happyIn174 :: (Range, Occurrence) -> HappyAbsSyn
    happyIn174 (Range, Occurrence)
    x = HappyWrap174 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((Range, Occurrence) -> HappyWrap174
    HappyWrap174 (Range, Occurrence)
    x)
    {-# INLINE happyIn174 #-}
    happyOut174 :: (HappyAbsSyn ) -> HappyWrap174
    happyOut174 :: HappyAbsSyn -> HappyWrap174
    happyOut174 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap174
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut174 #-}
    newtype HappyWrap175 = HappyWrap175 ([TypeSignature])
    happyIn175 :: ([TypeSignature]) -> (HappyAbsSyn )
    happyIn175 :: [Declaration] -> HappyAbsSyn
    happyIn175 [Declaration]
    x = HappyWrap175 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Declaration] -> HappyWrap175
    HappyWrap175 [Declaration]
    x)
    {-# INLINE happyIn175 #-}
    happyOut175 :: (HappyAbsSyn ) -> HappyWrap175
    happyOut175 :: HappyAbsSyn -> HappyWrap175
    happyOut175 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap175
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut175 #-}
    newtype HappyWrap176 = HappyWrap176 (List1 TypeSignature)
    happyIn176 :: (List1 TypeSignature) -> (HappyAbsSyn )
    happyIn176 :: List1 Declaration -> HappyAbsSyn
    happyIn176 List1 Declaration
    x = HappyWrap176 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap176
    HappyWrap176 List1 Declaration
    x)
    {-# INLINE happyIn176 #-}
    happyOut176 :: (HappyAbsSyn ) -> HappyWrap176
    happyOut176 :: HappyAbsSyn -> HappyWrap176
    happyOut176 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap176
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut176 #-}
    newtype HappyWrap177 = HappyWrap177 (List1 TypeSignature)
    happyIn177 :: (List1 TypeSignature) -> (HappyAbsSyn )
    happyIn177 :: List1 Declaration -> HappyAbsSyn
    happyIn177 List1 Declaration
    x = HappyWrap177 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap177
    HappyWrap177 List1 Declaration
    x)
    {-# INLINE happyIn177 #-}
    happyOut177 :: (HappyAbsSyn ) -> HappyWrap177
    happyOut177 :: HappyAbsSyn -> HappyWrap177
    happyOut177 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap177
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut177 #-}
    newtype HappyWrap178 = HappyWrap178 (List1 (Arg TypeSignature))
    happyIn178 :: (List1 (Arg TypeSignature)) -> (HappyAbsSyn )
    happyIn178 :: List1 (Arg Declaration) -> HappyAbsSyn
    happyIn178 List1 (Arg Declaration)
    x = HappyWrap178 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Arg Declaration) -> HappyWrap178
    HappyWrap178 List1 (Arg Declaration)
    x)
    {-# INLINE happyIn178 #-}
    happyOut178 :: (HappyAbsSyn ) -> HappyWrap178
    happyOut178 :: HappyAbsSyn -> HappyWrap178
    happyOut178 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap178
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut178 #-}
    newtype HappyWrap179 = HappyWrap179 (List1 (Arg TypeSignature))
    happyIn179 :: (List1 (Arg TypeSignature)) -> (HappyAbsSyn )
    happyIn179 :: List1 (Arg Declaration) -> HappyAbsSyn
    happyIn179 List1 (Arg Declaration)
    x = HappyWrap179 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 (Arg Declaration) -> HappyWrap179
    HappyWrap179 List1 (Arg Declaration)
    x)
    {-# INLINE happyIn179 #-}
    happyOut179 :: (HappyAbsSyn ) -> HappyWrap179
    happyOut179 :: HappyAbsSyn -> HappyWrap179
    happyOut179 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap179
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut179 #-}
    newtype HappyWrap180 = HappyWrap180 ([Arg TypeSignature])
    happyIn180 :: ([Arg TypeSignature]) -> (HappyAbsSyn )
    happyIn180 :: [Arg Declaration] -> HappyAbsSyn
    happyIn180 [Arg Declaration]
    x = HappyWrap180 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Arg Declaration] -> HappyWrap180
    HappyWrap180 [Arg Declaration]
    x)
    {-# INLINE happyIn180 #-}
    happyOut180 :: (HappyAbsSyn ) -> HappyWrap180
    happyOut180 :: HappyAbsSyn -> HappyWrap180
    happyOut180 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap180
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut180 #-}
    newtype HappyWrap181 = HappyWrap181 ([Arg TypeSignature])
    happyIn181 :: ([Arg TypeSignature]) -> (HappyAbsSyn )
    happyIn181 :: [Arg Declaration] -> HappyAbsSyn
    happyIn181 [Arg Declaration]
    x = HappyWrap181 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Arg Declaration] -> HappyWrap181
    HappyWrap181 [Arg Declaration]
    x)
    {-# INLINE happyIn181 #-}
    happyOut181 :: (HappyAbsSyn ) -> HappyWrap181
    happyOut181 :: HappyAbsSyn -> HappyWrap181
    happyOut181 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap181
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut181 #-}
    newtype HappyWrap182 = HappyWrap182 ((RecordDirectives, [Declaration]))
    happyIn182 :: ((RecordDirectives, [Declaration])) -> (HappyAbsSyn )
    happyIn182 :: (RecordDirectives, [Declaration]) -> HappyAbsSyn
    happyIn182 (RecordDirectives, [Declaration])
    x = HappyWrap182 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ((RecordDirectives, [Declaration]) -> HappyWrap182
    HappyWrap182 (RecordDirectives, [Declaration])
    x)
    {-# INLINE happyIn182 #-}
    happyOut182 :: (HappyAbsSyn ) -> HappyWrap182
    happyOut182 :: HappyAbsSyn -> HappyWrap182
    happyOut182 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap182
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut182 #-}
    newtype HappyWrap183 = HappyWrap183 ([RecordDirective])
    happyIn183 :: ([RecordDirective]) -> (HappyAbsSyn )
    happyIn183 :: [RecordDirective] -> HappyAbsSyn
    happyIn183 [RecordDirective]
    x = HappyWrap183 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([RecordDirective] -> HappyWrap183
    HappyWrap183 [RecordDirective]
    x)
    {-# INLINE happyIn183 #-}
    happyOut183 :: (HappyAbsSyn ) -> HappyWrap183
    happyOut183 :: HappyAbsSyn -> HappyWrap183
    happyOut183 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap183
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut183 #-}
    newtype HappyWrap184 = HappyWrap184 (RecordDirective)
    happyIn184 :: (RecordDirective) -> (HappyAbsSyn )
    happyIn184 :: RecordDirective -> HappyAbsSyn
    happyIn184 RecordDirective
    x = HappyWrap184 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (RecordDirective -> HappyWrap184
    HappyWrap184 RecordDirective
    x)
    {-# INLINE happyIn184 #-}
    happyOut184 :: (HappyAbsSyn ) -> HappyWrap184
    happyOut184 :: HappyAbsSyn -> HappyWrap184
    happyOut184 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap184
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut184 #-}
    newtype HappyWrap185 = HappyWrap185 (Ranged HasEta0)
    happyIn185 :: (Ranged HasEta0) -> (HappyAbsSyn )
    happyIn185 :: Ranged HasEta0 -> HappyAbsSyn
    happyIn185 Ranged HasEta0
    x = HappyWrap185 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Ranged HasEta0 -> HappyWrap185
    HappyWrap185 Ranged HasEta0
    x)
    {-# INLINE happyIn185 #-}
    happyOut185 :: (HappyAbsSyn ) -> HappyWrap185
    happyOut185 :: HappyAbsSyn -> HappyWrap185
    happyOut185 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap185
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut185 #-}
    newtype HappyWrap186 = HappyWrap186 (Range)
    happyIn186 :: (Range) -> (HappyAbsSyn )
    happyIn186 :: Range -> HappyAbsSyn
    happyIn186 Range
    x = HappyWrap186 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Range -> HappyWrap186
    HappyWrap186 Range
    x)
    {-# INLINE happyIn186 #-}
    happyOut186 :: (HappyAbsSyn ) -> HappyWrap186
    happyOut186 :: HappyAbsSyn -> HappyWrap186
    happyOut186 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap186
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut186 #-}
    newtype HappyWrap187 = HappyWrap187 (Ranged Induction)
    happyIn187 :: (Ranged Induction) -> (HappyAbsSyn )
    happyIn187 :: Ranged Induction -> HappyAbsSyn
    happyIn187 Ranged Induction
    x = HappyWrap187 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (Ranged Induction -> HappyWrap187
    HappyWrap187 Ranged Induction
    x)
    {-# INLINE happyIn187 #-}
    happyOut187 :: (HappyAbsSyn ) -> HappyWrap187
    happyOut187 :: HappyAbsSyn -> HappyWrap187
    happyOut187 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap187
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut187 #-}
    newtype HappyWrap188 = HappyWrap188 (List1 Declaration)
    happyIn188 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn188 :: List1 Declaration -> HappyAbsSyn
    happyIn188 List1 Declaration
    x = HappyWrap188 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap188
    HappyWrap188 List1 Declaration
    x)
    {-# INLINE happyIn188 #-}
    happyOut188 :: (HappyAbsSyn ) -> HappyWrap188
    happyOut188 :: HappyAbsSyn -> HappyWrap188
    happyOut188 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap188
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut188 #-}
    newtype HappyWrap189 = HappyWrap189 ([Declaration])
    happyIn189 :: ([Declaration]) -> (HappyAbsSyn )
    happyIn189 :: [Declaration] -> HappyAbsSyn
    happyIn189 [Declaration]
    x = HappyWrap189 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Declaration] -> HappyWrap189
    HappyWrap189 [Declaration]
    x)
    {-# INLINE happyIn189 #-}
    happyOut189 :: (HappyAbsSyn ) -> HappyWrap189
    happyOut189 :: HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap189
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut189 #-}
    newtype HappyWrap190 = HappyWrap190 (List1 Declaration)
    happyIn190 :: (List1 Declaration) -> (HappyAbsSyn )
    happyIn190 :: List1 Declaration -> HappyAbsSyn
    happyIn190 List1 Declaration
    x = HappyWrap190 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# (List1 Declaration -> HappyWrap190
    HappyWrap190 List1 Declaration
    x)
    {-# INLINE happyIn190 #-}
    happyOut190 :: (HappyAbsSyn ) -> HappyWrap190
    happyOut190 :: HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap190
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut190 #-}
    newtype HappyWrap191 = HappyWrap191 ([Declaration])
    happyIn191 :: ([Declaration]) -> (HappyAbsSyn )
    happyIn191 :: [Declaration] -> HappyAbsSyn
    happyIn191 [Declaration]
    x = HappyWrap191 -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# ([Declaration] -> HappyWrap191
    HappyWrap191 [Declaration]
    x)
    {-# INLINE happyIn191 #-}
    happyOut191 :: (HappyAbsSyn ) -> HappyWrap191
    happyOut191 :: HappyAbsSyn -> HappyWrap191
    happyOut191 HappyAbsSyn
    x = HappyAbsSyn -> HappyWrap191
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOut191 #-}
    happyInTok :: (Token) -> (HappyAbsSyn )
    happyInTok :: Token -> HappyAbsSyn
    happyInTok Token
    x = Token -> HappyAbsSyn
    Happy_GHC_Exts.unsafeCoerce# Token
    x
    {-# INLINE happyInTok #-}
    happyOutTok :: (HappyAbsSyn ) -> (Token)
    happyOutTok :: HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    x = HappyAbsSyn -> Token
    Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
    x
    {-# INLINE happyOutTok #-}

    happyExpList :: HappyAddr
    happyExpList :: HappyAddr
    happyExpList = Addr# -> HappyAddr
    HappyA# Addr#
    "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x80\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\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x2a\x0c\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa9\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x20\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x2a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x8c\x28\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x08\x8e\x42\x00\x00\x00\x8e\xed\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\xea\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x36\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6e\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x3e\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0e\xef\xfb\xce\x4e\x00\x00\x00\x8e\xad\x16\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x08\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xe0\x20\x00\x00\x00\xe0\x18\x2a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xff\xff\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x8c\x28\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x82\xe0\x28\x04\x00\x00\xe0\xd8\x6e\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x3e\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\xa3\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xed\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\xea\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x36\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6e\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x3e\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\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\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\x80\xe8\xf0\xbe\xef\xec\x04\x00\x00\xe0\xd8\x6a\xa1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x82\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x82\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\xa1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x82\xe0\x28\x04\x00\x00\xe0\xd8\x6e\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x3e\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x40\x00\x82\xe0\x28\x04\x00\x00\xe0\xd8\x6e\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x3e\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\xa3\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x02\x00\x00\x00\x8e\xa1\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xe8\xf0\xbe\xef\xec\x04\x00\x00\xe0\xd8\x6a\xa9\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x20\x14\x08\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x0e\xef\xfb\xce\x4e\x00\x00\x00\x8e\xad\x16\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x08\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x08\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x80\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x42\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x11\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\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\xea\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x20\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\xa1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x11\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\xa1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\xa1\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xa5\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\x58\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x11\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x20\x00\x00\x00\xe0\x18\x6a\x81\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x11\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x20\x00\x8e\x42\x00\x00\x00\x8e\xad\x16\x58\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\xfe\xf8\xfe\xef\xec\x04\x00\x00\xe0\xd8\x6a\xa1\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x08\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x10\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x10\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x10\x00\x80\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x28\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x00\x00\x11\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x00\x02\xe0\x28\x04\x00\x00\xe0\xd8\xea\x83\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x14\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x00\x40\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xc8\x0e\xef\xfb\xce\x4e\x00\x00\x00\x8e\xad\x96\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x8f\xef\xff\xce\x4e\x00\x00\x00\x8e\xad\x16\x5a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#

    {-# NOINLINE happyExpListPerState #-}
    happyExpListPerState :: Int -> [b]
    happyExpListPerState Int
    st =
        [b]
    token_strs_expected
      where token_strs :: [b]
    token_strs = [b
    "error",b
    "%dummy",b
    "%start_tokensParser",b
    "%start_exprParser",b
    "%start_exprWhereParser",b
    "%start_moduleParser",b
    "%start_moduleNameParser",b
    "%start_funclauseParser",b
    "%start_holeContentParser",b
    "Tokens",b
    "TokensR",b
    "Token",b
    "File",b
    "maybe_vclose",b
    "close",b
    "semi",b
    "beginImpDir",b
    "Float",b
    "Id",b
    "SpaceIds",b
    "DoubleCloseBrace",b
    "MaybeDottedId",b
    "MaybeDottedIds",b
    "ArgIds",b
    "ModalArgIds",b
    "Attribute",b
    "Attributes",b
    "Attributes1",b
    "QId",b
    "ModuleName",b
    "BId",b
    "SpaceBIds",b
    "CommaBIds",b
    "CommaBIdAndAbsurds",b
    "BIdsWithHiding",b
    "PragmaStrings",b
    "Strings",b
    "ForeignCode",b
    "PragmaName",b
    "PragmaQName",b
    "PragmaQNames",b
    "Expr",b
    "Expr1",b
    "WithExprs",b
    "UnnamedWithExprs",b
    "Application",b
    "Expr2",b
    "LetBody",b
    "ExtendedOrAbsurdLam",b
    "Application3",b
    "Application3PossiblyEmpty",b
    "Expr3Curly",b
    "Expr3NoCurly",b
    "Expr4",b
    "ExprOrAttr",b
    "Expr3",b
    "RecordAssignments",b
    "RecordAssignments1",b
    "RecordAssignment",b
    "ModuleAssignment",b
    "FieldAssignments",b
    "FieldAssignments1",b
    "FieldAssignment",b
    "TeleArrow",b
    "Telescope1",b
    "TypedBindings",b
    "TypedBinding",b
    "TBind",b
    "ModalTBind",b
    "TBindWithHiding",b
    "ModalTBindWithHiding",b
    "LamBindings",b
    "AbsurdLamBindings",b
    "LamBinds",b
    "LamBindsAbsurd",b
    "NonAbsurdLamClause",b
    "AbsurdLamClause",b
    "LamClause",b
    "LamClauses",b
    "LamWhereClauses",b
    "ForallBindings",b
    "TypedUntypedBindings1",b
    "TypedUntypedBindings",b
    "DomainFreeBindings",b
    "DomainFreeBinding",b
    "MaybeAsPattern",b
    "DomainFreeBindingAbsurd",b
    "DoStmts",b
    "DoStmt",b
    "DoWhere",b
    "ImportDirective",b
    "ImportDirective1",b
    "Using",b
    "Hiding",b
    "RenamingDir",b
    "Renamings",b
    "Renaming",b
    "RenamingTarget",b
    "ImportName_",b
    "ImportName",b
    "CommaImportNames",b
    "CommaImportNames1",b
    "LHS",b
    "WithClause",b
    "HoleContent",b
    "WhereClause",b
    "ExprWhere",b
    "Declaration",b
    "TypeSigs",b
    "ArgTypeSigs",b
    "FunClause",b
    "WHS",b
    "RHS",b
    "Data",b
    "DataSig",b
    "Record",b
    "RecordSig",b
    "Constructor",b
    "RecordConstructorName",b
    "Infix",b
    "Fields",b
    "Generalize",b
    "Mutual",b
    "Abstract",b
    "Private",b
    "Instance",b
    "Macro",b
    "Postulate",b
    "Primitive",b
    "UnquoteDecl",b
    "Syntax",b
    "PatternSyn",b
    "PatternSynArgs",b
    "SimpleIds",b
    "HoleNames",b
    "HoleName",b
    "SimpleTopHole",b
    "SimpleHole",b
    "SimpleId",b
    "MaybeOpen",b
    "Open",b
    "OpenArgs",b
    "ModuleApplication",b
    "ModuleMacro",b
    "Module",b
    "Underscore",b
    "TopLevel",b
    "Pragma",b
    "DeclarationPragma",b
    "OptionsPragma",b
    "BuiltinPragma",b
    "RewritePragma",b
    "ForeignPragma",b
    "CompilePragma",b
    "StaticPragma",b
    "InlinePragma",b
    "NoInlinePragma",b
    "InjectivePragma",b
    "DisplayPragma",b
    "EtaPragma",b
    "NoTerminationCheckPragma",b
    "NonTerminatingPragma",b
    "TerminatingPragma",b
    "NonCoveringPragma",b
    "MeasurePragma",b
    "CatchallPragma",b
    "ImpossiblePragma",b
    "NoPositivityCheckPragma",b
    "NoUniverseCheckPragma",b
    "PolarityPragma",b
    "WarningOnUsagePragma",b
    "WarningOnImportPragma",b
    "Polarities",b
    "Polarity",b
    "TypeSignatures0",b
    "TypeSignatures",b
    "TypeSignatures1",b
    "ArgTypeSignatures",b
    "ArgTypeSignatures1",b
    "ArgTypeSignaturesOrEmpty",b
    "ArgTypeSignatures0",b
    "RecordDeclarations",b
    "RecordDirectives",b
    "RecordDirective",b
    "RecordEta",b
    "RecordPatternMatching",b
    "RecordInduction",b
    "Declarations",b
    "Declarations0",b
    "Declarations1",b
    "TopDeclarations",b
    "'abstract'",b
    "'codata'",b
    "'coinductive'",b
    "'constructor'",b
    "'data'",b
    "'eta-equality'",b
    "'field'",b
    "'forall'",b
    "'variable'",b
    "'hiding'",b
    "'import'",b
    "'in'",b
    "'inductive'",b
    "'infix'",b
    "'infixl'",b
    "'infixr'",b
    "'instance'",b
    "'overlap'",b
    "'let'",b
    "'macro'",b
    "'module'",b
    "'interleaved'",b
    "'mutual'",b
    "'no-eta-equality'",b
    "'open'",b
    "'pattern'",b
    "'postulate'",b
    "'primitive'",b
    "'private'",b
    "'public'",b
    "'quote'",b
    "'quoteTerm'",b
    "'record'",b
    "'renaming'",b
    "'rewrite'",b
    "'syntax'",b
    "'tactic'",b
    "'to'",b
    "'unquote'",b
    "'unquoteDecl'",b
    "'unquoteDef'",b
    "'using'",b
    "'where'",b
    "'do'",b
    "'with'",b
    "'BUILTIN'",b
    "'CATCHALL'",b
    "'DISPLAY'",b
    "'ETA'",b
    "'FOREIGN'",b
    "'COMPILE'",b
    "'IMPOSSIBLE'",b
    "'INJECTIVE'",b
    "'INLINE'",b
    "'NOINLINE'",b
    "'MEASURE'",b
    "'NO_TERMINATION_CHECK'",b
    "'NO_POSITIVITY_CHECK'",b
    "'NO_UNIVERSE_CHECK'",b
    "'NON_TERMINATING'",b
    "'NON_COVERING'",b
    "'OPTIONS'",b
    "'POLARITY'",b
    "'WARNING_ON_USAGE'",b
    "'WARNING_ON_IMPORT'",b
    "'REWRITE'",b
    "'STATIC'",b
    "'TERMINATING'",b
    "tex",b
    "comment",b
    "'...'",b
    "'..'",b
    "'.'",b
    "';'",b
    "':'",b
    "'='",b
    "'_'",b
    "'?'",b
    "'->'",b
    "'\\\\'",b
    "'@'",b
    "'|'",b
    "'('",b
    "')'",b
    "'(|'",b
    "'|)'",b
    "'(|)'",b
    "'{{'",b
    "'}}'",b
    "'{'",b
    "'}'",b
    "vopen",b
    "vclose",b
    "vsemi",b
    "'{-#'",b
    "'#-}'",b
    "id",b
    "q_id",b
    "string",b
    "literal",b
    "%eof"]
            bit_start :: Int
    bit_start = Int
    st Int -> Int -> Int
    forall a. Num a => a -> a -> a
    Prelude.* Int
    292
            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
    292
            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
    291]
            token_strs_expected :: [b]
    token_strs_expected = ((Bool, Int) -> [b]) -> [(Bool, Int)] -> [b]
    forall (t :: * -> *) a b. Foldable t => (a -> [b]) -> t a -> [b]
    Prelude.concatMap (Bool, Int) -> [b]
    f [(Bool, Int)]
    bits_indexed
            f :: (Bool, Int) -> [b]
    f (Bool
    Prelude.False, Int
    _) = []
            f (Bool
    Prelude.True, Int
    nr) = [[b]
    token_strs [b] -> Int -> b
    forall a. [a] -> Int -> a
    Prelude.!! Int
    nr]

    happyActOffsets :: HappyAddr
    happyActOffsets :: HappyAddr
    happyActOffsets = Addr# -> HappyAddr
    HappyA# Addr#
    "\x00\x00\x7d\x0c\x7d\x0c\xbc\xff\xeb\x00\x9b\x0c\x53\x07\x00\x00\xab\x05\x6b\x00\x00\x00\x40\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x00\x00\x75\x0a\xe5\x0c\x14\x00\x00\x00\xe0\x04\x00\x00\xe2\xff\xcd\x04\x90\x00\x00\x00\x00\x00\x07\x15\x47\x12\x35\x14\x00\x00\xe9\x00\x35\x14\x00\x00\x53\x14\x71\x14\x00\x00\x00\x00\xe6\x07\x23\x01\x9d\x07\x47\x12\x00\x00\xbb\x07\x93\x0a\x00\x00\x00\x00\x00\x00\x03\x0d\x00\x00\xfe\x00\x82\x00\x15\x01\x8f\x14\x8f\x14\xdd\x0a\x05\x08\xfb\x0a\x00\x00\x00\x00\x15\x01\x15\x01\x46\x05\xb4\x00\x15\x01\x15\x01\x15\x01\x00\x00\x93\x00\x58\x01\xf4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x81\x01\x00\x00\x00\x00\x00\x00\x5b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8f\x01\x1a\x01\xac\x01\xac\x01\xc9\x01\xc9\x01\xc9\x01\xdd\x01\xdd\x01\x16\x01\x40\x02\x1e\x02\x23\x00\x3c\x02\x50\x02\x56\x02\x6f\x02\x07\x15\x89\x02\xc1\xff\x89\x02\x6c\x1c\x00\x00\x55\x02\x92\x02\x00\x00\x00\x00\x56\x01\x00\x00\xbb\x02\xd1\x02\x00\x00\x00\x00\x00\x00\x8d\x01\x47\x12\x8f\x14\x47\x12\x00\x00\x82\x00\x4d\x0d\xd0\x02\xe5\x02\x00\x00\xbe\xff\xd2\x02\xef\x02\x0d\x03\x56\x01\x56\x01\x05\x03\x6b\x0d\x13\x03\xf5\x00\x11\x03\x5e\x03\x73\x03\x28\x03\xaa\x01\x00\x00\xb5\x0d\x00\x00\x4e\x08\x3a\x03\xf1\x05\xb5\x0d\x00\x00\x7a\x03\x00\x00\xda\x07\x5a\x06\x71\x03\x17\x04\x60\x04\x00\x00\x23\x08\x6d\x08\x8b\x08\x45\x0b\xd5\x08\x63\x0b\xad\x0b\xd5\x08\xcb\x0b\x63\x01\x27\x00\x8f\x14\xb5\x0d\x00\x00\x63\x01\x87\x03\xaa\x01\xd9\x03\x35\x07\x42\x08\xb5\x0d\x9b\x03\x42\x08\x00\x00\x15\x0c\xd3\x0d\xd3\x0d\x00\x00\xac\x03\xad\x03\x15\x0c\xd3\x0d\xd3\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x0e\xaf\x03\x8f\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x0e\x00\x00\x3b\x0e\x00\x00\x47\x12\x85\x0e\x00\x00\x47\x12\x90\x12\x90\x12\xae\x12\xf7\x12\xf7\x12\xa3\x0e\x9d\x03\xa3\x0e\x31\x02\xa3\x0e\xbc\x03\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\xed\x0e\xce\x03\x8f\x14\xb8\x03\x00\x00\xcc\x03\x00\x00\x00\x00\xf1\x03\x00\x00\xf2\x03\x03\x00\x22\x01\xf4\x03\x8f\x14\x00\x00\xdf\x03\x56\x01\x13\x04\xf0\x03\x56\x01\x1a\x04\xfb\x00\x1c\x04\x0b\x0f\x00\x00\x89\x01\xbd\x01\x15\x13\x2f\x04\x4c\x04\x33\x04\x36\x04\x71\x04\x5e\x13\x5e\x13\x71\x04\x5e\x13\x5e\x13\x54\x0f\xaf\x13\x4e\x04\xaf\x13\xf3\x08\x3d\x09\x33\x0c\x00\x00\x00\x00\x7a\x04\x00\x00\x8f\x14\xaf\x13\x00\x00\xaf\x13\x72\x04\x5b\x09\xa5\x09\xc3\x09\xad\x14\x94\x00\x00\x00\x00\x00\x00\x00\x72\x0f\x86\x04\x00\x00\x00\x00\x00\x00\x21\x01\x00\x00\x00\x00\x72\x0f\xa3\x01\x88\x04\xde\x01\x00\x00\x63\x01\x63\x01\xb4\x00\x72\x0f\x72\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x72\x0f\xeb\xff\x75\x04\x78\x04\x7c\x04\x87\x04\x93\x04\x99\x04\xb8\x04\xb8\x04\xb8\x04\xba\x04\xa2\x04\xbf\x04\xc3\x04\xca\x04\xd6\x04\xda\x04\xdc\x04\xdf\x04\x74\x04\xf0\x04\xf5\x04\xfe\x04\x03\x05\x91\x04\x20\x05\x72\x0f\x00\x00\xff\x14\x00\x00\x00\x00\xe4\x04\x00\x00\xd7\x03\x00\x00\x19\x1c\x10\x05\x00\x00\x17\x05\x25\x1c\x25\x1c\x00\x00\x00\x00\x00\x00\xc1\x01\x00\x00\xc1\x01\xc1\x01\x00\x00\x00\x00\x25\x1c\x4f\x05\x00\x00\x00\x00\x00\x00\xd0\x01\x35\x07\x00\x00\xd3\x06\x00\x00\x56\x05\x58\x05\x29\x05\x29\x05\x00\x00\xcb\x14\x29\x05\x25\x1c\x04\x00\x25\x1c\xc1\x01\x00\x00\x00\x00\x00\x00\x5c\x05\x88\x00\x00\x00\x25\x1c\x00\x00\x38\x1c\x49\x05\x2e\x02\xc8\x02\xbc\x0f\xda\x0f\xda\x0f\x47\x05\xe1\x03\x00\x00\x8b\x01\x3c\x05\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x00\xda\x0f\xc5\x02\x00\x00\x24\x10\x24\x10\x00\x00\x00\x00\x3a\x05\x00\x00\x00\x00\x3f\x05\x39\x05\x44\x05\x42\x05\x00\x00\x00\x00\xb1\x05\xb6\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x05\xd1\x05\xd5\x05\xdf\x05\xe3\x05\xe7\x05\xb2\xff\xf5\x05\x05\x06\x00\x00\x07\x06\x07\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x00\x24\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x10\x00\x00\x00\x00\xcb\x14\x57\x01\x0d\x0a\x41\x02\x00\x00\x00\x00\x00\x00\x42\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\x8b\x01\xa7\x01\x31\x02\x00\x00\xae\x01\x31\x02\x00\x00\x00\x00\x5a\x05\x42\x10\x00\x00\x00\x00\x42\x10\x00\x00\x8b\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x19\x06\x8b\x10\xa9\x10\x00\x00\x00\x00\x10\x06\x21\x06\x22\x06\x00\x00\x32\x06\xd0\x01\x00\x00\x57\x01\xf3\x10\x00\x00\x00\x00\x00\x00\x2f\x06\x3b\x06\x00\x00\x4b\x02\x00\x00\x38\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x57\x01\x00\x00\x00\x00\x00\x00\x41\x06\x00\x00\x44\x06\x48\x06\x00\x00\x3d\x06\x00\x00\x11\x11\x00\x00\xcb\x14\x00\x00\x00\x00\x00\x00\x5a\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x11\x8b\x01\x00\x00\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x06\x45\x06\x4a\x06\x00\x00\x4b\x06\xb2\xff\xb2\xff\x3e\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xde\xff\x4c\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x06\x54\x06\x57\x00\x57\x00\x00\x00\x64\x01\x52\x06\xc1\x11\x5d\x06\x00\x00\x67\x02\x00\x00\x67\x02\x00\x00\x92\x01\x00\x00\x00\x00\x4d\x02\x02\x03\xa2\x00\xa2\x00\xc1\x11\xdf\x11\x55\x06\xdf\x11\x56\x01\xdf\x11\x5b\x06\x5e\x13\x5e\x13\x5e\x13\x5e\x13\x29\x12\x00\x00\x69\x06\x60\x06\xc2\x02\x60\x06\x00\x00\x00\x00\x60\x06\x29\x12\x00\x00\x00\x00\x57\x01\x00\x00\x00\x00\x00\x00\x8b\x06\x00\x00\x00\x00\xe9\x14\x57\x01\x00\x00\xc2\x02\x00\x00\x5c\x06\x56\x01\x62\x06\x56\x01\x56\x01\x65\x06\x00\x00\xa2\x00\x68\x06\x6b\x06\x6b\x06\x56\x01\x00\x00\x6b\x06\x6b\x06\x00\x00\x6b\x06\x6b\x06\x00\x00\x00\x00\x00\x00\x8b\x01\x29\x12\x9c\x06\x00\x00\x0f\x06\x6f\x06\x82\x06\xc2\x01\x76\x06\x8a\x06\xd9\x01\x7c\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77\x06\x00\x00\x7f\x06\x00\x00\x00\x00\x00\x00\x00\x00\x57\x01\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x01\x00\x00\xf6\xff\xef\xff\xf6\xff\x00\x00\x00\x00\x96\x06\x97\x06\x00\x00\x95\x06\x95\x06\xa5\x06\xb4\x06\xe0\x06\x00\x00\x00\x00\xb6\x06\x00\x00\x00\x00\xb2\xff\x00\x00\x00\x00\xb9\x06\xbd\x06\x57\x00\x00\x00\xbf\x06\xc1\x06\x57\x00\x00\x00\x00\x00\x8b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\xaa\x06\x00\x00\x00\x00\xb7\x06\x00\x00\xb1\x06\xb8\x06\x00\x00\x00\x00\xe0\x02\xbb\x06\x56\x01\xbe\x06\x56\x01\x92\x01\x92\x01\x00\x00\x57\x01\x00\x00\x00\x00\x2b\x0a\xc2\x06\x00\x00\x56\x01\x00\x00\x00\x00\x00\x00\x92\x01\x92\x01\x92\x01\x92\x01\x00\x00\x00\x00\x7f\x04\x00\x00\x00\x00\x00\x00\x71\x06\xc7\x06\x00\x00\xcb\x06\xcb\x06\xc6\x06\xcd\x06\xcd\x06\x00\x00\x00\x00\xce\x06\x6c\x00\x02\x07\x00\x00\x00\x00\x00\x00\x00\x00\xf6\xff\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x06\xcc\x06\xcc\x06\x00\x00\xc9\x06\xdd\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\xd2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\xd2\x06\xd2\x06\xd2\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#

    happyGotoOffsets :: HappyAddr
    happyGotoOffsets :: HappyAddr
    happyGotoOffsets = Addr# -> HappyAddr
    HappyA# Addr#
    "\x3e\x03\x32\x19\xa7\x13\x15\x07\xe2\x02\x2c\x04\xc7\x13\x37\x07\x39\x07\x00\x00\x00\x00\xce\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x11\x52\x19\x00\x00\x00\x00\x7d\x03\x00\x00\x00\x00\xa1\x02\x87\x06\x00\x00\x00\x00\x80\x02\x88\x0c\xa6\x02\x00\x00\x00\x00\x40\x03\x00\x00\xcf\x00\x95\x02\x00\x00\x00\x00\x34\x15\x15\x00\x90\x02\xf0\x0c\x00\x00\xe4\x15\x10\x16\x00\x00\x00\x00\x00\x00\x4f\x04\x00\x00\x00\x00\xd9\x06\x00\x00\xa7\x03\x3b\x04\xd2\x18\xb2\x18\xf2\x18\x00\x00\x00\x00\x00\x00\x00\x00\x96\x00\xe1\x06\x00\x00\x00\x00\x00\x00\x00\x00\xf9\xff\x44\x03\x3a\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x49\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x72\x03\x4e\x07\x98\x06\xae\x06\x57\x07\x58\x07\x5a\x07\x96\x03\xa9\x03\x3f\x00\x00\x00\xab\x03\x2e\x03\x5b\x07\xf7\x03\xc3\x06\x03\x04\x0b\x03\x5c\x07\x22\x04\x57\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x61\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x06\x58\x0d\x9b\x12\xc0\x0d\x00\x00\x08\x07\xe0\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x65\x07\x6a\x07\x00\x00\xb0\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcf\x06\x2e\x03\x00\x00\x12\x19\x00\x00\xae\x03\x25\x07\x12\x03\x72\x19\x00\x00\x00\x00\x00\x00\xd1\x04\x00\x00\x00\x00\xd8\x00\xdd\x00\x00\x00\x2a\x03\x62\x16\xa1\x03\x67\x15\x6f\x17\xcc\x17\x92\x15\xa1\x17\xf7\x17\x1b\x07\x00\x00\xa6\x0a\xf1\x13\x00\x00\x26\x07\x00\x00\x8e\x04\x68\x07\x6d\x02\x3b\x03\x92\x19\x00\x00\x6c\x04\x00\x00\x2a\x03\xcd\x16\xec\x16\x00\x00\x00\x00\x00\x00\xea\x03\x0b\x17\x2a\x17\x00\x00\x00\x00\x00\x00\x00\x00\xb2\x19\x00\x00\x0e\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd2\x19\x00\x00\x18\x0a\x00\x00\x32\x12\x26\x0e\x00\x00\xa8\x15\x3b\x14\x14\x18\xbe\x15\x1f\x18\x3c\x18\x80\x0a\x00\x00\xe8\x0a\x85\x07\x50\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8d\x07\x00\x00\xf2\x19\x00\x00\x69\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x00\x00\x00\x43\x07\x90\x07\x92\x07\x95\x07\x02\x13\x00\x00\x00\x00\x97\x07\x00\x00\x00\x00\x9c\x07\x00\x00\x00\x00\x00\x00\xec\x01\x00\x00\xa3\x07\xa6\x07\xca\x11\x00\x00\x00\x00\x00\x00\x00\x00\x62\x07\x47\x18\x64\x18\x6c\x07\x6f\x18\x8c\x18\x07\x00\xd9\x04\x00\x00\x37\x05\x09\x04\x88\x16\x49\x17\x00\x00\x00\x00\x00\x00\x00\x00\x76\x0b\x3b\x05\x00\x00\x66\x06\x00\x00\x09\x04\xae\x16\xc7\x03\xf3\x01\x8c\x07\x00\x00\x00\x00\x00\x00\x12\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x00\x00\x32\x1a\x45\x02\x00\x00\x52\x07\x00\x00\x5d\x07\x67\x07\x5f\x07\x52\x1a\x72\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x92\x1a\x00\x00\x00\x00\x00\x00\xa2\x07\x00\x00\x00\x00\xa0\x07\xa8\x07\xa9\x07\xaa\x07\xad\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x07\xaf\x07\xb2\x07\x00\x00\xfc\x00\xb4\x07\x00\x00\xb2\x04\x00\x00\x00\x00\xb2\x1a\x50\x07\x18\x06\x00\x00\x00\x00\xfc\xff\x00\x00\xf7\xff\x00\x00\xa4\x01\xc6\x07\x00\x00\x12\x04\xbc\x06\xc4\x06\x00\x00\x00\x00\x00\x00\x46\x02\x00\x00\x30\x03\x32\x03\x00\x00\x00\x00\xdc\x06\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x03\x07\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x04\x35\x04\x00\x00\xfa\x01\x54\x04\x3e\x07\x00\x00\x66\x07\x37\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x07\x00\x00\xc9\x00\x00\x00\x09\x01\x32\x01\x8e\x0e\x48\x09\xb8\x0b\x00\x00\xb4\x03\x00\x00\xeb\x04\x2c\x07\xc5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x3c\x16\xc2\x03\x00\x00\xd2\x1a\xf2\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbd\x07\x00\x00\x00\x00\x33\x07\x00\x00\x00\x00\xbf\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x07\xc7\x07\x00\x00\xc3\x07\x00\x00\xca\x07\xcb\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8f\x07\x12\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x32\x1b\x00\x00\x00\x00\x01\x02\xff\x01\xb2\x18\xed\x07\x00\x00\x00\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x05\x00\x00\xe1\x07\x00\x00\x00\x00\xef\x07\x00\x00\x00\x00\x00\x00\xac\x00\x00\x00\x00\x00\x3b\x01\x00\x00\x52\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x14\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x06\x00\x00\x5d\x04\x72\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\xa1\x00\x00\x00\x0e\x14\x00\x00\x00\x00\x00\x00\x92\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x01\x0e\x05\x00\x00\xf5\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe9\x07\xea\x07\xf0\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x00\x00\x00\x97\x04\xa1\x04\x00\x00\x00\x00\x6b\x07\xb2\x1b\x00\x00\x00\x00\xf8\xff\x00\x00\x05\x00\x00\x00\x79\x03\x00\x00\x00\x00\x06\x08\x11\x08\xb8\x02\x83\x03\xd2\x1b\xf8\x0e\x00\x00\x20\x0c\x0e\x08\xc7\x0f\x00\x00\x5f\x0f\x2f\x10\x96\x10\xfe\x10\xf2\x1b\x00\x00\x00\x00\x7d\x04\x31\x00\x9f\x04\x00\x00\x00\x00\xb6\x04\x12\x1c\x00\x00\x00\x00\xfb\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x02\xaf\x06\x00\x00\x3d\x00\x00\x00\x00\x00\x13\x08\x00\x00\x15\x08\x16\x08\x00\x00\x00\x00\xa2\x03\x00\x00\x12\x08\x1f\x08\x1e\x08\x00\x00\x40\x05\x6c\x05\x00\x00\x6f\x05\x80\x05\x00\x00\x00\x00\x00\x00\x86\x05\x32\x1c\x00\x00\x00\x00\x30\x01\x00\x00\x00\x00\xb7\x07\x00\x00\x00\x00\xb9\x07\xbc\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x07\x00\x00\x00\x00\x00\x00\x00\x00\x8b\x05\x00\x00\x51\x00\x38\x01\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x08\x2c\x08\x00\x00\x00\x00\x00\x00\x38\x08\x00\x00\x00\x00\x00\x00\x00\x00\x25\x08\x00\x00\x00\x00\x00\x00\x00\x00\x21\x05\x00\x00\x00\x00\x00\x00\xc1\x05\x00\x00\x00\x00\x40\x06\x00\x00\x00\x00\x00\x00\x00\x00\x40\x08\x00\x00\x3d\x08\x00\x00\x00\x00\x95\x05\x00\x00\x47\x08\x9f\x07\x00\x00\x00\x00\x4e\x00\x00\x00\x3e\x08\x00\x00\x46\x08\xb3\x03\xca\x03\x00\x00\x10\x08\x00\x00\x00\x00\xb2\x18\xa1\x05\x00\x00\x49\x08\x00\x00\x00\x00\x00\x00\xd4\x03\xff\x03\x15\x04\x3e\x04\x00\x00\x00\x00\xfc\xff\x00\x00\x00\x00\x00\x00\xd3\x01\x00\x00\x00\x00\xd6\x07\xd8\x07\x00\x00\xe7\x07\xec\x07\x00\x00\x00\x00\x52\x08\x0a\x00\x55\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x66\x08\x67\x08\x6a\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x77\x08\x75\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7a\x08\x00\x00\x00\x00\x00\x00\x78\x08\x79\x08\x7d\x08\x00\x00\x00\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#
    "\xf6\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\xfe\x00\x00\xf8\xff\x69\xff\x6c\xff\x00\x00\x1d\xff\x9e\xfe\x4f\xff\x4e\xff\x48\xff\x47\xff\x44\xff\x00\x00\x1a\xff\x19\xff\x20\xff\x40\xff\x00\x00\x00\x00\x0b\xff\x09\xff\x9d\xfe\x00\x00\x00\x00\x00\x00\x2c\xff\x2b\xff\x00\x00\x00\x00\x00\x00\x2a\xff\x00\x00\x00\x00\x21\xff\x00\x00\x00\x00\x2d\xff\x2e\xff\x00\x00\x00\x00\x47\xfe\x00\x00\x28\xff\x00\x00\x00\x00\x88\xff\x6a\xff\x1c\xff\x00\x00\xa2\xfe\x00\x00\x7a\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x69\xff\x68\xff\x00\x00\x00\x00\x47\xfe\x9c\xfe\x00\x00\x00\x00\x00\x00\x98\xfe\x00\x00\x00\x00\xe6\xfd\x96\xfe\x95\xfe\x94\xfe\x93\xfe\x92\xfe\x81\xfe\x91\xfe\x97\xfe\x90\xfe\x8f\xfe\x8e\xfe\x8d\xfe\x8c\xfe\x8b\xfe\x8a\xfe\x89\xfe\x82\xfe\x84\xfe\x83\xfe\x00\x00\x88\xfe\x87\xfe\x86\xfe\x90\xff\x85\xfe\x39\xfe\x22\xfe\x38\xfe\x37\xfe\x35\xfe\x36\xfe\x34\xfe\x32\xfe\x31\xfe\x33\xfe\x27\xfe\x26\xfe\x2d\xfe\x2e\xfe\x2f\xfe\x2c\xfe\x29\xfe\x28\xfe\x30\xfe\x25\xfe\x24\xfe\x23\xfe\x2b\xfe\x2a\xfe\xe4\xfd\x3a\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1e\xff\x4f\xff\x00\x00\x31\xff\x2f\xff\x00\x00\x85\xff\x00\x00\x00\x00\x27\xff\x25\xff\x24\xff\x77\xfe\x00\x00\x00\x00\x00\x00\x6b\xff\x7a\xfe\x00\x00\x1d\xff\x00\x00\x63\xff\x62\xff\x00\x00\x00\x00\x2d\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\xff\x00\x00\x00\x00\x00\x00\x00\x00\x48\xfe\x6f\xff\x00\x00\x67\xff\x00\x00\xcf\xfe\xea\xfe\x00\x00\x38\xff\x00\x00\xf5\xfe\xf2\xfe\xeb\xfe\x00\x00\x00\x00\x00\x00\x66\xff\x47\xfe\x00\x00\x34\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\xfe\x4a\xff\x36\xff\x00\x00\x3f\xff\x9f\xfe\x00\x00\x18\xff\x3d\xff\x47\xfe\xd7\xfe\x00\x00\x00\x00\xd8\xfe\xd1\xfe\x47\xfe\x00\x00\x00\x00\x0a\xff\x00\x00\x00\x00\x47\xfe\x00\x00\x00\x00\x0c\xff\x52\xff\x46\xff\x35\xff\x00\x00\x00\x00\x00\x00\xf7\xff\xf5\xff\xf4\xff\xf3\xff\xf2\xff\xf1\xff\xef\xff\xee\xff\xed\xff\xcb\xff\xec\xff\xeb\xff\xea\xff\xe9\xff\xe8\xff\xe7\xff\xe6\xff\xe5\xff\xdd\xff\xe4\xff\xe3\xff\xe2\xff\xe1\xff\xe0\xff\xdf\xff\xde\xff\xdc\xff\xdb\xff\xda\xff\xd9\xff\xd8\xff\xd7\xff\xd6\xff\xd5\xff\xd4\xff\xd3\xff\xd2\xff\xd1\xff\xd0\xff\xcf\xff\xce\xff\xcd\xff\xcc\xff\xca\xff\xf0\xff\xc9\xff\xc8\xff\xc7\xff\xc5\xff\xc4\xff\xc3\xff\xc6\xff\xc2\xff\xc1\xff\xc0\xff\xbe\xff\xbf\xff\xbc\xff\xbd\xff\xbb\xff\xba\xff\xb9\xff\xb8\xff\xb7\xff\xb2\xff\xb3\xff\xb6\xff\xb5\xff\xb4\xff\xb1\xff\xb0\xff\xaf\xff\xae\xff\xad\xff\xac\xff\xab\xff\xaa\xff\xa9\xff\xa8\xff\xa7\xff\xa6\xff\xa5\xff\xa4\xff\xa3\xff\xa2\xff\xa1\xff\xa0\xff\x9f\xff\x9e\xff\x9d\xff\x9c\xff\x9b\xff\x9a\xff\x99\xff\x98\xff\x97\xff\x96\xff\x95\xff\x94\xff\x93\xff\x92\xff\x26\xff\x00\x00\x51\xff\x00\x00\x62\xff\x40\xff\x00\x00\x5d\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x63\xff\x00\x00\x00\x00\x00\x00\x5d\xff\xda\xfe\xdb\xfe\x43\xff\xd9\xfe\x00\x00\x42\xff\x00\x00\x69\xff\x43\xfe\x00\x00\x17\xff\x16\xff\x13\xff\x14\xff\x11\xff\xa0\xfe\xbd\xfe\x00\x00\xc1\xfe\x00\x00\x00\x00\xa1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\xfe\x00\x00\x40\xff\xde\xfe\x00\x00\x00\x00\x34\xff\xe8\xfe\x00\x00\xe7\xfe\xe9\xfe\xcf\xfe\x00\x00\x00\x00\xcf\xfe\x00\x00\x00\x00\x34\xff\xf1\xfe\xed\xfe\xf2\xfe\x47\xfe\x00\x00\x00\x00\xf6\xfe\x45\xff\xec\xfe\xce\xfe\x00\x00\xea\xfe\x37\xff\x00\x00\x00\x00\x47\xfe\x00\x00\x34\xff\x43\xfe\x3d\xff\xfc\xfe\x01\xff\x02\xff\x00\x00\x00\x00\x29\xff\xff\xfe\x00\xff\x00\x00\xfd\xfe\xfe\xfe\x00\x00\x00\x00\x00\x00\x77\xfe\x49\xff\x9f\xfe\x9f\xfe\x9c\xfe\x00\x00\x00\x00\x1b\xff\x84\xff\x30\xff\x32\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\xff\x00\x00\x00\x00\x00\x00\x5a\xff\x00\x00\x00\x00\x86\xff\x00\x00\x00\x00\x00\x00\x56\xfe\xd4\xfe\xe9\xfd\x63\xfe\x00\x00\x5f\xfe\xfb\xfd\x60\xfe\xd3\xfe\x00\x00\x66\xfe\x00\x00\xd4\xfe\xd4\xfe\x3b\xfe\x61\xfe\x62\xfe\x00\x00\x89\xff\x00\x00\x00\x00\x67\xfe\x68\xfe\xd4\xfe\x00\x00\x64\xfe\x91\xff\x8f\xff\x00\x00\x47\xfe\x8c\xff\xe7\xfd\x9b\xfe\x00\x00\x00\x00\x00\x00\x00\x00\xe8\xfd\x43\xfe\x00\x00\xd4\xfe\x00\x00\xd4\xfe\x64\xff\x6b\xfe\x6a\xfe\x69\xfe\x00\x00\x00\x00\x65\xfe\xd4\xfe\x59\xfe\xd3\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\xfd\x00\x00\x00\x00\x6e\xff\xea\xfd\x8d\xff\x8e\xff\x00\x00\x11\xff\x00\x00\x5e\xfe\x00\x00\x00\x00\x87\xff\x13\xfe\x00\x00\x54\xff\x53\xff\x00\x00\x5a\xff\x00\x00\x00\x00\x09\xfe\x55\xff\x00\x00\x5c\xff\x12\xfe\x14\xfe\x0d\xfe\x0e\xfe\x15\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\xff\x00\x00\x5c\xff\x10\xfe\x00\x00\x00\x00\x1f\xff\x76\xfe\x75\xfe\x7c\xfe\x78\xfe\x79\xfe\x9c\xfe\x00\x00\x61\xff\x5f\xff\xfa\xfe\x60\xff\x5e\xff\x00\x00\xf8\xfe\xfb\xfe\x43\xfe\xba\xfe\x00\x00\x00\x00\xe8\xfe\xe7\xfe\xe9\xfe\x34\xff\xed\xfe\xec\xfe\xd0\xfe\xef\xfe\xee\xfe\xf0\xfe\xf4\xfe\xf3\xfe\xe4\xfe\xe2\xfe\xe1\xfe\xdc\xfe\x00\x00\x00\x00\x00\x00\xcc\xfe\x00\x00\x00\x00\xcd\xfe\xe3\xfe\x00\x00\x34\xff\x3c\xff\x8b\xff\x34\xff\x33\xff\x00\x00\x08\xff\x06\xff\x07\xff\x05\xff\x03\xff\x04\xff\x4c\xff\x4b\xff\x00\x00\xc0\xfe\x41\xff\xbe\xfe\x00\x00\x00\x00\x00\x00\x10\xff\x0f\xff\x00\x00\x23\xff\xba\xfe\x00\x00\x3e\xff\xeb\xfd\xcb\xfe\x00\x00\x5d\xff\xc7\xfe\x00\x00\xc9\xfe\x63\xff\x50\xff\xc8\xfe\xc6\xfe\xca\xfe\x0d\xff\x12\xff\xba\xfe\xb8\xfe\xb7\xfe\xb6\xfe\x00\x00\xb9\xfe\x00\x00\x00\x00\x15\xff\x00\x00\x22\xff\x34\xff\xbf\xfe\x00\x00\xe6\xfe\xdf\xfe\xe0\xfe\x00\x00\xc4\xfe\xc5\xfe\xc2\xfe\xc3\xfe\x3a\xff\x34\xff\x00\x00\x3b\xff\x21\xff\x45\xfe\x42\xfe\xf7\xfe\xf9\xfe\x7b\xfe\x00\x00\x00\x00\x00\x00\x16\xfe\x00\x00\x58\xff\x58\xff\x5c\xff\x0f\xfe\x18\xfe\x1a\xfe\x19\xfe\x11\xfe\x5b\xff\x21\xfe\x00\x00\x00\x00\x0a\xfe\x59\xff\x1e\xfe\x1b\xfe\x5c\xfe\x5d\xfe\x55\xfe\x54\xfe\x4f\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x49\xfe\x69\xff\x00\x00\x00\x00\x00\x00\x7d\xfe\x6e\xff\xfe\xfd\x6e\xff\x81\xff\x7d\xff\x70\xff\x6d\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd2\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x65\xff\xd6\xfe\x00\x00\x00\x00\xd5\xfe\x6e\xfe\xba\xfe\x9a\xfe\x99\xfe\x46\xfe\x72\xfe\x73\xfe\x3c\xfe\x43\xfe\xba\xfe\x3d\xfe\x00\x00\x5a\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\xfe\x7f\xff\x00\x00\x00\x00\x00\x00\x00\x00\x82\xff\x00\x00\x00\x00\x83\xff\x00\x00\x00\x00\x7e\xff\xfd\xfd\xff\xfd\x00\x00\x00\x00\x6f\xfe\x70\xfe\xf7\xfd\x00\x00\x4c\xfe\x00\x00\x00\x00\x4c\xfe\x00\x00\x5b\xfe\x58\xfe\x0b\xfe\x08\xfe\x0c\xfe\x07\xfe\x00\x00\x57\xff\x00\x00\x1d\xfe\x17\xfe\x1f\xfe\x20\xfe\xba\xfe\x39\xff\xdd\xfe\xe5\xfe\x4d\xff\x00\x00\x0e\xff\xa6\xfe\x8a\xff\xa6\xfe\xbb\xfe\xa8\xfe\xa4\xfe\x00\x00\xa5\xfe\x00\x00\x00\x00\x00\x00\xb0\xfe\x00\x00\x8a\xff\xb2\xfe\x00\x00\xbc\xfe\x44\xfe\x58\xff\x1c\xfe\x57\xfe\x00\x00\x00\x00\x00\x00\x52\xfe\x00\x00\x00\x00\x00\x00\x53\xfe\xf4\xfd\x00\x00\xf5\xfd\xf2\xfd\xf1\xfd\xf3\xfd\x00\x00\xec\xfd\x00\x00\xf0\xfd\xed\xfd\x00\x00\xef\xfd\xee\xfd\x00\x00\x7e\xfe\x01\xfe\x6e\xff\x00\x00\x00\x00\x00\x00\x00\x00\x7b\xff\x79\xff\x80\xff\xba\xfe\x3f\xfe\x40\xfe\x00\x00\x00\x00\x74\xfe\x21\xff\x3e\xfe\x7a\xff\x7c\xff\x75\xff\x77\xff\x71\xff\x73\xff\x00\xfe\x71\xfe\x00\x00\x6d\xfe\xf8\xfd\xfa\xfd\x47\xfe\x00\x00\x4c\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x56\xff\xb5\xfe\x00\x00\x00\x00\x8a\xff\xb3\xfe\xaa\xfe\xa7\xfe\xb4\xfe\x00\x00\xa3\xfe\xb1\xfe\xae\xfe\xaf\xfe\x00\x00\x00\x00\x00\x00\xa9\xfe\x00\x00\x00\x00\x50\xfe\x4b\xfe\x4a\xfe\x51\xfe\xf6\xfd\x00\x00\x00\x00\x74\xff\x72\xff\x78\xff\x76\xff\x41\xfe\x00\x00\xf9\xfd\x4d\xfe\x4e\xfe\x00\x00\x00\x00\x00\x00\xad\xfe\xac\xfe\xab\xfe\x6c\xfe"#

    happyCheck :: HappyAddr
    happyCheck :: HappyAddr
    happyCheck = Addr# -> HappyAddr
    HappyA# Addr#
    "\xff\xff\x05\x00\x09\x00\x00\x00\x15\x00\x09\x00\x0f\x00\x0f\x00\x11\x00\x11\x00\x4c\x00\x15\x00\x10\x00\x4c\x00\x12\x00\x13\x00\x09\x00\x5f\x00\x09\x00\x09\x00\x0f\x00\x63\x00\x11\x00\x59\x00\x5c\x00\x5b\x00\x13\x00\x09\x00\x13\x00\x21\x00\x09\x00\x23\x00\x24\x00\x25\x00\x61\x00\x27\x00\x28\x00\x13\x00\x2a\x00\x2b\x00\x13\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x42\x00\x27\x00\x2b\x00\x29\x00\x2a\x00\x2b\x00\x0c\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x15\x00\x27\x00\x09\x00\x29\x00\x2a\x00\x2b\x00\x60\x00\x2d\x00\x2e\x00\x63\x00\x2d\x00\x54\x00\x13\x00\x14\x00\x09\x00\x65\x00\x09\x00\x42\x00\x43\x00\x44\x00\x09\x00\x46\x00\x63\x00\x4b\x00\x13\x00\x14\x00\x13\x00\x14\x00\x42\x00\x43\x00\x44\x00\x61\x00\x46\x00\x5d\x00\x09\x00\x64\x00\x64\x00\x0f\x00\x62\x00\x11\x00\x5d\x00\x65\x00\x58\x00\x4f\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x64\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x34\x00\x35\x00\x52\x00\x0e\x00\x0f\x00\x10\x00\x4f\x00\x82\x00\x83\x00\x52\x00\x88\x00\x86\x00\x87\x00\x61\x00\x62\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x09\x00\x0c\x00\xa9\x00\xab\x00\x9c\x00\x09\x00\x23\x00\x10\x00\x50\x00\x12\x00\x13\x00\x09\x00\x5a\x00\x5b\x00\x5c\x00\x9c\x00\x2d\x00\xb4\x00\x09\x00\x64\x00\x2b\x00\x13\x00\x09\x00\x85\x00\x21\x00\x61\x00\x23\x00\x24\x00\x25\x00\x51\x00\x27\x00\x28\x00\x13\x00\x2a\x00\x2b\x00\x85\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x88\x00\x27\x00\x15\x00\x29\x00\x2a\x00\x2b\x00\x61\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x09\x00\x27\x00\x4c\x00\x29\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x33\x00\x34\x00\x35\x00\x15\x00\x2b\x00\x4d\x00\x09\x00\x13\x00\x42\x00\x43\x00\x44\x00\x09\x00\x46\x00\x54\x00\x09\x00\x48\x00\x49\x00\x5c\x00\x15\x00\x42\x00\x43\x00\x44\x00\x2b\x00\x15\x00\x5d\x00\x61\x00\x5a\x00\x5b\x00\x5c\x00\x62\x00\x2a\x00\x2b\x00\x65\x00\x2d\x00\x2e\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x61\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x4b\x00\x09\x00\x4a\x00\x4b\x00\x7c\x00\x4d\x00\x1b\x00\x82\x00\x83\x00\x81\x00\x1f\x00\x86\x00\x87\x00\x15\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x09\x00\x5a\x00\x09\x00\x5c\x00\x9c\x00\x4a\x00\x07\x00\x10\x00\x4c\x00\x12\x00\x13\x00\x09\x00\x5c\x00\x4b\x00\x15\x00\x9c\x00\x54\x00\xb4\x00\xb5\x00\x61\x00\x62\x00\x13\x00\x09\x00\x52\x00\x21\x00\x5e\x00\x23\x00\x24\x00\x25\x00\x5b\x00\x27\x00\x28\x00\x13\x00\x2a\x00\x2b\x00\x07\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x0a\x00\x27\x00\x4d\x00\x29\x00\x2a\x00\x2b\x00\x4d\x00\x2d\x00\x2e\x00\x24\x00\x25\x00\x4a\x00\x27\x00\x4d\x00\x29\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x1e\x00\x53\x00\x61\x00\x62\x00\x22\x00\x65\x00\x61\x00\x13\x00\x42\x00\x43\x00\x44\x00\x5e\x00\x2a\x00\x61\x00\x62\x00\x61\x00\x62\x00\x23\x00\x64\x00\x42\x00\x43\x00\x44\x00\x00\x00\x0b\x00\x5d\x00\x56\x00\x57\x00\x2d\x00\x59\x00\x62\x00\x2a\x00\x2b\x00\x65\x00\x2d\x00\x2e\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x56\x00\x57\x00\x09\x00\x59\x00\x59\x00\x4c\x00\x5b\x00\x82\x00\x83\x00\x5c\x00\x51\x00\x86\x00\x87\x00\x5d\x00\x15\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x4a\x00\x0f\x00\x4a\x00\x11\x00\x9c\x00\x4b\x00\x4c\x00\x48\x00\x49\x00\x09\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\x9c\x00\x10\x00\xb4\x00\x12\x00\x13\x00\x5e\x00\x5d\x00\x5e\x00\x58\x00\x5c\x00\x5a\x00\x84\x00\x4a\x00\x4b\x00\x4d\x00\x4d\x00\x4b\x00\x61\x00\x21\x00\x09\x00\x23\x00\x24\x00\x25\x00\x4b\x00\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\x13\x00\x2d\x00\x2e\x00\x5b\x00\x09\x00\x61\x00\x62\x00\x13\x00\x4a\x00\x5c\x00\x5b\x00\x09\x00\x61\x00\x62\x00\x13\x00\x4d\x00\x4d\x00\x24\x00\x25\x00\x09\x00\x27\x00\x13\x00\x29\x00\x2a\x00\x2b\x00\x5b\x00\x2d\x00\x2e\x00\x5e\x00\x13\x00\x2a\x00\x2b\x00\x7b\x00\x2d\x00\x2e\x00\x61\x00\x61\x00\x2a\x00\x2b\x00\x4d\x00\x2d\x00\x2e\x00\x4b\x00\x4c\x00\x2a\x00\x2b\x00\x64\x00\x2d\x00\x2e\x00\x5d\x00\x61\x00\x62\x00\x2a\x00\x2b\x00\x62\x00\x2d\x00\x2e\x00\x65\x00\x5c\x00\x61\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x09\x00\x09\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x82\x00\x83\x00\x17\x00\x13\x00\x86\x00\x87\x00\x15\x00\x16\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x09\x00\x84\x00\x11\x00\x12\x00\x5c\x00\x4d\x00\x4b\x00\x10\x00\x84\x00\x12\x00\x13\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\x84\x00\x58\x00\xb4\x00\x5a\x00\x09\x00\x59\x00\x4a\x00\x5b\x00\x84\x00\x21\x00\x61\x00\x23\x00\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\x4b\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x5b\x00\x61\x00\x09\x00\x5e\x00\x10\x00\x4c\x00\x12\x00\x13\x00\x59\x00\x58\x00\x5b\x00\x5a\x00\x13\x00\x19\x00\x09\x00\x2b\x00\x5c\x00\x2d\x00\x61\x00\x09\x00\x20\x00\x21\x00\x5c\x00\x23\x00\x24\x00\x25\x00\x15\x00\x27\x00\x28\x00\x13\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x0c\x00\x0d\x00\x36\x00\x37\x00\x38\x00\x39\x00\x5d\x00\x5c\x00\x3c\x00\x3d\x00\x28\x00\x62\x00\x2a\x00\x2b\x00\x65\x00\x2d\x00\x2e\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x39\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x47\x00\x48\x00\x61\x00\x09\x00\x4b\x00\x5b\x00\x4d\x00\x82\x00\x83\x00\x11\x00\x12\x00\x86\x00\x87\x00\x13\x00\x14\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x09\x00\x4c\x00\x82\x00\x83\x00\x09\x00\x4d\x00\x5b\x00\x10\x00\x53\x00\x12\x00\x13\x00\x09\x00\x4c\x00\x58\x00\x13\x00\x5a\x00\x58\x00\xb4\x00\x5a\x00\x61\x00\x62\x00\x54\x00\x61\x00\x15\x00\x21\x00\x61\x00\x23\x00\x24\x00\x25\x00\x5b\x00\x27\x00\x28\x00\x4b\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x2b\x00\x09\x00\x2d\x00\x09\x00\x10\x00\x09\x00\x12\x00\x13\x00\x00\x00\x01\x00\x09\x00\x13\x00\x14\x00\x19\x00\x09\x00\x15\x00\x16\x00\x15\x00\x16\x00\x09\x00\x5b\x00\x39\x00\x15\x00\x16\x00\x24\x00\x25\x00\x15\x00\x27\x00\x40\x00\x13\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x4c\x00\x58\x00\x56\x00\x5a\x00\x4b\x00\x4b\x00\x4d\x00\x13\x00\x14\x00\x22\x00\x61\x00\x5d\x00\x54\x00\x3c\x00\x3d\x00\x28\x00\x62\x00\x2a\x00\x2b\x00\x65\x00\x2d\x00\x2e\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x39\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x09\x00\x48\x00\x5c\x00\x0c\x00\x4b\x00\x0e\x00\x4d\x00\x82\x00\x83\x00\x51\x00\x09\x00\x86\x00\x87\x00\x0c\x00\x0d\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\x09\x00\x09\x00\x82\x00\x83\x00\x0c\x00\x0d\x00\x09\x00\x10\x00\x54\x00\x12\x00\x13\x00\x38\x00\x39\x00\x09\x00\x17\x00\x18\x00\x13\x00\xb4\x00\x09\x00\x09\x00\x10\x00\x0c\x00\x0c\x00\x0e\x00\x0e\x00\x15\x00\x10\x00\x24\x00\x25\x00\x54\x00\x27\x00\x4f\x00\x29\x00\x2a\x00\x2b\x00\x5c\x00\x2d\x00\x2e\x00\x09\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x0c\x00\x10\x00\x0e\x00\x12\x00\x13\x00\x3a\x00\x3b\x00\x09\x00\x17\x00\x18\x00\x0c\x00\x5a\x00\x0e\x00\x42\x00\x43\x00\x0c\x00\x45\x00\x39\x00\x11\x00\x12\x00\x4f\x00\x24\x00\x25\x00\x3f\x00\x27\x00\x41\x00\x29\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\xb2\x00\xb3\x00\x5b\x00\x4b\x00\x10\x00\x4d\x00\x12\x00\x13\x00\x4f\x00\x53\x00\x53\x00\x3a\x00\x3b\x00\x19\x00\x58\x00\x58\x00\x5a\x00\x5a\x00\x09\x00\x42\x00\x43\x00\x0c\x00\x45\x00\x0e\x00\x24\x00\x25\x00\x54\x00\x27\x00\x09\x00\x5b\x00\x2a\x00\x2b\x00\x4a\x00\x2d\x00\x2e\x00\x10\x00\x4c\x00\x12\x00\x13\x00\x2b\x00\x09\x00\x48\x00\x49\x00\x0c\x00\x19\x00\x0e\x00\xb2\x00\xb3\x00\x3c\x00\x3d\x00\x51\x00\x48\x00\x49\x00\x09\x00\x0a\x00\x24\x00\x25\x00\x58\x00\x27\x00\x5a\x00\x51\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\x61\x00\x58\x00\x5b\x00\x5a\x00\x10\x00\x9c\x00\x12\x00\x13\x00\x7e\x00\x7f\x00\x61\x00\x81\x00\x09\x00\x3c\x00\x3d\x00\x09\x00\xb2\x00\xb3\x00\x0c\x00\x5b\x00\x0e\x00\x21\x00\x13\x00\x23\x00\x24\x00\x25\x00\x61\x00\x27\x00\x28\x00\x61\x00\x2a\x00\x2b\x00\x09\x00\x2d\x00\x2e\x00\xb2\x00\xb3\x00\xb2\x00\xb3\x00\x10\x00\x09\x00\x0a\x00\x13\x00\x9c\x00\x4d\x00\x2a\x00\x2b\x00\x54\x00\x2d\x00\x2e\x00\x53\x00\x4f\x00\x82\x00\x83\x00\x54\x00\x58\x00\x21\x00\x5a\x00\x23\x00\x24\x00\x25\x00\x09\x00\x27\x00\x28\x00\x61\x00\x2a\x00\x2b\x00\x2f\x00\x2d\x00\x2e\x00\x4f\x00\x00\x00\x01\x00\x15\x00\x4f\x00\x04\x00\x05\x00\x4f\x00\x07\x00\x08\x00\x09\x00\x5d\x00\x0b\x00\x82\x00\x83\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x65\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x09\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x4f\x00\x1f\x00\x20\x00\x21\x00\x13\x00\x14\x00\x24\x00\x25\x00\x39\x00\x27\x00\x28\x00\x29\x00\xb2\x00\xb3\x00\x2c\x00\x5d\x00\x4d\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x53\x00\x48\x00\xb2\x00\xb3\x00\x4b\x00\x58\x00\x4d\x00\x5a\x00\x09\x00\x0a\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x61\x00\x51\x00\x35\x00\xb2\x00\xb3\x00\x47\x00\x48\x00\x49\x00\x4f\x00\xb2\x00\xb3\x00\x4d\x00\x4e\x00\x5c\x00\x50\x00\x51\x00\x4b\x00\x53\x00\x4b\x00\x55\x00\x60\x00\x57\x00\x58\x00\x64\x00\x5a\x00\x09\x00\x63\x00\x5d\x00\x4c\x00\x5f\x00\x63\x00\x61\x00\x62\x00\x09\x00\x64\x00\x00\x00\x01\x00\x15\x00\xb2\x00\xb3\x00\x05\x00\x63\x00\x07\x00\x08\x00\x09\x00\x15\x00\x0b\x00\x05\x00\x06\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x63\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x63\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x60\x00\x1f\x00\x20\x00\x21\x00\xb2\x00\xb3\x00\x24\x00\x25\x00\x39\x00\x27\x00\x28\x00\x29\x00\x05\x00\x06\x00\x2c\x00\x40\x00\x39\x00\x05\x00\x06\x00\x48\x00\x49\x00\x80\x00\x81\x00\x40\x00\x4d\x00\x63\x00\x4b\x00\x63\x00\x4d\x00\x60\x00\x53\x00\x80\x00\x81\x00\x60\x00\x4b\x00\x58\x00\x4d\x00\x5a\x00\x48\x00\x49\x00\x60\x00\x47\x00\x48\x00\x49\x00\x61\x00\xb2\x00\xb3\x00\x4d\x00\x4e\x00\x53\x00\x50\x00\x51\x00\x60\x00\x53\x00\x58\x00\x55\x00\x5a\x00\x57\x00\x58\x00\x63\x00\x5a\x00\x63\x00\x09\x00\x5d\x00\x63\x00\x5f\x00\x09\x00\x61\x00\x62\x00\x01\x00\x64\x00\x09\x00\x0a\x00\x05\x00\x15\x00\x07\x00\x08\x00\x09\x00\x15\x00\xb2\x00\xb3\x00\x63\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x63\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x60\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x61\x00\x1f\x00\x20\x00\x21\x00\xb2\x00\xb3\x00\x24\x00\x25\x00\x4c\x00\x27\x00\x28\x00\x29\x00\x39\x00\x61\x00\x2c\x00\x5c\x00\x39\x00\x09\x00\x0a\x00\x40\x00\x09\x00\x0a\x00\x2b\x00\x40\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x2b\x00\x4b\x00\x2b\x00\x4d\x00\x5c\x00\x4b\x00\x2b\x00\x4d\x00\x09\x00\x0a\x00\x05\x00\x06\x00\x47\x00\x48\x00\x49\x00\x05\x00\x06\x00\x4b\x00\x4d\x00\x4e\x00\x4c\x00\x50\x00\x51\x00\x5c\x00\x53\x00\x60\x00\x55\x00\x63\x00\x57\x00\x58\x00\x60\x00\x5a\x00\x80\x00\x81\x00\x5d\x00\x60\x00\x5f\x00\x64\x00\x61\x00\x62\x00\x4f\x00\x64\x00\x65\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x01\x00\x60\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x63\x00\x0b\x00\x60\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x09\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x15\x00\x1f\x00\x20\x00\x21\x00\x60\x00\x09\x00\x24\x00\x25\x00\x60\x00\x27\x00\x28\x00\x29\x00\x48\x00\x49\x00\x2c\x00\x13\x00\x14\x00\x4d\x00\x60\x00\x4f\x00\x80\x00\x81\x00\x60\x00\x53\x00\x05\x00\x06\x00\xb2\x00\xb3\x00\x58\x00\x63\x00\x5a\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x39\x00\x61\x00\xb2\x00\xb3\x00\x60\x00\x47\x00\x48\x00\x49\x00\x30\x00\x31\x00\x32\x00\x4d\x00\x4e\x00\x35\x00\x50\x00\x51\x00\x49\x00\x53\x00\x4b\x00\x55\x00\x4d\x00\x57\x00\x58\x00\x63\x00\x5a\x00\x63\x00\x52\x00\x5c\x00\x4c\x00\x5f\x00\x09\x00\x61\x00\x62\x00\x01\x00\x64\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x15\x00\x4a\x00\x5b\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x54\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x54\x00\x1f\x00\x20\x00\x21\x00\x5b\x00\x53\x00\x24\x00\x25\x00\x53\x00\x27\x00\x28\x00\x29\x00\x53\x00\x60\x00\x2c\x00\x61\x00\x39\x00\x61\x00\x63\x00\x48\x00\x49\x00\x50\x00\x60\x00\x40\x00\x4d\x00\x4b\x00\x4f\x00\x60\x00\x60\x00\x60\x00\x53\x00\x5c\x00\x54\x00\x5b\x00\x4b\x00\x58\x00\x4d\x00\x5a\x00\x4c\x00\x2b\x00\x5b\x00\x47\x00\x48\x00\x49\x00\x61\x00\x5c\x00\x5b\x00\x4d\x00\x4e\x00\x5b\x00\x50\x00\x51\x00\x5b\x00\x53\x00\x09\x00\x55\x00\x2b\x00\x57\x00\x58\x00\x5b\x00\x5a\x00\x61\x00\x09\x00\x4c\x00\x59\x00\x5f\x00\x15\x00\x61\x00\x62\x00\x01\x00\x64\x00\x4c\x00\x60\x00\x05\x00\x15\x00\x07\x00\x08\x00\x09\x00\x61\x00\x0b\x00\x60\x00\x4a\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x09\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x54\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x15\x00\x1f\x00\x20\x00\x21\x00\x39\x00\x61\x00\x24\x00\x25\x00\x54\x00\x27\x00\x28\x00\x29\x00\x39\x00\x4a\x00\x2c\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x49\x00\x26\x00\x4b\x00\x4f\x00\x4d\x00\x54\x00\x61\x00\x4f\x00\x49\x00\x4f\x00\x4b\x00\x4f\x00\x4d\x00\x61\x00\x5c\x00\x5c\x00\x39\x00\x5b\x00\x15\x00\x03\x00\x5b\x00\x47\x00\x48\x00\x49\x00\x54\x00\x5c\x00\x59\x00\x4d\x00\x4e\x00\x5b\x00\x50\x00\x51\x00\x49\x00\x53\x00\x4b\x00\x55\x00\x4d\x00\x57\x00\x58\x00\x61\x00\x5a\x00\x61\x00\x61\x00\x64\x00\x54\x00\x5f\x00\x61\x00\x61\x00\x62\x00\x01\x00\x64\x00\x01\x00\xb2\x00\x05\x00\x02\x00\x07\x00\x08\x00\x09\x00\x66\x00\x06\x00\x60\x00\xaa\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x09\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x04\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x15\x00\x1f\x00\x20\x00\x21\x00\x09\x00\xaa\x00\x24\x00\x25\x00\x08\x00\x27\x00\x28\x00\x29\x00\x08\x00\x08\x00\x2c\x00\x08\x00\x67\x00\x09\x00\x09\x00\x13\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x0b\x00\xaa\x00\x66\x00\x09\x00\x0b\x00\x4c\x00\x1f\x00\x20\x00\x21\x00\x0b\x00\x23\x00\x39\x00\x25\x00\x5e\x00\x27\x00\x15\x00\x47\x00\x48\x00\x49\x00\x2c\x00\x2d\x00\xb2\x00\x4d\x00\x4e\x00\x5e\x00\x50\x00\x51\x00\x49\x00\x53\x00\x4b\x00\x55\x00\x4d\x00\x57\x00\x58\x00\x26\x00\x5a\x00\x0b\x00\x09\x00\x05\x00\x50\x00\x5f\x00\x05\x00\x61\x00\x62\x00\x06\x00\x64\x00\x47\x00\x48\x00\x49\x00\x15\x00\x09\x00\x39\x00\x4d\x00\x4e\x00\x0b\x00\x50\x00\x51\x00\x08\x00\x53\x00\x0b\x00\x55\x00\x06\x00\x57\x00\x58\x00\x06\x00\x5a\x00\x4c\x00\x49\x00\x13\x00\x4b\x00\x26\x00\x4d\x00\x61\x00\x62\x00\x19\x00\x64\x00\x4c\x00\x67\x00\x1a\x00\x5e\x00\x1f\x00\x20\x00\x21\x00\x60\x00\x1e\x00\x39\x00\x25\x00\x08\x00\x27\x00\x5e\x00\x1e\x00\x1e\x00\x1e\x00\x2c\x00\x1d\x00\x1a\x00\x1d\x00\x7d\x00\x13\x00\x09\x00\x1e\x00\x49\x00\x1e\x00\x4b\x00\xa8\x00\x4d\x00\xa3\x00\x09\x00\x1b\x00\x1a\x00\x1f\x00\x20\x00\x21\x00\x1a\x00\x10\x00\x1e\x00\x25\x00\x13\x00\x27\x00\x1c\x00\x47\x00\x48\x00\x49\x00\x2c\x00\x1e\x00\x1e\x00\x4d\x00\x4e\x00\x0b\x00\x50\x00\x51\x00\x60\x00\x53\x00\x54\x00\x55\x00\x06\x00\x57\x00\x58\x00\x28\x00\x5a\x00\x2a\x00\x2b\x00\x0b\x00\x2d\x00\x2e\x00\x0b\x00\x61\x00\x62\x00\x0b\x00\x64\x00\x47\x00\x48\x00\x49\x00\x1c\x00\x1c\x00\xa4\x00\x4d\x00\x4e\x00\x1a\x00\x50\x00\x51\x00\x08\x00\x53\x00\x09\x00\x55\x00\x2b\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xac\x00\x13\x00\x0b\x00\x09\x00\x09\x00\x61\x00\x62\x00\x0b\x00\x64\x00\x0b\x00\x0b\x00\x48\x00\x49\x00\x1f\x00\x20\x00\x21\x00\x4d\x00\x09\x00\x0b\x00\x25\x00\x08\x00\x27\x00\x53\x00\x48\x00\x49\x00\x09\x00\x2c\x00\x58\x00\x4d\x00\x5a\x00\x09\x00\x13\x00\x51\x00\x81\x00\x53\x00\x81\x00\x61\x00\x19\x00\x81\x00\x58\x00\x07\x00\x5a\x00\x1c\x00\x1f\x00\x20\x00\x21\x00\x05\x00\x09\x00\x61\x00\x25\x00\x0b\x00\x27\x00\xac\x00\x47\x00\x48\x00\x49\x00\x2c\x00\x09\x00\x0b\x00\x4d\x00\x4e\x00\x0b\x00\x50\x00\x51\x00\x81\x00\x53\x00\x81\x00\x55\x00\x09\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x61\x00\x62\x00\x81\x00\x64\x00\x47\x00\x48\x00\x49\x00\x81\x00\x08\x00\x08\x00\x4d\x00\x4e\x00\x08\x00\x50\x00\x51\x00\x08\x00\x53\x00\x54\x00\x55\x00\x2b\x00\x57\x00\x58\x00\x05\x00\x5a\x00\x09\x00\x05\x00\x13\x00\x09\x00\x09\x00\xff\xff\x61\x00\x62\x00\x09\x00\x64\x00\xff\xff\xff\xff\x48\x00\x49\x00\x1f\x00\x20\x00\x21\x00\x4d\x00\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\x53\x00\x48\x00\x49\x00\xff\xff\x2c\x00\x58\x00\x4d\x00\x5a\x00\xff\xff\x13\x00\x51\x00\xff\xff\x53\x00\xff\xff\x61\x00\xff\xff\xff\xff\x58\x00\xff\xff\x5a\x00\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\x61\x00\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x19\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\x12\x00\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\x19\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\x19\x00\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x13\x00\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\x4f\x00\x50\x00\xff\xff\x52\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x28\x00\x5a\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x13\x00\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\x18\x00\x19\x00\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x13\x00\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\x12\x00\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\x19\x00\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x5b\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\x23\x00\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\x23\x00\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\x23\x00\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\x23\x00\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x09\x00\x13\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x10\x00\x64\x00\xff\xff\x13\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\x19\x00\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x24\x00\x25\x00\xff\xff\x27\x00\x13\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x09\x00\x13\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x10\x00\x64\x00\x12\x00\x13\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x24\x00\x25\x00\xff\xff\x27\x00\x13\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\x4f\x00\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x10\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\x09\x00\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\x17\x00\x18\x00\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\x09\x00\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\xff\xff\xff\xff\x24\x00\x25\x00\x13\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x09\x00\x13\x00\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x13\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x24\x00\x25\x00\xff\xff\x27\x00\x13\x00\x29\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\x08\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x09\x00\x13\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\x13\x00\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x24\x00\x25\x00\xff\xff\x27\x00\x13\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x22\x00\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\x13\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\x08\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2c\x00\x22\x00\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\x1f\x00\x20\x00\x21\x00\x4d\x00\x4e\x00\xff\xff\x50\x00\x08\x00\x27\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x25\x00\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\x2c\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\xff\xff\x09\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\x10\x00\x5a\x00\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x48\x00\x49\x00\xff\xff\x09\x00\xff\xff\x4d\x00\x36\x00\x37\x00\x38\x00\x39\x00\x10\x00\x53\x00\x12\x00\x13\x00\xff\xff\xff\xff\x58\x00\x61\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x09\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\x5e\x00\x5f\x00\x36\x00\x37\x00\x38\x00\x39\x00\x09\x00\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\x4e\x00\x4f\x00\xff\xff\x20\x00\x21\x00\x09\x00\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x13\x00\x2d\x00\x2e\x00\xff\xff\x17\x00\x18\x00\x1f\x00\x20\x00\x21\x00\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\x27\x00\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4e\x00\x4f\x00\x1f\x00\x20\x00\x21\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x27\x00\xff\xff\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x1f\x00\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x27\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\x09\x00\x55\x00\xff\xff\x57\x00\x58\x00\xff\xff\x5a\x00\x10\x00\xff\xff\x12\x00\x48\x00\x49\x00\x15\x00\x61\x00\x62\x00\x4d\x00\x64\x00\x47\x00\x48\x00\x49\x00\xff\xff\x53\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x58\x00\xff\xff\x5a\x00\x53\x00\xff\xff\x55\x00\xff\xff\x57\x00\xff\xff\x61\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\xff\xff\x64\x00\xff\xff\x39\x00\xff\xff\xff\xff\x09\x00\xff\xff\x3e\x00\x3f\x00\x40\x00\x41\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4b\x00\x19\x00\x4d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\x10\x00\x3c\x00\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x13\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x36\x00\x37\x00\x38\x00\x39\x00\x24\x00\x25\x00\x3c\x00\x27\x00\xff\xff\x13\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\x3c\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x3c\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x33\x00\x34\x00\x35\x00\x10\x00\xff\xff\x12\x00\x13\x00\x3a\x00\x3b\x00\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\x3a\x00\x3b\x00\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\x3a\x00\x3b\x00\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\x09\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\x09\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\x09\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\x09\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\x09\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\x3a\x00\x3b\x00\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\x09\x00\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\x13\x00\x09\x00\xff\xff\xff\xff\x17\x00\x18\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x24\x00\x25\x00\x09\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x3a\x00\x13\x00\x09\x00\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x24\x00\x25\x00\x09\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x3a\x00\x13\x00\x09\x00\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x24\x00\x25\x00\x09\x00\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x3a\x00\x13\x00\xff\xff\xff\xff\xff\xff\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x24\x00\x25\x00\xff\xff\x27\x00\xff\xff\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\x09\x00\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\xff\xff\x10\x00\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x27\x00\x28\x00\xff\xff\x2a\x00\x2b\x00\xff\xff\x2d\x00\x2e\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\xff\xff\x36\x00\x37\x00\x38\x00\x39\x00\x53\x00\x48\x00\x49\x00\xff\xff\xff\xff\x58\x00\x4d\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\x61\x00\xff\xff\xff\xff\x58\x00\xff\xff\x5a\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\x53\x00\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\xff\xff\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#

    happyTable :: HappyAddr
    happyTable :: HappyAddr
    happyTable = Addr# -> HappyAddr
    HappyA# Addr#
    "\x00\x00\x25\x02\x05\x02\x27\x02\x57\x03\x09\x00\x1f\x02\x1f\x02\x20\x02\x20\x02\x48\xff\x52\x03\x0a\x00\xe4\x01\x37\x00\x0c\x00\x09\x00\xc9\x02\x41\x00\xa7\x03\x1f\x02\xca\x02\x20\x02\x48\xff\x46\x00\x48\xff\x0c\x00\x09\x00\x57\x02\x38\x00\x41\x00\x0f\x00\x10\x00\x11\x00\x35\x00\x12\x00\x39\x00\x0c\x00\x14\x00\x15\x00\x0c\x00\x16\x00\x17\x00\x6c\x02\x11\x00\x4b\x02\x12\x00\x06\x03\x8a\x01\x14\x00\x15\x00\x81\x01\x16\x00\x8b\x01\x6c\x02\x11\x00\xee\x01\x12\x00\x41\x00\x8a\x01\x14\x00\x15\x00\x3a\x03\x16\x00\x8b\x01\x3b\x03\xbc\x00\x58\x03\x42\x00\x10\x03\x41\x00\xff\xff\x41\x00\x6d\x02\x6e\x02\x6f\x02\x8c\x02\x70\x02\x4c\x02\x07\x03\x42\x00\x10\x03\x42\x00\xf0\x01\x6d\x02\x6e\x02\x6f\x02\x35\x00\xbb\x02\x3a\x00\x4d\x03\x21\x02\x29\x03\x1f\x02\x4d\x00\x20\x02\x28\x02\x4e\x00\xa8\x03\xee\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x28\x03\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x48\x03\x8f\x02\x82\x01\xaa\x03\xab\x03\xac\x03\xf2\x00\x61\x00\x62\x00\xa7\x00\x06\x02\x63\x00\x64\x00\x35\x00\x36\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\x74\x01\x2a\x03\x22\x02\x8f\x01\x4d\x03\xa5\x00\x0a\x00\x32\x03\x37\x00\x0c\x00\x09\x00\x4e\x03\x58\x03\x50\x03\x8f\x01\xa6\x00\x71\x01\x8c\x02\x8d\x03\x01\x03\x0c\x00\x09\x00\x11\x03\x38\x00\xe2\x02\x0f\x00\x10\x00\x11\x00\xf4\x00\x12\x00\x39\x00\x0c\x00\x14\x00\x15\x00\x7f\x03\x16\x00\x17\x00\x6c\x02\x11\x00\xf1\x01\x12\x00\x4c\x00\x8a\x01\x14\x00\x15\x00\x35\x00\x16\x00\x8b\x01\x6c\x02\x11\x00\xbe\x00\x12\x00\x02\x03\x8a\x01\x14\x00\x15\x00\x09\x00\x16\x00\x8b\x01\x8d\x02\x8e\x02\x8f\x02\xc0\x00\x4d\x00\xf3\x01\xbe\x00\x0c\x00\x6d\x02\x6e\x02\x6f\x02\xbe\x00\x47\x03\x5c\x02\x4d\x03\x1f\x03\x20\x03\xdf\x00\x97\x01\x6d\x02\x6e\x02\xb3\x02\xe4\x02\x94\x01\x3a\x00\x35\x00\x4e\x03\x4f\x03\x50\x03\x4d\x00\x14\x00\x15\x00\x4e\x00\x16\x00\xa2\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x35\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xe5\x02\xbe\x00\xfe\x02\x18\x02\x35\x03\xe3\x00\x32\x02\x61\x00\x62\x00\x36\x03\x33\x02\x63\x00\x64\x00\x97\x01\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\x4e\x03\xbe\x00\xa5\x03\x8f\x01\x03\x02\x52\x03\x0a\x00\x48\xff\x37\x00\x0c\x00\x09\x00\xd9\x00\x62\xff\x94\x01\x8f\x01\x48\xff\x7f\x00\x80\x00\x35\x00\x36\x00\x0c\x00\x09\x00\xa7\x00\x38\x00\x04\x02\x0f\x00\x10\x00\x11\x00\x62\xff\x12\x00\x39\x00\x0c\x00\x14\x00\x15\x00\x52\x03\x16\x00\x17\x00\x6c\x02\x11\x00\xa8\x02\x12\x00\xf3\x01\x8a\x01\x14\x00\x15\x00\xfd\x01\x16\x00\x8b\x01\x6c\x02\x11\x00\x03\x02\x12\x00\x59\x02\x8a\x01\x14\x00\x15\x00\x09\x00\x16\x00\x8b\x01\xa9\x02\xbe\x00\x35\x00\x36\x00\xaa\x02\xff\xff\x35\x00\x0c\x00\x6d\x02\x6e\x02\xb2\x02\x89\x02\xab\x02\x35\x00\x36\x00\x35\x00\x36\x00\x24\x00\x37\x00\x6d\x02\x6e\x02\x44\x03\x27\x02\x01\x02\x3a\x00\x53\x03\x54\x03\x28\x00\x55\x03\x4d\x00\x14\x00\x15\x00\x4e\x00\x16\x00\x5c\x02\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x66\x03\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xa6\x03\x54\x03\xbe\x00\x55\x03\x9e\x00\x94\x02\x9f\x00\x61\x00\x62\x00\xe9\x01\xf4\x00\x63\x00\x64\x00\x00\x02\xc0\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x03\x02\xe5\x02\x03\x02\x20\x02\x8f\x01\xc3\x01\xc4\x01\xef\x02\xf0\x02\x09\x00\x67\x03\x68\x03\x69\x03\x6a\x03\x6b\x03\x8f\x01\x0a\x00\x6c\x03\x37\x00\x0c\x00\x7c\x02\x28\x02\x7c\x02\xf1\x02\xe9\x01\xf2\x02\x92\x02\x17\x02\x18\x02\x56\x02\xe3\x00\xbb\x01\x35\x00\x38\x00\x09\x00\x0f\x00\x10\x00\x11\x00\xbb\x01\x12\x00\x39\x00\x09\x00\x14\x00\x15\x00\x0c\x00\x16\x00\x17\x00\xb9\x02\x09\x00\x35\x00\x36\x00\x0c\x00\x03\x02\xeb\x01\xb7\x02\x09\x00\x35\x00\x36\x00\x0c\x00\xcc\x00\x64\x03\xef\x00\x11\x00\x09\x00\x12\x00\x0c\x00\x7d\x02\x14\x00\x15\x00\x7b\x02\x16\x00\x8b\x01\x7c\x02\x0c\x00\x14\x00\x15\x00\x19\x02\x16\x00\x5c\x02\x35\x00\xe2\x02\x14\x00\x15\x00\x60\x03\x16\x00\x5c\x02\xc3\x01\xc4\x01\x14\x00\x15\x00\xf7\x01\x16\x00\x5c\x02\x3a\x00\x35\x00\x36\x00\x14\x00\x15\x00\x4d\x00\x16\x00\x5c\x02\x4e\x00\xe9\x01\xe2\x02\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x66\x03\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x41\x00\xbe\x00\xbe\x02\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x61\x00\x62\x00\xf0\x01\x54\x02\x63\x00\x64\x00\x0f\x02\x12\x02\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\x5d\x02\x24\x02\x25\x02\xe9\x01\xcc\x00\xbb\x01\x0a\x00\x09\x03\x37\x00\x0c\x00\xb3\x03\x69\x03\x6a\x03\x6b\x03\xbf\x02\xfc\x02\xb4\x03\xfd\x02\x09\x00\x9e\x00\x03\x02\x9f\x00\x81\x03\x38\x00\x35\x00\x0f\x00\x10\x00\x11\x00\x0c\x00\x12\x00\x39\x00\x54\x02\x14\x00\x15\x00\x09\x00\x16\x00\x17\x00\xbd\x02\x35\x00\x09\x00\x7c\x02\x0a\x00\xc9\x01\xb4\x00\x0c\x00\x9e\x00\x26\x03\x9f\x00\x27\x03\x0c\x00\xb5\x00\xbe\x00\xdb\x00\xe9\x01\x16\x00\x35\x00\x09\x00\x97\x00\x98\x00\xeb\x01\x0f\x00\xb6\x00\x11\x00\xc0\x00\x12\x00\x13\x00\x0c\x00\x14\x00\x15\x00\x9f\x00\x16\x00\x17\x00\x14\x00\x15\x00\xea\x02\x16\x00\xa1\x00\x1c\x03\x20\x03\x18\x00\x19\x00\x1a\x00\x1b\x00\x3a\x00\xe9\x01\xb7\x00\xb8\x00\xd9\x00\x4d\x00\x14\x00\x15\x00\x4e\x00\x16\x00\xd7\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\xdf\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xe0\x00\xe1\x00\x35\x00\x41\x00\xe2\x00\xc8\x01\xe3\x00\x61\x00\x62\x00\x24\x02\x25\x02\x63\x00\x64\x00\x42\x00\x43\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\xde\x02\x61\x00\xb9\x00\x09\x00\xcc\x00\xc6\x01\x0a\x00\xdf\x02\x37\x00\x0c\x00\xbe\x00\xbc\x01\xe0\x02\x0c\x00\xe1\x02\xfa\x02\x71\x01\xfb\x02\x35\x00\x36\x00\xc5\x01\xe2\x02\xc0\x00\x38\x00\x35\x00\x0f\x00\x10\x00\x11\x00\xba\x01\x12\x00\x39\x00\xbb\x01\x14\x00\x15\x00\x09\x00\x16\x00\x17\x00\xe5\x01\x41\x00\x16\x00\xbe\x00\x0a\x00\xbe\x00\x6b\x01\x0c\x00\x49\x00\x08\x00\xbe\x00\x42\x00\xad\x01\xb5\x00\xbe\x00\x0f\x02\x11\x02\x0f\x02\x10\x02\x09\x00\xb9\x01\x9b\x01\x0f\x02\x03\x03\x6c\x01\x11\x00\xc0\x00\x12\x00\xa3\x01\x0c\x00\x14\x00\x15\x00\x41\x00\x16\x00\x5e\x01\xb8\x01\x23\x03\xb5\x01\x24\x03\x9d\x01\xb3\x01\xe3\x00\x42\x00\x0a\x02\xd5\x00\x35\x00\x3a\x00\xb2\x01\xb7\x00\xb8\x00\xd6\x00\x4d\x00\x14\x00\x15\x00\x4e\x00\x16\x00\xd7\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\xdf\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xea\x02\x70\x01\xdf\x00\xeb\x02\xe2\x00\x27\x03\xe3\x00\x61\x00\x62\x00\xa6\x01\xea\x02\x63\x00\x64\x00\x1c\x03\x1d\x03\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\xea\x02\x61\x00\xb9\x00\x1c\x03\x7e\x03\x09\x00\x0a\x00\xb1\x01\x67\x01\xaa\x00\xe7\x00\x1b\x00\xbe\x00\xab\x00\x68\x01\x0c\x00\x09\x02\xea\x02\xea\x02\xa7\x00\xeb\x02\xeb\x02\x88\x03\xec\x02\xc0\x00\xed\x02\x89\x01\x11\x00\xb0\x01\x12\x00\xa2\x01\x8a\x01\x14\x00\x15\x00\x9b\x01\x16\x00\x8b\x01\x09\x00\x14\x00\x15\x00\xea\x02\x16\x00\xa2\x00\xeb\x02\x0a\x00\x87\x03\x67\x01\xaa\x00\xae\x00\xaf\x00\xea\x02\xab\x00\x68\x01\xeb\x02\x7c\x01\xb9\x03\x8c\x01\x8d\x01\x74\x01\x8e\x01\xa6\x01\x24\x02\x25\x02\x6f\x01\x89\x01\x11\x00\xa7\x01\x12\x00\xc5\x00\x8a\x01\x14\x00\x15\x00\x09\x00\x16\x00\x8b\x01\xe6\x01\x04\x02\x9c\x02\xa8\x01\x0a\x00\xc7\x00\x5f\x01\x0c\x00\x5b\x01\x65\x01\x62\x01\xae\x00\xaf\x00\xb5\x00\x66\x01\x63\x01\x67\x01\x64\x01\xea\x02\x8c\x01\x8d\x01\xeb\x02\x5f\x02\xb8\x03\x60\x01\x11\x00\x97\x02\x12\x00\x09\x00\x92\x02\x14\x00\x15\x00\x91\x02\x16\x00\x5e\x01\x0a\x00\x94\x02\x6b\x01\x0c\x00\x8c\x02\xea\x02\x6e\xff\x6e\xff\xeb\x02\xb5\x00\xb7\x03\xe6\x01\xfd\x01\xb7\x00\xb8\x00\x6e\xff\xef\x02\xf0\x02\xe0\x01\xe2\x01\x6c\x01\x11\x00\x6e\xff\x12\x00\x6e\xff\x2f\x00\x14\x00\x15\x00\x09\x00\x16\x00\x5e\x01\x6e\xff\xf1\x02\x85\x02\xf2\x02\x0a\x00\x8f\x01\x37\x00\x0c\x00\xda\x02\xdb\x02\x35\x00\xdc\x02\x09\x00\xb7\x00\xb8\x00\xea\x02\xe6\x01\xf4\x01\xeb\x02\x82\x02\xb6\x03\x38\x00\x0c\x00\x0f\x00\x10\x00\x11\x00\x35\x00\x12\x00\x39\x00\x35\x00\x14\x00\x15\x00\x09\x00\x16\x00\x17\x00\xe6\x01\xf3\x01\xe6\x01\xee\x01\xa7\x00\xe0\x01\xe1\x01\x0c\x00\x8f\x01\xcc\x00\x14\x00\x15\x00\x83\x02\x16\x00\xa1\x00\x65\x01\x7f\x02\x61\x00\xb9\x00\x80\x02\x99\x01\x38\x00\x9a\x01\x0f\x00\x10\x00\x11\x00\xbe\x00\x12\x00\x39\x00\x35\x00\x14\x00\x15\x00\xcb\x01\x16\x00\x17\x00\xef\xfe\x27\x02\x82\x00\xc0\x00\xee\xfe\xb6\x03\x83\x00\xf0\xfe\x84\x00\x1f\x00\x85\x00\x3a\x00\x47\xfe\x61\x00\xb9\x00\x86\x00\x87\x00\x88\x00\x89\x00\x3b\x00\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x74\x01\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\xf4\xfe\x21\x00\x22\x00\x93\x00\x42\x00\x75\x01\x94\x00\x25\x00\xdf\x00\x26\x00\x95\x00\x96\x00\xe6\x01\xeb\x01\x27\x00\xa8\x00\xcc\x00\xa2\x02\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x62\x01\x6d\x01\xe6\x01\xe7\x01\xe2\x00\x96\x01\xe3\x00\x97\x01\xe0\x01\x2e\x02\x76\x01\x77\x01\x78\x01\x79\x01\x35\x00\xa6\x01\x7a\x01\xe6\x01\x15\x02\x29\x00\x3d\x00\x3e\x00\xf3\xfe\xe6\x01\x0b\x03\x2c\x00\x2d\x00\x64\x02\x2e\x00\x2f\x00\x5a\x02\x3f\x00\x54\x02\x31\x00\x4a\x02\x32\x00\x40\x00\x36\x02\x41\x00\xbe\x00\x49\x02\x28\x02\x2e\x02\x97\x00\x32\x02\x35\x00\x36\x00\xbe\x00\x37\x00\x27\x02\x82\x00\xc0\x00\xe6\x01\x0a\x03\x83\x00\x47\x02\x84\x00\x1f\x00\x85\x00\xc0\x00\x47\xfe\xe8\x02\xe9\x02\x86\x00\x87\x00\x88\x00\x89\x00\x46\x02\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x3b\x02\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x40\x02\x21\x00\x22\x00\x93\x00\xe6\x01\x08\x03\x94\x00\x25\x00\x9b\x01\x26\x00\x95\x00\x96\x00\xb9\x02\xba\x02\x27\x00\x9c\x01\x9b\x01\x43\x03\xba\x02\xca\x00\xcb\x00\x32\x03\x33\x03\x6b\x02\xcc\x00\x32\x02\x9d\x01\x39\x02\xe3\x00\x3f\x02\xe5\x00\x2f\x03\x30\x03\x3e\x02\x9d\x01\xe6\x00\xe3\x00\xe7\x00\xe9\x00\xea\x00\x3d\x02\x29\x00\x3d\x00\x3e\x00\x35\x00\xe6\x01\x12\x03\x2c\x00\x2d\x00\xeb\x00\x2e\x00\x2f\x00\x3c\x02\x3f\x00\xec\x00\x31\x00\xed\x00\x32\x00\x40\x00\x3b\x02\x41\x00\x39\x02\xbe\x00\x28\x02\x32\x02\x97\x00\xbe\x00\x35\x00\x36\x00\x82\x00\x37\x00\xe0\x01\x7b\x03\x83\x00\xc0\x00\x84\x00\x1f\x00\x85\x00\xc0\x00\xe6\x01\x0f\x03\x35\x02\x86\x00\x87\x00\x88\x00\x89\x00\x32\x02\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x30\x02\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x35\x00\x21\x00\x22\x00\x93\x00\xe6\x01\x0e\x03\x94\x00\x25\x00\x2d\x02\x26\x00\x95\x00\x96\x00\x9b\x01\x35\x00\x27\x00\xe9\x01\x9b\x01\xe0\x01\x7a\x03\x6a\x02\xe0\x01\x79\x03\x0c\x02\x65\x02\x4c\x03\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x09\x02\x9d\x01\x08\x02\xe3\x00\xe9\x01\x9d\x01\x03\x03\xe3\x00\xe0\x01\x78\x03\x76\x03\x77\x03\x29\x00\x3d\x00\x3e\x00\x59\x03\xba\x02\xf3\x02\x2c\x00\x2d\x00\xfe\x02\x2e\x00\x2f\x00\xe8\x02\x3f\x00\xd8\x02\x31\x00\x35\x02\x32\x00\x40\x00\xd7\x02\x41\x00\x98\x03\x95\x03\xe5\xfd\xd5\x02\x97\x00\xd4\x02\x35\x00\x36\x00\xb5\x02\x37\x00\xe5\xfd\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x04\x01\x05\x01\x06\x01\x07\x01\x08\x01\x09\x01\x0a\x01\x0b\x01\x0c\x01\x0d\x01\x0e\x01\x0f\x01\x10\x01\x11\x01\x12\x01\x13\x01\x14\x01\x15\x01\x16\x01\x17\x01\x18\x01\x19\x01\x1a\x01\x1b\x01\x1c\x01\x1d\x01\x1e\x01\x1f\x01\x20\x01\x21\x01\x22\x01\x23\x01\x24\x01\x25\x01\x26\x01\x27\x01\x28\x01\x29\x01\x2a\x01\x2b\x01\x2c\x01\x2d\x01\x2e\x01\x2f\x01\x30\x01\x31\x01\x32\x01\x33\x01\x34\x01\x35\x01\x36\x01\x37\x01\x38\x01\x39\x01\x3a\x01\x3b\x01\x3c\x01\x3d\x01\x3e\x01\x3f\x01\x40\x01\x41\x01\x42\x01\x43\x01\x44\x01\x45\x01\x46\x01\x47\x01\x48\x01\x49\x01\x4a\x01\x4b\x01\x4c\x01\x4d\x01\x4e\x01\x4f\x01\x50\x01\x51\x01\x52\x01\x53\x01\x54\x01\x55\x01\x56\x01\x57\x01\x58\x01\x59\x01\x82\x00\xd2\x02\x6e\x03\x6f\x03\x83\x00\x70\x03\x84\x00\x1f\x00\x85\x00\x3b\x02\x47\xfe\xd0\x02\x71\x03\x86\x00\x87\x00\x88\x00\x72\x03\xbe\x00\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x73\x03\x8e\x00\x74\x03\x90\x00\x91\x00\x92\x00\xc0\x00\x21\x00\x22\x00\x93\x00\xcf\x02\x74\x01\x94\x00\x25\x00\xce\x02\x26\x00\x95\x00\x96\x00\xca\x00\xcb\x00\x27\x00\x42\x00\x75\x01\xcc\x00\xcd\x02\xf1\xfe\x94\x03\x95\x03\xcc\x02\x9f\x01\x92\x03\x93\x03\xe6\x01\xf4\x01\xa0\x01\x32\x02\xa1\x01\x0c\x03\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x0c\x02\x35\x00\xe6\x01\x84\x03\xc7\x02\x29\x00\x3d\x00\x3e\x00\xab\x02\x78\x01\x79\x01\x2c\x00\x2d\x00\x7a\x01\x2e\x00\x2f\x00\x28\x02\x3f\x00\x0e\x02\x31\x00\xe3\x00\x32\x00\x40\x00\x3b\x02\x41\x00\x32\x02\xb1\x02\xaf\x02\x94\x02\x97\x00\xbe\x00\x35\x00\x36\x00\x82\x00\x37\x00\x6e\x03\x6f\x03\x83\x00\x70\x03\x84\x00\x1f\x00\x85\x00\xc0\x00\xad\x02\xae\x02\x71\x03\x86\x00\x87\x00\x88\x00\x72\x03\xa1\x02\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x73\x03\x8e\x00\x74\x03\x90\x00\x91\x00\x92\x00\x62\xff\x21\x00\x22\x00\x93\x00\x9f\x02\x4c\x03\x94\x00\x25\x00\x4b\x03\x26\x00\x95\x00\x96\x00\x4a\x03\x42\x03\x27\x00\x35\x00\x9b\x01\xe2\x02\x3b\x02\xd1\xfe\xd1\xfe\x35\x03\x41\x03\x64\x02\xd1\xfe\x2c\x03\xd1\xfe\x40\x03\x3f\x03\x38\x03\xd1\xfe\x2f\x03\x97\x02\x9c\x02\x9d\x01\xd1\xfe\xe3\x00\xd1\xfe\x14\x03\x84\x03\xb9\x02\x29\x00\x3d\x00\x3e\x00\xd1\xfe\xe9\x01\xb7\x02\x2c\x00\x2d\x00\x9f\x02\x2e\x00\x2f\x00\x7e\x03\x3f\x00\xbe\x00\x31\x00\x75\x03\x32\x00\x40\x00\x66\x03\x41\x00\x35\x00\xbe\x00\x65\x03\x62\x03\x97\x00\xc0\x00\x35\x00\x36\x00\x8b\xff\x37\x00\x61\x03\x5d\x03\x8b\xff\xc0\x00\x8b\xff\x8b\xff\x8b\xff\xe2\x02\x8b\xff\x5c\x03\xa5\x03\x8b\xff\x8b\xff\x8b\xff\x8b\xff\xbe\x00\x8b\xff\x8b\xff\x8b\xff\x8b\xff\x8b\xff\xa4\x03\x8b\xff\x8b\xff\x8b\xff\x8b\xff\x8b\xff\xc0\x00\x8b\xff\x8b\xff\x8b\xff\x0c\x02\x35\x00\x8b\xff\x8b\xff\xa1\x03\x8b\xff\x8b\xff\x8b\xff\x0c\x02\xa0\x03\x8b\xff\x80\x03\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x14\x02\x9f\x03\x0e\x02\x9b\x03\xe3\x00\x9d\x03\x35\x00\x9a\x03\x13\x02\x98\x03\x0e\x02\x97\x03\xe3\x00\x35\x00\x90\x03\x2f\x03\x0c\x02\x8d\x03\x57\x03\x44\x00\x8b\x03\x8b\xff\x8b\xff\x8b\xff\xbf\x03\xe9\x01\xb0\x03\x8b\xff\x8b\xff\xb3\x03\x8b\xff\x8b\xff\x0d\x02\x8b\xff\x0e\x02\x8b\xff\xe3\x00\x8b\xff\x8b\xff\xe2\x02\x8b\xff\xe2\x02\x35\x00\xf7\x01\xbe\x03\x8b\xff\x35\x00\x8b\xff\x8b\xff\x82\x00\x8b\xff\x08\x00\xdd\x00\x83\x00\xf4\x00\x84\x00\x1f\x00\x85\x00\xa3\x00\x01\x02\x4a\x00\xfa\x01\x86\x00\x87\x00\x88\x00\x89\x00\xbe\x00\x20\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xfe\x01\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\xc0\x00\x21\x00\x22\x00\x93\x00\xfb\x01\xf9\x01\x94\x00\x25\x00\x1f\x00\x26\x00\x95\x00\x96\x00\xf8\x01\xf7\x01\x27\x00\xf5\x01\xc1\x01\xec\x01\xe4\x01\x20\x00\x5a\x03\xa3\x02\xa4\x02\xa5\x02\xa6\x02\xc6\x01\xe9\x01\xbd\x01\xbe\x00\xb6\x01\xa4\x01\x21\x00\x22\x00\x23\x00\xb5\x01\x24\x00\x0c\x02\x25\x00\x82\x01\x26\x00\xc0\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x28\x00\xae\x01\x2c\x00\x2d\x00\x7c\x01\x2e\x00\x2f\x00\x07\x03\x3f\x00\x0e\x02\x31\x00\xe3\x00\x32\x00\x40\x00\x72\x01\x41\x00\x99\x02\xbe\x00\x95\x02\x8a\x02\x97\x00\x89\x02\x35\x00\x36\x00\x87\x02\x37\x00\x29\x00\x2a\x00\x2b\x00\xc0\x00\x86\x02\x0c\x02\x2c\x00\x2d\x00\x83\x02\x2e\x00\x2f\x00\x1f\x00\x30\x00\x80\x02\x31\x00\x7c\x02\x32\x00\x33\x00\x79\x02\x34\x00\x76\x02\x04\x03\xbb\x00\x0e\x02\x72\x01\xe3\x00\x35\x00\x36\x00\xbc\x00\x37\x00\x73\x02\x52\x02\x44\x02\x51\x02\x21\x00\x22\x00\x23\x00\x4f\x02\x47\x02\x0c\x02\x25\x00\x1f\x00\x26\x00\x50\x02\x43\x02\x42\x02\x41\x02\x27\x00\x40\x02\x39\x02\x37\x02\x2a\x02\x20\x00\x16\x02\x36\x02\xff\x02\x30\x02\x0e\x02\xe6\x02\xe3\x00\xd2\x02\x09\x00\xd5\x02\xd0\x02\x21\x00\x22\x00\x23\x00\xc5\x02\xa7\x00\xca\x02\x25\x00\x0c\x00\x26\x00\xc7\x02\x29\x00\x2a\x00\x2b\x00\x27\x00\xc4\x02\xc3\x02\x2c\x00\x2d\x00\xb7\x02\x2e\x00\x2f\x00\xc2\x02\x30\x00\xa1\x00\x31\x00\x79\x02\x32\x00\x33\x00\xf2\x00\x34\x00\x14\x00\x15\x00\xb5\x02\x16\x00\xd7\x00\x9f\x02\x35\x00\x36\x00\x42\x03\x37\x00\x29\x00\x2a\x00\x2b\x00\x3d\x03\x3c\x03\x38\x03\xb1\x00\x2d\x00\x3b\x03\x2e\x00\x2f\x00\x1f\x00\x30\x00\x24\x03\x31\x00\xc9\x00\x32\x00\x33\x00\x9e\x00\x34\x00\x9f\x00\x2d\x03\x20\x00\x99\x02\x21\x03\x24\x03\x35\x00\x36\x00\xb7\x02\x37\x00\xb5\x02\x9f\x02\xca\x00\xcb\x00\x21\x00\x22\x00\x23\x00\xcc\x00\x21\x03\x7c\x03\x25\x00\x1f\x00\x26\x00\x9f\x01\xca\x00\xcb\x00\xa2\x03\x27\x00\xa0\x01\xcc\x00\xa1\x01\xa1\x03\xbb\x00\x2f\x00\x62\x03\xcd\x00\x5e\x03\x35\x00\xbc\x00\x5d\x03\xce\x00\x9d\x03\xcf\x00\x9b\x03\x21\x00\x22\x00\x23\x00\x91\x03\x90\x03\x35\x00\x25\x00\x8b\x03\x26\x00\x8e\x03\x29\x00\x2a\x00\x2b\x00\x27\x00\xec\x01\x89\x03\x2c\x00\x2d\x00\xba\x03\x2e\x00\x2f\x00\xb1\x03\x30\x00\xb0\x03\x31\x00\xac\x03\x32\x00\x33\x00\x9e\x00\x34\x00\x9f\x00\x86\x03\xa3\x02\xa4\x02\xa5\x02\xa6\x02\x35\x00\x36\x00\xae\x03\x37\x00\x29\x00\x3d\x00\x3e\x00\xad\x03\xc1\x03\xc0\x03\x2c\x00\x2d\x00\xbf\x03\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x94\x01\x31\x00\xaa\x01\x32\x00\x40\x00\xbc\x03\x41\x00\xbb\x03\xc5\x03\x20\x00\xc4\x03\xc3\x03\x00\x00\x35\x00\x36\x00\xc2\x03\x37\x00\x00\x00\x00\x00\xca\x00\xcb\x00\x21\x00\x22\x00\x23\x00\xcc\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\xe5\x00\xca\x00\xcb\x00\x00\x00\x27\x00\xe6\x00\xcc\x00\xe7\x00\x00\x00\x20\x00\x2f\x00\x00\x00\xab\x01\x00\x00\x35\x00\x00\x00\x00\x00\xac\x01\x00\x00\xad\x01\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x35\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x9e\x00\x41\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x91\x01\x00\x00\x20\x00\x09\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\xbc\x01\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\xbb\x00\x12\x00\xf2\x00\x00\x00\x14\x00\x15\x00\xbc\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x9e\x00\x34\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x6a\x02\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x0a\x00\x00\x00\xf5\x02\xaa\x00\x21\x00\x22\x00\x23\x00\xf6\x02\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\xbb\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\xbc\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x9e\x00\x41\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x63\x02\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\xb3\x01\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x60\x01\x11\x00\x20\x00\x12\x00\xf2\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x9e\x00\x41\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x61\x02\x00\x00\x20\x00\x09\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\xbc\x01\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\xbe\x02\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x9e\x00\x34\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x86\x03\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x9e\x00\x34\x00\x9f\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\xbc\x01\x9c\x02\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x0c\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x36\xff\x2e\x00\x00\x00\x36\xff\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\xf0\x00\x41\x00\x14\x00\x15\x00\x00\x00\x16\x00\xd7\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x9b\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x9a\x02\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x0c\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\xa1\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x14\x00\x15\x00\x00\x00\x16\x00\x59\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x9b\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x00\x00\x97\x02\xb3\x01\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x98\x02\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x0c\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\xa1\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x14\x00\x15\x00\x00\x00\x16\x00\x66\x02\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x9b\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x0a\x00\x00\x00\xf3\x02\xaa\x00\x21\x00\x22\x00\x23\x00\x00\x00\xf4\x02\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\xa1\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x9b\x00\x00\x00\xbb\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\xbc\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x19\x03\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x68\x02\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\xda\x00\x10\x00\x11\x00\x20\x00\x12\x00\x39\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\xb3\x00\x10\x00\x11\x00\x20\x00\x12\x00\x39\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\xc0\x01\x10\x00\x11\x00\x20\x00\x12\x00\x39\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\xbe\x01\x10\x00\x11\x00\x20\x00\x12\x00\x39\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x09\x00\x20\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\xa7\x00\x37\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\xb3\x01\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x60\x01\x11\x00\x00\x00\x12\x00\x20\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x09\x00\x20\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x0a\x00\x37\x00\xf7\x02\x0c\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\xf8\x02\x11\x00\x00\x00\x12\x00\x20\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x00\x00\x1a\x03\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x34\xff\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x18\x03\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x2a\x00\x2b\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\xa7\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x00\x00\x97\x02\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x17\x03\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x09\x00\x00\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x16\x03\xac\x00\x00\x00\x25\x00\x8b\xff\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x8b\xff\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x8b\xff\x8b\xff\x8b\xff\x00\x00\x00\x00\x00\x00\x8b\xff\x00\x00\x8b\xff\x00\x00\x29\x00\x2a\x00\x2b\x00\x8b\xff\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x8b\xff\x8b\xff\x8b\xff\x00\x00\x00\x00\x00\x00\x8b\xff\x8b\xff\x00\x00\x8b\xff\x8b\xff\x1f\x00\x8b\xff\x00\x00\x8b\xff\x00\x00\x8b\xff\x8b\xff\x00\x00\x8b\xff\x00\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x8b\xff\x8b\xff\x00\x00\x8b\xff\x00\x00\x00\x00\x00\x00\xaa\x00\x21\x00\x22\x00\x23\x00\x15\x03\xac\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x20\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x09\x00\x00\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x00\x00\x00\x00\xef\x00\x11\x00\x20\x00\x12\x00\xf0\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x09\x00\x20\x00\x00\x00\x00\x00\x92\x01\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x0c\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x77\x02\x11\x00\x00\x00\x12\x00\x20\x00\x78\x02\x14\x00\x15\x00\x00\x00\x16\x00\x8b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x1f\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x09\x00\x20\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\xef\x00\x11\x00\x00\x00\x12\x00\x20\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x2a\x00\x2b\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x2f\x00\x00\x00\x30\x00\x00\x00\x31\x00\x00\x00\x32\x00\x33\x00\x00\x00\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\xbf\x01\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\xd6\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\xd7\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x09\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x0c\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x1f\x00\x26\x00\x00\x00\x00\x00\x00\x00\x00\x00\x27\x00\x85\x02\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\xd6\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\xd7\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x21\x00\x22\x00\x23\x00\x2c\x00\x2d\x00\x00\x00\x2e\x00\x1f\x00\x26\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x27\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x2f\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\xb1\x00\x2d\x00\x00\x00\x2e\x00\x00\x00\x09\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x0a\x00\x41\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x00\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\xca\x00\xcb\x00\x00\x00\x09\x00\x00\x00\xcc\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x0a\x00\x9f\x01\x0b\x00\x0c\x00\x00\x00\x00\x00\xa0\x01\x47\x00\xa1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x7d\x01\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x09\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x1d\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x03\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\xd6\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\xd7\x00\x00\x00\x00\x00\x7e\x01\x7f\x01\x00\x00\x7d\x01\x0e\x00\x09\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\xaa\x00\x16\x00\x17\x00\x00\x00\xab\x00\xac\x00\x21\x00\x22\x00\x23\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x26\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaf\x02\x7f\x01\x21\x00\x22\x00\x23\x00\x87\x01\x00\x00\x00\x00\x00\x00\x00\x00\x26\x00\x00\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd3\x00\x00\x00\x31\x00\x00\x00\x32\x00\xd4\x00\x00\x00\xd5\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x00\x00\x00\x31\x00\x00\x00\x32\x00\xd1\x00\x00\x00\xd2\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x5f\x02\x00\x00\x41\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x40\x00\x00\x00\x41\x00\x21\x00\x22\x00\x23\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x26\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\x00\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x00\xbe\x00\x31\x00\x00\x00\x32\x00\x83\x03\x00\x00\x41\x00\x0a\x00\x00\x00\xbf\x00\xca\x00\xcb\x00\xc0\x00\x35\x00\x36\x00\xcc\x00\x37\x00\x29\x00\x3d\x00\x3e\x00\x00\x00\xe5\x00\x00\x00\x2c\x00\x2d\x00\x00\x00\xe6\x00\x00\x00\x2a\x02\x3f\x00\x00\x00\x31\x00\x00\x00\x32\x00\x00\x00\x35\x00\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\x36\x00\x00\x00\x37\x00\x00\x00\xc1\x00\x00\x00\x00\x00\x09\x00\x00\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x00\xb5\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xb6\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x9f\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x0a\x00\x88\x01\x0b\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xb6\x00\x11\x00\x00\x00\x12\x00\x13\x00\x0c\x00\x14\x00\x15\x00\x9f\x00\x16\x00\x17\x00\xb5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x60\x01\x11\x00\x85\x01\x12\x00\x00\x00\x0c\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\xb5\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x01\x11\x00\x88\x01\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\xa9\x00\xaa\x00\x00\x00\x00\x00\x85\x01\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x9c\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\xb1\x00\xb2\x00\x0a\x00\x00\x00\xa9\x00\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x99\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x02\x18\x00\x19\x00\x1a\x00\x1b\x00\xae\x00\xaf\x00\x0a\x00\x00\x00\x67\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\x68\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x92\x01\x00\x00\x8d\x02\x8e\x02\x8f\x02\x0a\x00\x00\x00\x69\x01\xaa\x00\xae\x00\xaf\x00\x00\x00\x6a\x01\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x68\x02\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x69\x01\xaa\x00\xb1\x00\xb2\x00\x00\x00\x6a\x01\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x61\x02\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x69\x01\xaa\x00\xb1\x00\xb2\x00\x00\x00\x6a\x01\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x09\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x0a\x00\x00\x00\x69\x01\xaa\x00\x00\x00\x00\x00\x00\x00\x6a\x01\xac\x00\x00\x00\x00\x00\xb1\x00\xb2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x09\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x0a\x00\x00\x00\x67\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\x68\x01\x00\x00\x00\x00\xb1\x00\xb2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x09\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x0a\x00\x00\x00\x5c\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\xae\x00\xaf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x09\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x0a\x00\x00\x00\x5c\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\xb1\x00\xb2\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x09\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x0a\x00\x00\x00\x67\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\x68\x01\x00\x00\x00\x00\xae\x00\xaf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\xaa\x00\xae\x00\xaf\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x9c\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x87\x01\x09\x00\x00\x00\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x9c\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x84\x01\x0a\x00\x00\x00\x0b\x00\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x99\x00\x16\x00\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x86\x01\x0a\x00\x00\x00\x0b\x00\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\xad\x00\x11\x00\x09\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x99\x00\x16\x00\x17\x00\x00\x00\xaa\x00\x09\x00\x00\x00\x00\x00\xab\x00\xac\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x83\x01\xaa\x00\x00\x00\x00\x00\x00\x00\xab\x00\xac\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x5d\x01\x11\x00\x09\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x86\x01\xaa\x00\x09\x00\x00\x00\x00\x00\xab\x00\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\xaa\x00\x00\x00\x00\x00\x00\x00\x75\x02\xac\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x5d\x01\x11\x00\x09\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x83\x01\xaa\x00\x09\x00\x00\x00\x00\x00\x74\x02\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\x01\xaa\x00\x00\x00\x00\x00\x00\x00\x72\x02\xac\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x5d\x01\x11\x00\x09\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x86\x01\xaa\x00\x00\x00\x00\x00\x00\x00\x71\x02\xac\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5d\x01\x11\x00\x00\x00\x12\x00\x00\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x5e\x01\x09\x00\x00\x00\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x9c\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x9f\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x99\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x00\x98\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x9f\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xee\x00\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x01\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6f\x01\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x01\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9d\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x94\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5a\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x56\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4c\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd9\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x02\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x45\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2c\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x14\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0d\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x09\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x00\x00\x0a\x00\x00\x00\x0b\x00\x0c\x00\x00\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x75\x03\x0e\x00\x00\x00\x0f\x00\x10\x00\x11\x00\x00\x00\x12\x00\x13\x00\x00\x00\x14\x00\x15\x00\x00\x00\x16\x00\x17\x00\x1b\x02\x1c\x02\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1d\x02\xca\x00\xcb\x00\x00\x00\x00\x00\x1e\x02\xcc\x00\x1f\x02\x00\x00\x00\x00\x00\x00\x00\x00\xe5\x00\x00\x00\x35\x00\x00\x00\x00\x00\xe6\x00\x00\x00\xe7\x00\x1b\x02\x1c\x02\x00\x00\x00\x00\x00\x00\xcc\x00\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x02\x00\x00\x00\x00\x00\x00\x00\x00\x1e\x02\x00\x00\x1f\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x00\xca\x01\xcb\x01\xcc\x01\xcd\x01\xce\x01\xcf\x01\xd0\x01\xd1\x01\xd2\x01\xd3\x01\xd4\x01\xd5\x01\xd6\x01\xd7\x01\xd8\x01\xd9\x01\xda\x01\xdb\x01\xdc\x01\xdd\x01\xde\x01\xdf\x01\xe0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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
       -> Parser HappyAbsSyn)
    happyReduceArr = (Int, Int)
    -> [(Int,
         Int#
         -> Token
         -> Int#
         -> Happy_IntList
         -> HappyStk HappyAbsSyn
         -> Parser HappyAbsSyn)]
    -> Array
         Int
         (Int#
          -> Token
          -> Int#
          -> Happy_IntList
          -> HappyStk HappyAbsSyn
          -> Parser HappyAbsSyn)
    forall i e. Ix i => (i, i) -> [(i, e)] -> Array i e
    Happy_Data_Array.array (Int
    7, Int
    539) [
    	(Int
    7 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_7),
    	(Int
    8 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_8),
    	(Int
    9 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_9),
    	(Int
    10 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_10),
    	(Int
    11 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_11),
    	(Int
    12 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_12),
    	(Int
    13 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_13),
    	(Int
    14 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_14),
    	(Int
    15 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_15),
    	(Int
    16 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_16),
    	(Int
    17 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_17),
    	(Int
    18 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_18),
    	(Int
    19 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_19),
    	(Int
    20 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_20),
    	(Int
    21 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_21),
    	(Int
    22 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_22),
    	(Int
    23 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_23),
    	(Int
    24 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_24),
    	(Int
    25 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_25),
    	(Int
    26 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_26),
    	(Int
    27 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_27),
    	(Int
    28 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_28),
    	(Int
    29 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_29),
    	(Int
    30 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_30),
    	(Int
    31 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_31),
    	(Int
    32 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_32),
    	(Int
    33 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_33),
    	(Int
    34 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_34),
    	(Int
    35 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_35),
    	(Int
    36 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_36),
    	(Int
    37 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_37),
    	(Int
    38 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_38),
    	(Int
    39 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_39),
    	(Int
    40 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_40),
    	(Int
    41 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_41),
    	(Int
    42 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_42),
    	(Int
    43 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_43),
    	(Int
    44 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_44),
    	(Int
    45 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_45),
    	(Int
    46 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_46),
    	(Int
    47 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_47),
    	(Int
    48 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_48),
    	(Int
    49 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_49),
    	(Int
    50 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_50),
    	(Int
    51 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_51),
    	(Int
    52 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_52),
    	(Int
    53 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_53),
    	(Int
    54 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_54),
    	(Int
    55 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_55),
    	(Int
    56 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_56),
    	(Int
    57 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_57),
    	(Int
    58 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_58),
    	(Int
    59 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_59),
    	(Int
    60 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_60),
    	(Int
    61 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_61),
    	(Int
    62 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_62),
    	(Int
    63 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_63),
    	(Int
    64 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_64),
    	(Int
    65 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_65),
    	(Int
    66 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_66),
    	(Int
    67 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_67),
    	(Int
    68 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_68),
    	(Int
    69 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_69),
    	(Int
    70 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_70),
    	(Int
    71 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_71),
    	(Int
    72 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_72),
    	(Int
    73 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_73),
    	(Int
    74 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_74),
    	(Int
    75 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_75),
    	(Int
    76 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_76),
    	(Int
    77 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_77),
    	(Int
    78 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_78),
    	(Int
    79 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_79),
    	(Int
    80 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_80),
    	(Int
    81 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_81),
    	(Int
    82 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_82),
    	(Int
    83 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_83),
    	(Int
    84 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_84),
    	(Int
    85 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_85),
    	(Int
    86 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_86),
    	(Int
    87 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_87),
    	(Int
    88 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_88),
    	(Int
    89 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_89),
    	(Int
    90 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_90),
    	(Int
    91 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_91),
    	(Int
    92 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_92),
    	(Int
    93 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_93),
    	(Int
    94 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_94),
    	(Int
    95 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_95),
    	(Int
    96 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_96),
    	(Int
    97 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_97),
    	(Int
    98 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_98),
    	(Int
    99 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_99),
    	(Int
    100 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_100),
    	(Int
    101 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_101),
    	(Int
    102 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_102),
    	(Int
    103 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_103),
    	(Int
    104 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_104),
    	(Int
    105 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_105),
    	(Int
    106 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_106),
    	(Int
    107 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_107),
    	(Int
    108 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_108),
    	(Int
    109 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_109),
    	(Int
    110 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_110),
    	(Int
    111 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_111),
    	(Int
    112 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_112),
    	(Int
    113 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_113),
    	(Int
    114 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_114),
    	(Int
    115 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_115),
    	(Int
    116 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_116),
    	(Int
    117 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_117),
    	(Int
    118 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_118),
    	(Int
    119 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_119),
    	(Int
    120 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_120),
    	(Int
    121 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_121),
    	(Int
    122 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_122),
    	(Int
    123 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_123),
    	(Int
    124 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_124),
    	(Int
    125 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_125),
    	(Int
    126 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_126),
    	(Int
    127 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_127),
    	(Int
    128 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_128),
    	(Int
    129 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_129),
    	(Int
    130 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_130),
    	(Int
    131 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_131),
    	(Int
    132 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_132),
    	(Int
    133 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_133),
    	(Int
    134 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_134),
    	(Int
    135 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_135),
    	(Int
    136 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_136),
    	(Int
    137 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_137),
    	(Int
    138 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_138),
    	(Int
    139 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_139),
    	(Int
    140 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_140),
    	(Int
    141 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_141),
    	(Int
    142 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_142),
    	(Int
    143 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_143),
    	(Int
    144 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_144),
    	(Int
    145 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_145),
    	(Int
    146 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_146),
    	(Int
    147 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_147),
    	(Int
    148 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_148),
    	(Int
    149 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_149),
    	(Int
    150 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_150),
    	(Int
    151 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_151),
    	(Int
    152 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_152),
    	(Int
    153 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_153),
    	(Int
    154 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_154),
    	(Int
    155 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_155),
    	(Int
    156 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_156),
    	(Int
    157 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_157),
    	(Int
    158 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_158),
    	(Int
    159 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_159),
    	(Int
    160 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_160),
    	(Int
    161 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_161),
    	(Int
    162 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_162),
    	(Int
    163 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_163),
    	(Int
    164 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_164),
    	(Int
    165 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_165),
    	(Int
    166 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_166),
    	(Int
    167 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_167),
    	(Int
    168 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_168),
    	(Int
    169 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_169),
    	(Int
    170 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_170),
    	(Int
    171 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_171),
    	(Int
    172 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_172),
    	(Int
    173 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_173),
    	(Int
    174 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_174),
    	(Int
    175 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_175),
    	(Int
    176 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_176),
    	(Int
    177 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_177),
    	(Int
    178 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_178),
    	(Int
    179 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_179),
    	(Int
    180 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_180),
    	(Int
    181 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_181),
    	(Int
    182 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_182),
    	(Int
    183 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_183),
    	(Int
    184 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_184),
    	(Int
    185 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_185),
    	(Int
    186 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_186),
    	(Int
    187 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_187),
    	(Int
    188 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_188),
    	(Int
    189 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_189),
    	(Int
    190 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_190),
    	(Int
    191 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_191),
    	(Int
    192 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_192),
    	(Int
    193 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_193),
    	(Int
    194 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_194),
    	(Int
    195 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_195),
    	(Int
    196 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_196),
    	(Int
    197 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_197),
    	(Int
    198 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_198),
    	(Int
    199 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_199),
    	(Int
    200 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_200),
    	(Int
    201 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_201),
    	(Int
    202 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_202),
    	(Int
    203 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_203),
    	(Int
    204 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_204),
    	(Int
    205 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_205),
    	(Int
    206 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_206),
    	(Int
    207 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_207),
    	(Int
    208 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_208),
    	(Int
    209 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_209),
    	(Int
    210 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_210),
    	(Int
    211 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_211),
    	(Int
    212 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_212),
    	(Int
    213 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_213),
    	(Int
    214 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_214),
    	(Int
    215 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_215),
    	(Int
    216 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_216),
    	(Int
    217 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_217),
    	(Int
    218 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_218),
    	(Int
    219 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_219),
    	(Int
    220 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_220),
    	(Int
    221 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_221),
    	(Int
    222 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_222),
    	(Int
    223 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_223),
    	(Int
    224 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_224),
    	(Int
    225 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_225),
    	(Int
    226 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_226),
    	(Int
    227 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_227),
    	(Int
    228 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_228),
    	(Int
    229 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_229),
    	(Int
    230 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_230),
    	(Int
    231 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_231),
    	(Int
    232 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_232),
    	(Int
    233 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_233),
    	(Int
    234 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_234),
    	(Int
    235 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_235),
    	(Int
    236 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_236),
    	(Int
    237 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_237),
    	(Int
    238 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_238),
    	(Int
    239 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_239),
    	(Int
    240 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_240),
    	(Int
    241 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_241),
    	(Int
    242 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_242),
    	(Int
    243 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_243),
    	(Int
    244 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_244),
    	(Int
    245 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_245),
    	(Int
    246 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_246),
    	(Int
    247 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_247),
    	(Int
    248 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_248),
    	(Int
    249 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_249),
    	(Int
    250 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_250),
    	(Int
    251 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_251),
    	(Int
    252 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_252),
    	(Int
    253 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_253),
    	(Int
    254 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_254),
    	(Int
    255 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_255),
    	(Int
    256 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_256),
    	(Int
    257 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_257),
    	(Int
    258 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_258),
    	(Int
    259 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_259),
    	(Int
    260 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_260),
    	(Int
    261 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_261),
    	(Int
    262 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_262),
    	(Int
    263 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_263),
    	(Int
    264 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_264),
    	(Int
    265 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_265),
    	(Int
    266 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_266),
    	(Int
    267 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_267),
    	(Int
    268 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_268),
    	(Int
    269 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_269),
    	(Int
    270 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_270),
    	(Int
    271 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_271),
    	(Int
    272 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_272),
    	(Int
    273 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_273),
    	(Int
    274 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_274),
    	(Int
    275 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_275),
    	(Int
    276 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_276),
    	(Int
    277 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_277),
    	(Int
    278 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_278),
    	(Int
    279 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_279),
    	(Int
    280 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_280),
    	(Int
    281 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_281),
    	(Int
    282 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_282),
    	(Int
    283 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_283),
    	(Int
    284 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_284),
    	(Int
    285 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_285),
    	(Int
    286 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_286),
    	(Int
    287 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_287),
    	(Int
    288 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_288),
    	(Int
    289 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_289),
    	(Int
    290 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_290),
    	(Int
    291 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_291),
    	(Int
    292 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_292),
    	(Int
    293 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_293),
    	(Int
    294 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_294),
    	(Int
    295 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_295),
    	(Int
    296 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_296),
    	(Int
    297 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_297),
    	(Int
    298 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_298),
    	(Int
    299 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_299),
    	(Int
    300 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_300),
    	(Int
    301 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_301),
    	(Int
    302 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_302),
    	(Int
    303 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_303),
    	(Int
    304 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_304),
    	(Int
    305 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_305),
    	(Int
    306 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_306),
    	(Int
    307 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_307),
    	(Int
    308 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_308),
    	(Int
    309 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_309),
    	(Int
    310 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_310),
    	(Int
    311 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_311),
    	(Int
    312 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_312),
    	(Int
    313 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_313),
    	(Int
    314 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_314),
    	(Int
    315 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_315),
    	(Int
    316 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_316),
    	(Int
    317 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_317),
    	(Int
    318 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_318),
    	(Int
    319 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_319),
    	(Int
    320 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_320),
    	(Int
    321 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_321),
    	(Int
    322 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_322),
    	(Int
    323 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_323),
    	(Int
    324 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_324),
    	(Int
    325 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_325),
    	(Int
    326 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_326),
    	(Int
    327 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_327),
    	(Int
    328 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_328),
    	(Int
    329 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_329),
    	(Int
    330 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_330),
    	(Int
    331 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_331),
    	(Int
    332 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_332),
    	(Int
    333 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_333),
    	(Int
    334 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_334),
    	(Int
    335 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_335),
    	(Int
    336 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_336),
    	(Int
    337 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_337),
    	(Int
    338 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_338),
    	(Int
    339 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_339),
    	(Int
    340 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_340),
    	(Int
    341 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_341),
    	(Int
    342 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_342),
    	(Int
    343 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_343),
    	(Int
    344 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_344),
    	(Int
    345 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_345),
    	(Int
    346 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_346),
    	(Int
    347 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_347),
    	(Int
    348 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_348),
    	(Int
    349 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_349),
    	(Int
    350 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_350),
    	(Int
    351 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_351),
    	(Int
    352 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_352),
    	(Int
    353 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_353),
    	(Int
    354 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_354),
    	(Int
    355 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_355),
    	(Int
    356 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_356),
    	(Int
    357 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_357),
    	(Int
    358 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_358),
    	(Int
    359 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_359),
    	(Int
    360 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_360),
    	(Int
    361 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_361),
    	(Int
    362 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_362),
    	(Int
    363 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_363),
    	(Int
    364 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_364),
    	(Int
    365 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_365),
    	(Int
    366 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_366),
    	(Int
    367 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_367),
    	(Int
    368 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_368),
    	(Int
    369 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_369),
    	(Int
    370 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_370),
    	(Int
    371 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_371),
    	(Int
    372 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_372),
    	(Int
    373 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_373),
    	(Int
    374 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_374),
    	(Int
    375 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_375),
    	(Int
    376 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_376),
    	(Int
    377 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_377),
    	(Int
    378 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_378),
    	(Int
    379 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_379),
    	(Int
    380 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_380),
    	(Int
    381 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_381),
    	(Int
    382 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_382),
    	(Int
    383 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_383),
    	(Int
    384 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_384),
    	(Int
    385 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_385),
    	(Int
    386 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_386),
    	(Int
    387 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_387),
    	(Int
    388 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_388),
    	(Int
    389 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_389),
    	(Int
    390 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_390),
    	(Int
    391 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_391),
    	(Int
    392 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_392),
    	(Int
    393 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_393),
    	(Int
    394 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_394),
    	(Int
    395 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_395),
    	(Int
    396 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_396),
    	(Int
    397 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_397),
    	(Int
    398 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_398),
    	(Int
    399 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_399),
    	(Int
    400 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_400),
    	(Int
    401 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_401),
    	(Int
    402 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_402),
    	(Int
    403 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_403),
    	(Int
    404 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_404),
    	(Int
    405 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_405),
    	(Int
    406 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_406),
    	(Int
    407 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_407),
    	(Int
    408 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_408),
    	(Int
    409 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_409),
    	(Int
    410 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_410),
    	(Int
    411 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_411),
    	(Int
    412 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_412),
    	(Int
    413 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_413),
    	(Int
    414 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_414),
    	(Int
    415 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_415),
    	(Int
    416 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_416),
    	(Int
    417 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_417),
    	(Int
    418 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_418),
    	(Int
    419 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_419),
    	(Int
    420 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_420),
    	(Int
    421 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_421),
    	(Int
    422 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_422),
    	(Int
    423 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_423),
    	(Int
    424 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_424),
    	(Int
    425 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_425),
    	(Int
    426 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_426),
    	(Int
    427 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_427),
    	(Int
    428 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_428),
    	(Int
    429 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_429),
    	(Int
    430 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_430),
    	(Int
    431 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_431),
    	(Int
    432 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_432),
    	(Int
    433 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_433),
    	(Int
    434 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_434),
    	(Int
    435 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_435),
    	(Int
    436 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_436),
    	(Int
    437 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_437),
    	(Int
    438 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_438),
    	(Int
    439 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_439),
    	(Int
    440 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_440),
    	(Int
    441 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_441),
    	(Int
    442 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_442),
    	(Int
    443 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_443),
    	(Int
    444 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_444),
    	(Int
    445 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_445),
    	(Int
    446 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_446),
    	(Int
    447 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_447),
    	(Int
    448 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_448),
    	(Int
    449 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_449),
    	(Int
    450 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_450),
    	(Int
    451 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_451),
    	(Int
    452 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_452),
    	(Int
    453 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_453),
    	(Int
    454 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_454),
    	(Int
    455 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_455),
    	(Int
    456 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_456),
    	(Int
    457 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_457),
    	(Int
    458 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_458),
    	(Int
    459 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_459),
    	(Int
    460 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_460),
    	(Int
    461 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_461),
    	(Int
    462 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_462),
    	(Int
    463 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_463),
    	(Int
    464 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_464),
    	(Int
    465 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_465),
    	(Int
    466 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_466),
    	(Int
    467 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_467),
    	(Int
    468 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_468),
    	(Int
    469 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_469),
    	(Int
    470 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_470),
    	(Int
    471 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_471),
    	(Int
    472 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_472),
    	(Int
    473 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_473),
    	(Int
    474 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_474),
    	(Int
    475 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_475),
    	(Int
    476 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_476),
    	(Int
    477 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_477),
    	(Int
    478 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_478),
    	(Int
    479 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_479),
    	(Int
    480 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_480),
    	(Int
    481 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_481),
    	(Int
    482 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_482),
    	(Int
    483 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_483),
    	(Int
    484 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_484),
    	(Int
    485 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_485),
    	(Int
    486 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_486),
    	(Int
    487 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_487),
    	(Int
    488 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_488),
    	(Int
    489 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_489),
    	(Int
    490 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_490),
    	(Int
    491 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_491),
    	(Int
    492 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_492),
    	(Int
    493 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_493),
    	(Int
    494 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_494),
    	(Int
    495 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_495),
    	(Int
    496 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_496),
    	(Int
    497 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_497),
    	(Int
    498 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_498),
    	(Int
    499 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_499),
    	(Int
    500 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_500),
    	(Int
    501 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_501),
    	(Int
    502 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_502),
    	(Int
    503 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_503),
    	(Int
    504 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_504),
    	(Int
    505 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_505),
    	(Int
    506 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_506),
    	(Int
    507 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_507),
    	(Int
    508 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_508),
    	(Int
    509 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_509),
    	(Int
    510 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_510),
    	(Int
    511 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_511),
    	(Int
    512 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_512),
    	(Int
    513 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_513),
    	(Int
    514 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_514),
    	(Int
    515 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_515),
    	(Int
    516 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_516),
    	(Int
    517 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_517),
    	(Int
    518 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_518),
    	(Int
    519 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_519),
    	(Int
    520 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_520),
    	(Int
    521 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_521),
    	(Int
    522 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_522),
    	(Int
    523 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_523),
    	(Int
    524 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_524),
    	(Int
    525 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_525),
    	(Int
    526 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_526),
    	(Int
    527 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_527),
    	(Int
    528 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_528),
    	(Int
    529 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_529),
    	(Int
    530 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_530),
    	(Int
    531 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_531),
    	(Int
    532 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_532),
    	(Int
    533 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_533),
    	(Int
    534 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_534),
    	(Int
    535 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_535),
    	(Int
    536 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_536),
    	(Int
    537 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_537),
    	(Int
    538 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_538),
    	(Int
    539 , Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_539)
    	]

    happy_n_terms :: Int
    happy_n_terms = Int
    102 :: Prelude.Int
    happy_n_nonterms :: Int
    happy_n_nonterms = Int
    182 :: Prelude.Int

    happyReduce_7 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_7 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_7 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    0# HappyAbsSyn -> HappyAbsSyn
    happyReduction_7
    happyReduction_7 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_7 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap11
    happyOut11 HappyAbsSyn
    happy_x_1 of { (HappyWrap11 [Token]
    happy_var_1) ->
    	[Token] -> HappyAbsSyn
    happyIn10
    		 ([Token] -> [Token]
    forall a. [a] -> [a]
    reverse [Token]
    happy_var_1
    	)}

    happyReduce_8 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_8 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_8 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    1# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_8
    happyReduction_8 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_8 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap11
    happyOut11 HappyAbsSyn
    happy_x_1 of { (HappyWrap11 [Token]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap12
    happyOut12 HappyAbsSyn
    happy_x_2 of { (HappyWrap12 Token
    happy_var_2) ->
    	[Token] -> HappyAbsSyn
    happyIn11
    		 (Token
    happy_var_2 Token -> [Token] -> [Token]
    forall a. a -> [a] -> [a]
    : [Token]
    happy_var_1
    	)}}

    happyReduce_9 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_9 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_9 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    1# HappyAbsSyn
    happyReduction_9
    happyReduction_9 :: HappyAbsSyn
    happyReduction_9  =  [Token] -> HappyAbsSyn
    happyIn11
    		 ([]
    	)

    happyReduce_10 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_10 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_10 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_10
    happyReduction_10 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_10 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwAbstract Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwAbstract Interval
    happy_var_1
    	)}

    happyReduce_11 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_11 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_11 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_11
    happyReduction_11 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_11 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwCoData Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwCoData Interval
    happy_var_1
    	)}

    happyReduce_12 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_12 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_12 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_12
    happyReduction_12 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_12 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwCoInductive Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwCoInductive Interval
    happy_var_1
    	)}

    happyReduce_13 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_13 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_13 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_13
    happyReduction_13 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_13 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwConstructor Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwConstructor Interval
    happy_var_1
    	)}

    happyReduce_14 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_14 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_14 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_14
    happyReduction_14 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_14 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwData Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwData Interval
    happy_var_1
    	)}

    happyReduce_15 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_15 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_15 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_15
    happyReduction_15 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_15 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwDo Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwDo Interval
    happy_var_1
    	)}

    happyReduce_16 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_16 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_16 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_16
    happyReduction_16 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_16 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwEta Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwEta Interval
    happy_var_1
    	)}

    happyReduce_17 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_17 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_17 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_17
    happyReduction_17 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_17 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwField Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwField Interval
    happy_var_1
    	)}

    happyReduce_18 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_18 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_18 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_18
    happyReduction_18 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_18 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwForall Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwForall Interval
    happy_var_1
    	)}

    happyReduce_19 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_19 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_19 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_19
    happyReduction_19 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_19 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwHiding Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwHiding Interval
    happy_var_1
    	)}

    happyReduce_20 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_20 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_20 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_20
    happyReduction_20 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_20 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwImport Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwImport Interval
    happy_var_1
    	)}

    happyReduce_21 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_21 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_21 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_21
    happyReduction_21 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_21 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwIn Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwIn Interval
    happy_var_1
    	)}

    happyReduce_22 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_22 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_22 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_22
    happyReduction_22 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_22 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInductive Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInductive Interval
    happy_var_1
    	)}

    happyReduce_23 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_23 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_23 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_23
    happyReduction_23 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_23 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfix Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInfix Interval
    happy_var_1
    	)}

    happyReduce_24 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_24 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_24 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_24
    happyReduction_24 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_24 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixL Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInfixL Interval
    happy_var_1
    	)}

    happyReduce_25 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_25 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_25 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_25
    happyReduction_25 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_25 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixR Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInfixR Interval
    happy_var_1
    	)}

    happyReduce_26 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_26 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_26 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_26
    happyReduction_26 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_26 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInstance Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInstance Interval
    happy_var_1
    	)}

    happyReduce_27 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_27 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_27 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_27
    happyReduction_27 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_27 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwLet Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwLet Interval
    happy_var_1
    	)}

    happyReduce_28 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_28 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_28 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_28
    happyReduction_28 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_28 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwMacro Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwMacro Interval
    happy_var_1
    	)}

    happyReduce_29 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_29 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_29 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_29
    happyReduction_29 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_29 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwModule Interval
    happy_var_1
    	)}

    happyReduce_30 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_30 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_30 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_30
    happyReduction_30 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_30 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInterleaved Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwInterleaved Interval
    happy_var_1
    	)}

    happyReduce_31 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_31 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_31 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_31
    happyReduction_31 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_31 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwMutual Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwMutual Interval
    happy_var_1
    	)}

    happyReduce_32 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_32 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_32 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_32
    happyReduction_32 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_32 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNoEta Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNoEta Interval
    happy_var_1
    	)}

    happyReduce_33 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_33 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_33 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_33
    happyReduction_33 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_33 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOpen Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwOpen Interval
    happy_var_1
    	)}

    happyReduce_34 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_34 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_34 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_34
    happyReduction_34 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_34 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOverlap Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwOverlap Interval
    happy_var_1
    	)}

    happyReduce_35 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_35 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_35 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_35
    happyReduction_35 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_35 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPatternSyn Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPatternSyn Interval
    happy_var_1
    	)}

    happyReduce_36 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_36 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_36 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_36
    happyReduction_36 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_36 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPostulate Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPostulate Interval
    happy_var_1
    	)}

    happyReduce_37 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_37 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_37 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_37
    happyReduction_37 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_37 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPrimitive Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPrimitive Interval
    happy_var_1
    	)}

    happyReduce_38 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_38 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_38 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_38
    happyReduction_38 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_38 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPrivate Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPrivate Interval
    happy_var_1
    	)}

    happyReduce_39 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_39 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_39 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_39
    happyReduction_39 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_39 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPublic Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPublic Interval
    happy_var_1
    	)}

    happyReduce_40 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_40 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_40 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_40
    happyReduction_40 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_40 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwQuote Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwQuote Interval
    happy_var_1
    	)}

    happyReduce_41 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_41 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_41 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_41
    happyReduction_41 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_41 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwQuoteTerm Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwQuoteTerm Interval
    happy_var_1
    	)}

    happyReduce_42 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_42 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_42 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_42
    happyReduction_42 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_42 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwRecord Interval
    happy_var_1
    	)}

    happyReduce_43 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_43 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_43 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_43
    happyReduction_43 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_43 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRenaming Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwRenaming Interval
    happy_var_1
    	)}

    happyReduce_44 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_44 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_44 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_44
    happyReduction_44 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_44 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRewrite Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwRewrite Interval
    happy_var_1
    	)}

    happyReduce_45 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_45 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_45 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_45
    happyReduction_45 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_45 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwSyntax Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwSyntax Interval
    happy_var_1
    	)}

    happyReduce_46 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_46 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_46 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_46
    happyReduction_46 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_46 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwTactic Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwTactic Interval
    happy_var_1
    	)}

    happyReduce_47 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_47 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_47 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_47
    happyReduction_47 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_47 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwTo Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwTo Interval
    happy_var_1
    	)}

    happyReduce_48 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_48 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_48 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_48
    happyReduction_48 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_48 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquote Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwUnquote Interval
    happy_var_1
    	)}

    happyReduce_49 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_49 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_49 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_49
    happyReduction_49 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_49 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquoteDecl Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwUnquoteDecl Interval
    happy_var_1
    	)}

    happyReduce_50 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_50 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_50 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_50
    happyReduction_50 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_50 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquoteDef Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwUnquoteDef Interval
    happy_var_1
    	)}

    happyReduce_51 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_51 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_51 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_51
    happyReduction_51 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_51 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUsing Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwUsing Interval
    happy_var_1
    	)}

    happyReduce_52 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_52 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_52 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_52
    happyReduction_52 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_52 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwVariable Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwVariable Interval
    happy_var_1
    	)}

    happyReduce_53 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_53 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_53 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_53
    happyReduction_53 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_53 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwWhere Interval
    happy_var_1
    	)}

    happyReduce_54 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_54 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_54 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_54
    happyReduction_54 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_54 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwWith Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwWith Interval
    happy_var_1
    	)}

    happyReduce_55 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_55 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_55 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_55
    happyReduction_55 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_55 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwBUILTIN Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwBUILTIN Interval
    happy_var_1
    	)}

    happyReduce_56 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_56 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_56 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_56
    happyReduction_56 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_56 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwCATCHALL Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwCATCHALL Interval
    happy_var_1
    	)}

    happyReduce_57 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_57 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_57 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_57
    happyReduction_57 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_57 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwCOMPILE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwCOMPILE Interval
    happy_var_1
    	)}

    happyReduce_58 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_58 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_58 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_58
    happyReduction_58 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_58 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwDISPLAY Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwDISPLAY Interval
    happy_var_1
    	)}

    happyReduce_59 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_59 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_59 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_59
    happyReduction_59 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_59 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwETA Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwETA Interval
    happy_var_1
    	)}

    happyReduce_60 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_60 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_60 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_60
    happyReduction_60 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_60 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwFOREIGN Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwFOREIGN Interval
    happy_var_1
    	)}

    happyReduce_61 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_61 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_61 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_61
    happyReduction_61 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_61 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwIMPOSSIBLE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwIMPOSSIBLE Interval
    happy_var_1
    	)}

    happyReduce_62 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_62 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_62 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_62
    happyReduction_62 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_62 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwINJECTIVE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwINJECTIVE Interval
    happy_var_1
    	)}

    happyReduce_63 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_63 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_63 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_63
    happyReduction_63 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_63 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwINLINE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwINLINE Interval
    happy_var_1
    	)}

    happyReduce_64 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_64 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_64 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_64
    happyReduction_64 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_64 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwMEASURE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwMEASURE Interval
    happy_var_1
    	)}

    happyReduce_65 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_65 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_65 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_65
    happyReduction_65 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_65 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNOINLINE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNOINLINE Interval
    happy_var_1
    	)}

    happyReduce_66 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_66 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_66 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_66
    happyReduction_66 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_66 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNO_POSITIVITY_CHECK Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNO_POSITIVITY_CHECK Interval
    happy_var_1
    	)}

    happyReduce_67 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_67 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_67 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_67
    happyReduction_67 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_67 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNO_TERMINATION_CHECK Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNO_TERMINATION_CHECK Interval
    happy_var_1
    	)}

    happyReduce_68 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_68 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_68 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_68
    happyReduction_68 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_68 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNO_UNIVERSE_CHECK Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNO_UNIVERSE_CHECK Interval
    happy_var_1
    	)}

    happyReduce_69 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_69 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_69 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_69
    happyReduction_69 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_69 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNON_TERMINATING Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNON_TERMINATING Interval
    happy_var_1
    	)}

    happyReduce_70 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_70 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_70 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_70
    happyReduction_70 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_70 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNON_COVERING Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwNON_COVERING Interval
    happy_var_1
    	)}

    happyReduce_71 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_71 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_71 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_71
    happyReduction_71 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_71 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOPTIONS Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwOPTIONS Interval
    happy_var_1
    	)}

    happyReduce_72 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_72 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_72 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_72
    happyReduction_72 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_72 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPOLARITY Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwPOLARITY Interval
    happy_var_1
    	)}

    happyReduce_73 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_73 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_73 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_73
    happyReduction_73 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_73 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwREWRITE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwREWRITE Interval
    happy_var_1
    	)}

    happyReduce_74 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_74 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_74 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_74
    happyReduction_74 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_74 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwSTATIC Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwSTATIC Interval
    happy_var_1
    	)}

    happyReduce_75 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_75 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_75 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_75
    happyReduction_75 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_75 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwTERMINATING Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwTERMINATING Interval
    happy_var_1
    	)}

    happyReduce_76 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_76 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_76 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_76
    happyReduction_76 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_76 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwWARNING_ON_IMPORT Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwWARNING_ON_IMPORT Interval
    happy_var_1
    	)}

    happyReduce_77 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_77 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_77 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_77
    happyReduction_77 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_77 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwWARNING_ON_USAGE Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Keyword -> Interval -> Token
    TokKeyword Keyword
    KwWARNING_ON_USAGE Interval
    happy_var_1
    	)}

    happyReduce_78 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_78 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_78 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_78
    happyReduction_78 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_78 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokTeX (Interval, [Char])
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 ((Interval, [Char]) -> Token
    TokTeX (Interval, [Char])
    happy_var_1
    	)}

    happyReduce_79 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_79 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_79 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_79
    happyReduction_79 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_79 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokComment (Interval, [Char])
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 ((Interval, [Char]) -> Token
    TokComment (Interval, [Char])
    happy_var_1
    	)}

    happyReduce_80 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_80 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_80 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_80
    happyReduction_80 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_80 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymEllipsis Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymEllipsis Interval
    happy_var_1
    	)}

    happyReduce_81 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_81 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_81 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_81
    happyReduction_81 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_81 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDotDot Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymDotDot Interval
    happy_var_1
    	)}

    happyReduce_82 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_82 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_82 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_82
    happyReduction_82 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_82 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDot Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymDot Interval
    happy_var_1
    	)}

    happyReduce_83 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_83 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_83 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_83
    happyReduction_83 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_83 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymSemi Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymSemi Interval
    happy_var_1
    	)}

    happyReduce_84 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_84 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_84 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_84
    happyReduction_84 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_84 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymColon Interval
    happy_var_1
    	)}

    happyReduce_85 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_85 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_85 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_85
    happyReduction_85 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_85 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymEqual Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymEqual Interval
    happy_var_1
    	)}

    happyReduce_86 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_86 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_86 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_86
    happyReduction_86 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_86 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymUnderscore Interval
    happy_var_1
    	)}

    happyReduce_87 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_87 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_87 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_87
    happyReduction_87 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_87 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymQuestionMark Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymQuestionMark Interval
    happy_var_1
    	)}

    happyReduce_88 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_88 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_88 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_88
    happyReduction_88 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_88 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymArrow Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymArrow Interval
    happy_var_1
    	)}

    happyReduce_89 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_89 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_89 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_89
    happyReduction_89 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_89 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymLambda Interval
    happy_var_1
    	)}

    happyReduce_90 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_90 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_90 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_90
    happyReduction_90 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_90 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymAs Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymAs Interval
    happy_var_1
    	)}

    happyReduce_91 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_91 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_91 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_91
    happyReduction_91 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_91 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymBar Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymBar Interval
    happy_var_1
    	)}

    happyReduce_92 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_92 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_92 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_92
    happyReduction_92 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_92 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1
    	)}

    happyReduce_93 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_93 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_93 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_93
    happyReduction_93 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_93 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymCloseParen Interval
    happy_var_1
    	)}

    happyReduce_94 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_94 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_94 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_94
    happyReduction_94 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_94 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenIdiomBracket Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymOpenIdiomBracket Interval
    happy_var_1
    	)}

    happyReduce_95 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_95 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_95 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_95
    happyReduction_95 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_95 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymCloseIdiomBracket Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymCloseIdiomBracket Interval
    happy_var_1
    	)}

    happyReduce_96 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_96 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_96 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_96
    happyReduction_96 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_96 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymEmptyIdiomBracket Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymEmptyIdiomBracket Interval
    happy_var_1
    	)}

    happyReduce_97 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_97 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_97 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_97
    happyReduction_97 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_97 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1
    	)}

    happyReduce_98 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_98 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_98 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_98
    happyReduction_98 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_98 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleCloseBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymDoubleCloseBrace Interval
    happy_var_1
    	)}

    happyReduce_99 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_99 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_99 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_99
    happyReduction_99 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_99 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1
    	)}

    happyReduce_100 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_100 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_100 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_100
    happyReduction_100 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_100 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_1
    	)}

    happyReduce_101 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_101 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_101 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_101
    happyReduction_101 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_101 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenVirtualBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymOpenVirtualBrace Interval
    happy_var_1
    	)}

    happyReduce_102 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_102 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_102 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_102
    happyReduction_102 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_102 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymCloseVirtualBrace Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymCloseVirtualBrace Interval
    happy_var_1
    	)}

    happyReduce_103 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_103 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_103 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_103
    happyReduction_103 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_103 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymVirtualSemi Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymVirtualSemi Interval
    happy_var_1
    	)}

    happyReduce_104 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_104 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_104 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_104
    happyReduction_104 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_104 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1
    	)}

    happyReduce_105 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_105 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_105 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_105
    happyReduction_105 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_105 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (Symbol -> Interval -> Token
    TokSymbol Symbol
    SymClosePragma Interval
    happy_var_1
    	)}

    happyReduce_106 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_106 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_106 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_106
    happyReduction_106 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_106 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokId (Interval, [Char])
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 ((Interval, [Char]) -> Token
    TokId (Interval, [Char])
    happy_var_1
    	)}

    happyReduce_107 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_107 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_107 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_107
    happyReduction_107 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_107 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokQId [(Interval, [Char])]
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 ([(Interval, [Char])] -> Token
    TokQId [(Interval, [Char])]
    happy_var_1
    	)}

    happyReduce_108 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_108 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_108 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_108
    happyReduction_108 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_108 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 ((Interval, [Char]) -> Token
    TokString (Interval, [Char])
    happy_var_1
    	)}

    happyReduce_109 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_109 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_109 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    2# HappyAbsSyn -> HappyAbsSyn
    happyReduction_109
    happyReduction_109 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_109 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokLiteral RLiteral
    happy_var_1) ->
    	Token -> HappyAbsSyn
    happyIn12
    		 (RLiteral -> Token
    TokLiteral RLiteral
    happy_var_1
    	)}

    happyReduce_110 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_110 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_110 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    3# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_110
    happyReduction_110 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_110 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap147
    happyOut147 HappyAbsSyn
    happy_x_2 of { (HappyWrap147 [Declaration]
    happy_var_2) ->
    	Module -> HappyAbsSyn
    happyIn13
    		 ([Declaration] -> Module
    takeOptionsPragmas [Declaration]
    happy_var_2
    	)}

    happyReduce_111 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_111 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_111 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    4# HappyAbsSyn
    happyReduction_111
    happyReduction_111 :: HappyAbsSyn
    happyReduction_111  =  () -> HappyAbsSyn
    happyIn14
    		 (()
    	)

    happyReduce_112 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_112 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_112 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    4# HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn
    happyReduction_112
    happyReduction_112 :: p -> HappyAbsSyn
    happyReduction_112 p
    happy_x_1
    	 =  () -> HappyAbsSyn
    happyIn14
    		 (()
    	)

    happyReduce_113 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_113 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_113 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    5# HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn
    happyReduction_113
    happyReduction_113 :: p -> HappyAbsSyn
    happyReduction_113 p
    happy_x_1
    	 =  () -> HappyAbsSyn
    happyIn15
    		 (()
    	)

    happyReduce_114 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_114 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_114 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    5# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {a} {p}. HappyStk a -> p -> Parser HappyAbsSyn
    happyReduction_114
    happyReduction_114 :: HappyStk a -> p -> Parser HappyAbsSyn
    happyReduction_114 (a
    happy_x_1 `HappyStk`
    	HappyStk a
    happyRest) p
    tk
    	 = Parser () -> (() -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((( Parser ()
    popBlock))
    	) (\()
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (() -> HappyAbsSyn
    happyIn15 ()
    r))

    happyReduce_115 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_115 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_115 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    6# HappyAbsSyn -> HappyAbsSyn
    happyReduction_115
    happyReduction_115 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_115 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymSemi Interval
    happy_var_1) ->
    	Interval -> HappyAbsSyn
    happyIn16
    		 (Interval
    happy_var_1
    	)}

    happyReduce_116 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_116 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_116 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    6# HappyAbsSyn -> HappyAbsSyn
    happyReduction_116
    happyReduction_116 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_116 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymVirtualSemi Interval
    happy_var_1) ->
    	Interval -> HappyAbsSyn
    happyIn16
    		 (Interval
    happy_var_1
    	)}

    happyReduce_117 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_117 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_117 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    0# Int#
    7# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p} {p}. p -> p -> Parser HappyAbsSyn
    happyReduction_117
    happyReduction_117 :: p -> p -> Parser HappyAbsSyn
    happyReduction_117 (p
    happyRest) p
    tk
    	 = Parser () -> (() -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((( Int -> Parser ()
    pushLexState Int
    imp_dir))
    	) (\()
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (() -> HappyAbsSyn
    happyIn17 ()
    r))

    happyReduce_118 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_118 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_118 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    8# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_118
    happyReduction_118 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_118 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Ranged Double)
    -> (Ranged Double -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokLiteral RLiteral
    happy_var_1) ->
    	( RLiteral -> (Literal -> Parser Double) -> Parser (Ranged Double)
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    t a -> (a -> m b) -> m (t b)
    forM RLiteral
    happy_var_1 ((Literal -> Parser Double) -> Parser (Ranged Double))
    -> (Literal -> Parser Double) -> Parser (Ranged Double)
    forall a b. (a -> b) -> a -> b
    $ \case
                       { LitNat   Integer
    i -> Double -> Parser Double
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Double -> Parser Double) -> Double -> Parser Double
    forall a b. (a -> b) -> a -> b
    $ Integer -> Double
    forall a. Num a => Integer -> a
    fromInteger Integer
    i
                       ; LitFloat Double
    d -> Double -> Parser Double
    forall (m :: * -> *) a. Monad m => a -> m a
    return Double
    d
                       ; Literal
    _          -> [Char] -> Parser Double
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser Double) -> [Char] -> Parser Double
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Expected floating point number"
                       })})
    	) (\Ranged Double
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Ranged Double -> HappyAbsSyn
    happyIn18 Ranged Double
    r))

    happyReduce_119 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_119 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_119 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    9# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_119
    happyReduction_119 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_119 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Name -> (Name -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokId (Interval, [Char])
    happy_var_1) ->
    	( (Interval, [Char]) -> Parser Name
    mkName (Interval, [Char])
    happy_var_1)})
    	) (\Name
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Name -> HappyAbsSyn
    happyIn19 Name
    r))

    happyReduce_120 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_120 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_120 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    10# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_120
    happyReduction_120 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_120 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_2 of { (HappyWrap20 List1 Name
    happy_var_2) ->
    	List1 Name -> HappyAbsSyn
    happyIn20
    		 (Name
    happy_var_1 Name -> List1 Name -> List1 Name
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Name
    happy_var_2
    	)}}

    happyReduce_121 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_121 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_121 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    10# HappyAbsSyn -> HappyAbsSyn
    happyReduction_121
    happyReduction_121 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_121 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	List1 Name -> HappyAbsSyn
    happyIn20
    		 (Name -> List1 Name
    forall el coll. Singleton el coll => el -> coll
    singleton Name
    happy_var_1
    	)}

    happyReduce_122 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_122 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_122 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    11# HappyAbsSyn -> HappyAbsSyn
    happyReduction_122
    happyReduction_122 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_122 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleCloseBrace Interval
    happy_var_1) ->
    	Range -> HappyAbsSyn
    happyIn21
    		 (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1
    	)}

    happyReduce_123 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_123 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_123 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    11# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_123
    happyReduction_123 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_123 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Range -> (Range -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_2) ->
    	(
          if Position' () -> Int32
    forall a. Position' a -> Int32
    posPos (Maybe (Position' ()) -> Position' ()
    forall a. HasCallStack => Maybe a -> a
    fromJust (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rEnd' (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_2))) Int32 -> Int32 -> Int32
    forall a. Num a => a -> a -> a
    -
             Position' () -> Int32
    forall a. Position' a -> Int32
    posPos (Maybe (Position' ()) -> Position' ()
    forall a. HasCallStack => Maybe a -> a
    fromJust (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1))) Int32 -> Int32 -> Bool
    forall a. Ord a => a -> a -> Bool
    > Int32
    2
          then Interval -> [Char] -> Parser Range
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Interval
    happy_var_2 [Char]
    "Expecting '}}', found separated '}'s."
          else Range -> Parser Range
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Range -> Parser Range) -> Range -> Parser Range
    forall a b. (a -> b) -> a -> b
    $ (Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2))}})
    	) (\Range
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Range -> HappyAbsSyn
    happyIn21 Range
    r))

    happyReduce_124 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_124 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_124 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    12# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_124
    happyReduction_124 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_124 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	Arg Name -> HappyAbsSyn
    happyIn22
    		 (Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict (Arg Name -> Arg Name) -> Arg Name -> Arg Name
    forall a b. (a -> b) -> a -> b
    $ Name -> Arg Name
    forall a. a -> Arg a
    defaultArg Name
    happy_var_2
    	)}

    happyReduce_125 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_125 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_125 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    12# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_125
    happyReduction_125 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_125 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	Arg Name -> HappyAbsSyn
    happyIn22
    		 (Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant (Arg Name -> Arg Name) -> Arg Name -> Arg Name
    forall a b. (a -> b) -> a -> b
    $ Name -> Arg Name
    forall a. a -> Arg a
    defaultArg Name
    happy_var_2
    	)}

    happyReduce_126 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_126 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_126 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    12# HappyAbsSyn -> HappyAbsSyn
    happyReduction_126
    happyReduction_126 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_126 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	Arg Name -> HappyAbsSyn
    happyIn22
    		 (Name -> Arg Name
    forall a. a -> Arg a
    defaultArg Name
    happy_var_1
    	)}

    happyReduce_127 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_127 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_127 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    13# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_127
    happyReduction_127 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_127 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap22
    happyOut22 HappyAbsSyn
    happy_x_1 of { (HappyWrap22 Arg Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    happy_x_2 of { (HappyWrap23 List1 (Arg Name)
    happy_var_2) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn23
    		 (Arg Name
    happy_var_1 Arg Name -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 (Arg Name)
    happy_var_2
    	)}}

    happyReduce_128 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_128 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_128 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    13# HappyAbsSyn -> HappyAbsSyn
    happyReduction_128
    happyReduction_128 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_128 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap22
    happyOut22 HappyAbsSyn
    happy_x_1 of { (HappyWrap22 Arg Name
    happy_var_1) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn23
    		 (Arg Name -> List1 (Arg Name)
    forall el coll. Singleton el coll => el -> coll
    singleton Arg Name
    happy_var_1
    	)}

    happyReduce_129 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_129 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_129 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    14# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_129
    happyReduction_129 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_129 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap22
    happyOut22 HappyAbsSyn
    happy_x_1 of { (HappyWrap22 Arg Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_2 of { (HappyWrap24 List1 (Arg Name)
    happy_var_2) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 (Arg Name
    happy_var_1 Arg Name -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 (Arg Name)
    happy_var_2
    	)}}

    happyReduce_130 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_130 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_130 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    14# HappyAbsSyn -> HappyAbsSyn
    happyReduction_130
    happyReduction_130 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_130 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap22
    happyOut22 HappyAbsSyn
    happy_x_1 of { (HappyWrap22 Arg Name
    happy_var_1) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 (Arg Name -> List1 (Arg Name)
    forall el coll. Singleton el coll => el -> coll
    singleton Arg Name
    happy_var_1
    	)}

    happyReduce_131 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_131 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_131 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_131
    happyReduction_131 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_131 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    happy_x_2 of { (HappyWrap23 List1 (Arg Name)
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_4 of { (HappyWrap24 List1 (Arg Name)
    happy_var_4) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Arg Name -> Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance List1 (Arg Name)
    happy_var_2 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_132 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_132 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_132 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    14# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_132
    happyReduction_132 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_132 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    happy_x_2 of { (HappyWrap23 List1 (Arg Name)
    happy_var_2) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Arg Name -> Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance List1 (Arg Name)
    happy_var_2
    	)}

    happyReduce_133 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_133 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_133 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_133
    happyReduction_133 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_133 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    happy_x_2 of { (HappyWrap23 List1 (Arg Name)
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_4 of { (HappyWrap24 List1 (Arg Name)
    happy_var_4) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Arg Name -> Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide List1 (Arg Name)
    happy_var_2 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_134 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_134 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_134 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    14# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_134
    happyReduction_134 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_134 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap23
    happyOut23 HappyAbsSyn
    happy_x_2 of { (HappyWrap23 List1 (Arg Name)
    happy_var_2) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Arg Name -> Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide List1 (Arg Name)
    happy_var_2
    	)}

    happyReduce_135 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_135 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_135 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_135
    happyReduction_135 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_135 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_5 of { (HappyWrap24 List1 (Arg Name)
    happy_var_5) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_136 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_136 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_136 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_136
    happyReduction_136 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_136 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_137 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_137 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_137 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_137
    happyReduction_137 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_137 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_5 of { (HappyWrap24 List1 (Arg Name)
    happy_var_5) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_138 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_138 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_138 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_138
    happyReduction_138 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_138 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_139 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_139 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_139 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_139
    happyReduction_139 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_139 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_5 of { (HappyWrap24 List1 (Arg Name)
    happy_var_5) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_140 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_140 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_140 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_140
    happyReduction_140 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_140 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    hide (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_141 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_141 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_141 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_141
    happyReduction_141 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_141 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_5 of { (HappyWrap24 List1 (Arg Name)
    happy_var_5) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3 List1 (Arg Name) -> List1 (Arg Name) -> List1 (Arg Name)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Name)
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_142 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_142 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_142 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_142
    happyReduction_142 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_142 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_3 of { (HappyWrap20 List1 Name
    happy_var_3) ->
    	List1 (Arg Name) -> HappyAbsSyn
    happyIn24
    		 ((Name -> Arg Name) -> List1 Name -> List1 (Arg Name)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (Arg Name -> Arg Name
    forall a. LensHiding a => a -> a
    makeInstance (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> Arg Name -> Arg Name
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict (Arg Name -> Arg Name) -> (Name -> Arg Name) -> Name -> Arg Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Name -> Arg Name
    forall a. a -> Arg a
    defaultArg) List1 Name
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_143 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_143 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_143 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    15# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_143
    happyReduction_143 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_143 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser ([Attr], List1 (Arg Name))
    -> (([Attr], List1 (Arg Name)) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap27
    happyOut27 HappyAbsSyn
    happy_x_1 of { (HappyWrap27 [Attr]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap24
    happyOut24 HappyAbsSyn
    happy_x_2 of { (HappyWrap24 List1 (Arg Name)
    happy_var_2) ->
    	( ([Attr]
    happy_var_1,) (List1 (Arg Name) -> ([Attr], List1 (Arg Name)))
    -> Parser (List1 (Arg Name)) -> Parser ([Attr], List1 (Arg Name))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` (Arg Name -> Parser (Arg Name))
    -> List1 (Arg Name) -> Parser (List1 (Arg Name))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM ([Attr] -> Arg Name -> Parser (Arg Name)
    forall a. LensAttribute a => [Attr] -> a -> Parser a
    applyAttrs [Attr]
    happy_var_1) List1 (Arg Name)
    happy_var_2)}})
    	) (\([Attr], List1 (Arg Name))
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (([Attr], List1 (Arg Name)) -> HappyAbsSyn
    happyIn25 ([Attr], List1 (Arg Name))
    r))

    happyReduce_144 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_144 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_144 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    16# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_144
    happyReduction_144 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_144 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Attr -> (Attr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymAs Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap55
    happyOut55 HappyAbsSyn
    happy_x_2 of { (HappyWrap55 Expr
    happy_var_2) ->
    	( Range -> Attr -> Attr
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2)) (Attr -> Attr) -> Parser Attr -> Parser Attr
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Expr -> Parser Attr
    toAttribute Expr
    happy_var_2)}})
    	) (\Attr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Attr -> HappyAbsSyn
    happyIn26 Attr
    r))

    happyReduce_145 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_145 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_145 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    17# HappyAbsSyn
    happyReduction_145
    happyReduction_145 :: HappyAbsSyn
    happyReduction_145  =  [Attr] -> HappyAbsSyn
    happyIn27
    		 ([]
    	)

    happyReduce_146 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_146 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_146 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    17# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_146
    happyReduction_146 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_146 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap27
    happyOut27 HappyAbsSyn
    happy_x_1 of { (HappyWrap27 [Attr]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap26
    happyOut26 HappyAbsSyn
    happy_x_2 of { (HappyWrap26 Attr
    happy_var_2) ->
    	[Attr] -> HappyAbsSyn
    happyIn27
    		 (Attr
    happy_var_2 Attr -> [Attr] -> [Attr]
    forall a. a -> [a] -> [a]
    : [Attr]
    happy_var_1
    	)}}

    happyReduce_147 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_147 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_147 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    18# HappyAbsSyn -> HappyAbsSyn
    happyReduction_147
    happyReduction_147 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_147 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap26
    happyOut26 HappyAbsSyn
    happy_x_1 of { (HappyWrap26 Attr
    happy_var_1) ->
    	List1 Attr -> HappyAbsSyn
    happyIn28
    		 (Attr -> List1 Attr
    forall el coll. Singleton el coll => el -> coll
    singleton Attr
    happy_var_1
    	)}

    happyReduce_148 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_148 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_148 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    18# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_148
    happyReduction_148 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_148 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_1 of { (HappyWrap28 List1 Attr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap26
    happyOut26 HappyAbsSyn
    happy_x_2 of { (HappyWrap26 Attr
    happy_var_2) ->
    	List1 Attr -> HappyAbsSyn
    happyIn28
    		 (Attr
    happy_var_2 Attr -> List1 Attr -> List1 Attr
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Attr
    happy_var_1
    	)}}

    happyReduce_149 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_149 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_149 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    19# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_149
    happyReduction_149 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_149 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser QName -> (QName -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokQId [(Interval, [Char])]
    happy_var_1) ->
    	( [(Interval, [Char])] -> Parser QName
    mkQName [(Interval, [Char])]
    happy_var_1)})
    	) (\QName
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (QName -> HappyAbsSyn
    happyIn29 QName
    r))

    happyReduce_150 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_150 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_150 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    19# HappyAbsSyn -> HappyAbsSyn
    happyReduction_150
    happyReduction_150 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_150 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	QName -> HappyAbsSyn
    happyIn29
    		 (Name -> QName
    QName Name
    happy_var_1
    	)}

    happyReduce_151 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_151 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_151 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    20# HappyAbsSyn -> HappyAbsSyn
    happyReduction_151
    happyReduction_151 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_151 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_1 of { (HappyWrap29 QName
    happy_var_1) ->
    	QName -> HappyAbsSyn
    happyIn30
    		 (QName
    happy_var_1
    	)}

    happyReduce_152 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_152 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_152 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    21# HappyAbsSyn -> HappyAbsSyn
    happyReduction_152
    happyReduction_152 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_152 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	Name -> HappyAbsSyn
    happyIn31
    		 (Name
    happy_var_1
    	)}

    happyReduce_153 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_153 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_153 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    21# HappyAbsSyn -> HappyAbsSyn
    happyReduction_153
    happyReduction_153 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_153 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_1) ->
    	Name -> HappyAbsSyn
    happyIn31
    		 (Range -> Name -> Name
    forall a. SetRange a => Range -> a -> a
    setRange (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) Name
    simpleHole
    	)}

    happyReduce_154 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_154 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_154 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    22# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_154
    happyReduction_154 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_154 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    happy_x_1 of { (HappyWrap31 Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap32
    happyOut32 HappyAbsSyn
    happy_x_2 of { (HappyWrap32 List1 Name
    happy_var_2) ->
    	List1 Name -> HappyAbsSyn
    happyIn32
    		 (Name
    happy_var_1 Name -> List1 Name -> List1 Name
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Name
    happy_var_2
    	)}}

    happyReduce_155 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_155 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_155 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    22# HappyAbsSyn -> HappyAbsSyn
    happyReduction_155
    happyReduction_155 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_155 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    happy_x_1 of { (HappyWrap31 Name
    happy_var_1) ->
    	List1 Name -> HappyAbsSyn
    happyIn32
    		 (Name -> List1 Name
    forall el coll. Singleton el coll => el -> coll
    singleton Name
    happy_var_1
    	)}

    happyReduce_156 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_156 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_156 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    23# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_156
    happyReduction_156 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_156 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 (NamedArg Binder))
    -> (List1 (NamedArg Binder) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap34
    happyOut34 HappyAbsSyn
    happy_x_1 of { (HappyWrap34 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1) ->
    	(
        case Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1 of
          Left List1 (NamedArg Binder)
    ns -> List1 (NamedArg Binder) -> Parser (List1 (NamedArg Binder))
    forall (m :: * -> *) a. Monad m => a -> m a
    return List1 (NamedArg Binder)
    ns
          Right List1 Expr
    _ -> [Char] -> Parser (List1 (NamedArg Binder))
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser (List1 (NamedArg Binder)))
    -> [Char] -> Parser (List1 (NamedArg Binder))
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "expected sequence of bound identifiers, not absurd pattern")})
    	) (\List1 (NamedArg Binder)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn33 List1 (NamedArg Binder)
    r))

    happyReduce_157 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_157 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_157 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    24# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_157
    happyReduction_157 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_157 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_1 of { (HappyWrap46 List1 Expr
    happy_var_1) ->
    	( List1 Expr
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    boundNamesOrAbsurd List1 Expr
    happy_var_1)})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_158 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_158 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_158 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    24# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_158
    happyReduction_158 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_158 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_1 of { (HappyWrap29 QName
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_3 of { (HappyWrap29 QName
    happy_var_3) ->
    	( (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg BoundName -> List1 (NamedArg Binder))
    -> NamedArg BoundName
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> List1 (NamedArg Binder))
    -> (NamedArg BoundName -> NamedArg Binder)
    -> NamedArg BoundName
    -> List1 (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (BoundName -> Binder) -> NamedArg BoundName -> NamedArg Binder
    forall a b. (a -> b) -> NamedArg a -> NamedArg b
    updateNamedArg BoundName -> Binder
    forall a. a -> Binder' a
    mkBinder) (NamedArg BoundName
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (NamedArg BoundName)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg (QName -> Maybe QName
    forall a. a -> Maybe a
    Just QName
    happy_var_1) (QName -> Either QName Range
    forall a b. a -> Either a b
    Left QName
    happy_var_3))}})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_159 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_159 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_159 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    24# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_159
    happyReduction_159 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_159 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_3 of { (HappyWrap29 QName
    happy_var_3) ->
    	( (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg BoundName -> List1 (NamedArg Binder))
    -> NamedArg BoundName
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> List1 (NamedArg Binder))
    -> (NamedArg BoundName -> NamedArg Binder)
    -> NamedArg BoundName
    -> List1 (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (BoundName -> Binder) -> NamedArg BoundName -> NamedArg Binder
    forall a b. (a -> b) -> NamedArg a -> NamedArg b
    updateNamedArg BoundName -> Binder
    forall a. a -> Binder' a
    mkBinder) (NamedArg BoundName
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (NamedArg BoundName)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg Maybe QName
    forall a. Maybe a
    Nothing   (QName -> Either QName Range
    forall a b. a -> Either a b
    Left QName
    happy_var_3))})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_160 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_160 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_160 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    24# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_160
    happyReduction_160 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_160 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_1 of { (HappyWrap29 QName
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_3) ->
    	( (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg BoundName -> List1 (NamedArg Binder))
    -> NamedArg BoundName
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> List1 (NamedArg Binder))
    -> (NamedArg BoundName -> NamedArg Binder)
    -> NamedArg BoundName
    -> List1 (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (BoundName -> Binder) -> NamedArg BoundName -> NamedArg Binder
    forall a b. (a -> b) -> NamedArg a -> NamedArg b
    updateNamedArg BoundName -> Binder
    forall a. a -> Binder' a
    mkBinder) (NamedArg BoundName
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (NamedArg BoundName)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg (QName -> Maybe QName
    forall a. a -> Maybe a
    Just QName
    happy_var_1) (Range -> Either QName Range
    forall a b. b -> Either a b
    Right (Range -> Either QName Range) -> Range -> Either QName Range
    forall a b. (a -> b) -> a -> b
    $ Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_3))}})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_161 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_161 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_161 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    24# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_161
    happyReduction_161 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_161 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_3) ->
    	( (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg BoundName -> List1 (NamedArg Binder))
    -> NamedArg BoundName
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> List1 (NamedArg Binder))
    -> (NamedArg BoundName -> NamedArg Binder)
    -> NamedArg BoundName
    -> List1 (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (BoundName -> Binder) -> NamedArg BoundName -> NamedArg Binder
    forall a b. (a -> b) -> NamedArg a -> NamedArg b
    updateNamedArg BoundName -> Binder
    forall a. a -> Binder' a
    mkBinder) (NamedArg BoundName
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (NamedArg BoundName)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg Maybe QName
    forall a. Maybe a
    Nothing   (Range -> Either QName Range
    forall a b. b -> Either a b
    Right (Range -> Either QName Range) -> Range -> Either QName Range
    forall a b. (a -> b) -> a -> b
    $ Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_3))})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn34 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_162 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_162 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_162 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    25# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_162
    happyReduction_162 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_162 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 (NamedArg Binder))
    -> (List1 (NamedArg Binder) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_1 of { (HappyWrap46 List1 Expr
    happy_var_1) ->
    	(
      -- interpret an expression as a name and maybe a pattern
      case (Expr -> Maybe (List1 (NamedArg (Name, Maybe Expr))))
    -> List1 Expr
    -> Maybe (NonEmpty (List1 (NamedArg (Name, Maybe Expr))))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Expr -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    exprAsNameOrHiddenNames List1 Expr
    happy_var_1 of
        Maybe (NonEmpty (List1 (NamedArg (Name, Maybe Expr))))
    Nothing   -> [Char] -> Parser (List1 (NamedArg Binder))
    forall a. [Char] -> Parser a
    parseError [Char]
    "Expected sequence of possibly hidden bound identifiers"
        Just NonEmpty (List1 (NamedArg (Name, Maybe Expr)))
    good -> List1 (NamedArg (Name, Maybe Expr))
    -> (NamedArg (Name, Maybe Expr) -> Parser (NamedArg Binder))
    -> Parser (List1 (NamedArg Binder))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    t a -> (a -> m b) -> m (t b)
    forM (NonEmpty (List1 (NamedArg (Name, Maybe Expr)))
    -> List1 (NamedArg (Name, Maybe Expr))
    forall a. Semigroup a => NonEmpty a -> a
    sconcat NonEmpty (List1 (NamedArg (Name, Maybe Expr)))
    good) ((NamedArg (Name, Maybe Expr) -> Parser (NamedArg Binder))
     -> Parser (List1 (NamedArg Binder)))
    -> (NamedArg (Name, Maybe Expr) -> Parser (NamedArg Binder))
    -> Parser (List1 (NamedArg Binder))
    forall a b. (a -> b) -> a -> b
    $ ((Name, Maybe Expr) -> Parser Binder)
    -> NamedArg (Name, Maybe Expr) -> Parser (NamedArg Binder)
    forall (f :: * -> *) a b.
    Applicative f =>
    (a -> f b) -> NamedArg a -> f (NamedArg b)
    updateNamedArgA (((Name, Maybe Expr) -> Parser Binder)
     -> NamedArg (Name, Maybe Expr) -> Parser (NamedArg Binder))
    -> ((Name, Maybe Expr) -> Parser Binder)
    -> NamedArg (Name, Maybe Expr)
    -> Parser (NamedArg Binder)
    forall a b. (a -> b) -> a -> b
    $ \ (Name
    n, Maybe Expr
    me) -> do
                       Maybe Pattern
    p <- (Expr -> Parser Pattern) -> Maybe Expr -> Parser (Maybe Pattern)
    forall (t :: * -> *) (f :: * -> *) a b.
    (Traversable t, Applicative f) =>
    (a -> f b) -> t a -> f (t b)
    traverse Expr -> Parser Pattern
    exprToPattern Maybe Expr
    me
                       Binder -> Parser Binder
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (Binder -> Parser Binder) -> Binder -> Parser Binder
    forall a b. (a -> b) -> a -> b
    $ Maybe Pattern -> BoundName -> Binder
    forall a. Maybe Pattern -> a -> Binder' a
    Binder Maybe Pattern
    p (Name -> BoundName
    mkBoundName_ Name
    n))})
    	) (\List1 (NamedArg Binder)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn35 List1 (NamedArg Binder)
    r))

    happyReduce_163 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_163 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_163 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    26# HappyAbsSyn
    happyReduction_163
    happyReduction_163 :: HappyAbsSyn
    happyReduction_163  =  [[Char]] -> HappyAbsSyn
    happyIn36
    		 ([]
    	)

    happyReduce_164 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_164 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_164 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    26# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_164
    happyReduction_164 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_164 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    happy_x_2 of { (HappyWrap36 [[Char]]
    happy_var_2) ->
    	[[Char]] -> HappyAbsSyn
    happyIn36
    		 ((Interval, [Char]) -> [Char]
    forall a b. (a, b) -> b
    snd (Interval, [Char])
    happy_var_1 [Char] -> [[Char]] -> [[Char]]
    forall a. a -> [a] -> [a]
    : [[Char]]
    happy_var_2
    	)}}

    happyReduce_165 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_165 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_165 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    27# HappyAbsSyn
    happyReduction_165
    happyReduction_165 :: HappyAbsSyn
    happyReduction_165  =  [(Interval, [Char])] -> HappyAbsSyn
    happyIn37
    		 ([]
    	)

    happyReduce_166 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_166 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_166 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    27# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_166
    happyReduction_166 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_166 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap37
    happyOut37 HappyAbsSyn
    happy_x_2 of { (HappyWrap37 [(Interval, [Char])]
    happy_var_2) ->
    	[(Interval, [Char])] -> HappyAbsSyn
    happyIn37
    		 ((Interval, [Char])
    happy_var_1 (Interval, [Char]) -> [(Interval, [Char])] -> [(Interval, [Char])]
    forall a. a -> [a] -> [a]
    : [(Interval, [Char])]
    happy_var_2
    	)}}

    happyReduce_167 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_167 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_167 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    28# HappyAbsSyn
    happyReduction_167
    happyReduction_167 :: HappyAbsSyn
    happyReduction_167  =  [(Interval, [Char])] -> HappyAbsSyn
    happyIn38
    		 ([]
    	)

    happyReduce_168 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_168 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_168 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    28# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_168
    happyReduction_168 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_168 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap38
    happyOut38 HappyAbsSyn
    happy_x_2 of { (HappyWrap38 [(Interval, [Char])]
    happy_var_2) ->
    	[(Interval, [Char])] -> HappyAbsSyn
    happyIn38
    		 ((Interval, [Char])
    happy_var_1 (Interval, [Char]) -> [(Interval, [Char])] -> [(Interval, [Char])]
    forall a. a -> [a] -> [a]
    : [(Interval, [Char])]
    happy_var_2
    	)}}

    happyReduce_169 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_169 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_169 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    28# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_169
    happyReduction_169 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_169 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap38
    happyOut38 HappyAbsSyn
    happy_x_2 of { (HappyWrap38 [(Interval, [Char])]
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap38
    happyOut38 HappyAbsSyn
    happy_x_4 of { (HappyWrap38 [(Interval, [Char])]
    happy_var_4) ->
    	[(Interval, [Char])] -> HappyAbsSyn
    happyIn38
    		 ([(Interval
    happy_var_1, [Char]
    "{-#")] [(Interval, [Char])]
    -> [(Interval, [Char])] -> [(Interval, [Char])]
    forall a. [a] -> [a] -> [a]
    ++ [(Interval, [Char])]
    happy_var_2 [(Interval, [Char])]
    -> [(Interval, [Char])] -> [(Interval, [Char])]
    forall a. [a] -> [a] -> [a]
    ++ [(Interval
    happy_var_3, [Char]
    "#-}")] [(Interval, [Char])]
    -> [(Interval, [Char])] -> [(Interval, [Char])]
    forall a. [a] -> [a] -> [a]
    ++ [(Interval, [Char])]
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_170 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_170 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_170 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    29# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_170
    happyReduction_170 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_170 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Name -> (Name -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	( (Interval, [Char]) -> Parser Name
    mkName (Interval, [Char])
    happy_var_1)})
    	) (\Name
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Name -> HappyAbsSyn
    happyIn39 Name
    r))

    happyReduce_171 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_171 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_171 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    30# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_171
    happyReduction_171 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_171 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser QName -> (QName -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	( (Interval, [Char]) -> Parser QName
    pragmaQName (Interval, [Char])
    happy_var_1)})
    	) (\QName
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (QName -> HappyAbsSyn
    happyIn40 QName
    r))

    happyReduce_172 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_172 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_172 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    31# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_172
    happyReduction_172 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_172 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser [QName]
    -> ([QName] -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap37
    happyOut37 HappyAbsSyn
    happy_x_1 of { (HappyWrap37 [(Interval, [Char])]
    happy_var_1) ->
    	( ((Interval, [Char]) -> Parser QName)
    -> [(Interval, [Char])] -> Parser [QName]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM (Interval, [Char]) -> Parser QName
    pragmaQName [(Interval, [Char])]
    happy_var_1)})
    	) (\[QName]
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ([QName] -> HappyAbsSyn
    happyIn41 [QName]
    r))

    happyReduce_173 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_173 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_173 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    32# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_173
    happyReduction_173 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_173 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap64
    happyOut64 HappyAbsSyn
    happy_x_1 of { (HappyWrap64 Telescope1
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_2 of { (HappyWrap42 Expr
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn42
    		 (Telescope1 -> Expr -> Expr
    Pi Telescope1
    happy_var_1 Expr
    happy_var_2
    	)}}

    happyReduce_174 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_174 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_174 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    32# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_174
    happyReduction_174 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_174 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymArrow Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn42
    		 (Range -> Arg Expr -> Expr -> Expr
    Fun ((List1 Expr, Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 Expr
    happy_var_1,Interval
    happy_var_2,Expr
    happy_var_3))
                                                  (Expr -> Arg Expr
    forall a. a -> Arg a
    defaultArg (Expr -> Arg Expr) -> Expr -> Arg Expr
    forall a b. (a -> b) -> a -> b
    $ List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1)
                                                  Expr
    happy_var_3
    	)}}}

    happyReduce_175 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_175 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_175 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    32# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_175
    happyReduction_175 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_175 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_1 of { (HappyWrap28 List1 Attr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_2 of { (HappyWrap50 List1 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymArrow Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	( List1 Attr -> Arg Expr -> Parser (Arg Expr)
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_1 (Expr -> Arg Expr
    forall a. a -> Arg a
    defaultArg (Expr -> Arg Expr) -> Expr -> Arg Expr
    forall a b. (a -> b) -> a -> b
    $ List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_2) Parser (Arg Expr) -> (Arg Expr -> Expr) -> Parser Expr
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> \ Arg Expr
    dom ->
                                                 Range -> Arg Expr -> Expr -> Expr
    Fun ((List1 Attr, List1 Expr, Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 Attr
    happy_var_1,List1 Expr
    happy_var_2,Interval
    happy_var_3,Expr
    happy_var_4)) Arg Expr
    dom Expr
    happy_var_4)}}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn42 Expr
    r))

    happyReduce_176 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_176 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_176 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    32# HappyAbsSyn -> HappyAbsSyn
    happyReduction_176
    happyReduction_176 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_176 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap43
    happyOut43 HappyAbsSyn
    happy_x_1 of { (HappyWrap43 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn42
    		 (Expr
    happy_var_1
    	)}

    happyReduce_177 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_177 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_177 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    33# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_177
    happyReduction_177 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_177 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    happy_x_1 of { (HappyWrap45 List1 Expr
    happy_var_1) ->
    	( case List1 Expr
    happy_var_1 of
               { Expr
    e :| [] -> Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return Expr
    e
               ; Expr
    e :| [Expr]
    es -> Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Expr -> Parser Expr) -> Expr -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Expr -> [Expr] -> Expr
    WithApp (Expr -> [Expr] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Expr
    e [Expr]
    es) Expr
    e [Expr]
    es
               })})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn43 Expr
    r))

    happyReduce_178 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_178 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_178 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    34# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_178
    happyReduction_178 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_178 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap44
    happyOut44 HappyAbsSyn
    happy_x_5 of { (HappyWrap44 List1 (Named Name Expr)
    happy_var_5) ->
    	List1 (Named Name Expr) -> HappyAbsSyn
    happyIn44
    		 (Name -> Expr -> Named Name Expr
    forall name a. name -> a -> Named name a
    named Name
    happy_var_3  (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1) Named Name Expr
    -> List1 (Named Name Expr) -> List1 (Named Name Expr)
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 (Named Name Expr)
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_179 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_179 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_179 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    34# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_179
    happyReduction_179 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_179 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap44
    happyOut44 HappyAbsSyn
    happy_x_3 of { (HappyWrap44 List1 (Named Name Expr)
    happy_var_3) ->
    	List1 (Named Name Expr) -> HappyAbsSyn
    happyIn44
    		 (Expr -> Named Name Expr
    forall a name. a -> Named name a
    unnamed   (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1) Named Name Expr
    -> List1 (Named Name Expr) -> List1 (Named Name Expr)
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 (Named Name Expr)
    happy_var_3
    	)}}

    happyReduce_180 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_180 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_180 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    34# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_180
    happyReduction_180 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_180 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	List1 (Named Name Expr) -> HappyAbsSyn
    happyIn44
    		 (Named Name Expr -> List1 (Named Name Expr)
    forall el coll. Singleton el coll => el -> coll
    singleton (Name -> Expr -> Named Name Expr
    forall name a. name -> a -> Named name a
    named Name
    happy_var_3 (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1))
    	)}}

    happyReduce_181 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_181 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_181 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    34# HappyAbsSyn -> HappyAbsSyn
    happyReduction_181
    happyReduction_181 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_181 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	List1 (Named Name Expr) -> HappyAbsSyn
    happyIn44
    		 (Named Name Expr -> List1 (Named Name Expr)
    forall el coll. Singleton el coll => el -> coll
    singleton (Expr -> Named Name Expr
    forall a name. a -> Named name a
    unnamed  (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1))
    	)}

    happyReduce_182 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_182 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_182 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    35# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_182
    happyReduction_182 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_182 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_1 of { (HappyWrap50 List1 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    happy_x_3 of { (HappyWrap45 List1 Expr
    happy_var_3) ->
    	List1 Expr -> HappyAbsSyn
    happyIn45
    		 ((List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1) Expr -> List1 Expr -> List1 Expr
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Expr
    happy_var_3
    	)}}

    happyReduce_183 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_183 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_183 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    35# HappyAbsSyn -> HappyAbsSyn
    happyReduction_183
    happyReduction_183 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_183 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_1 of { (HappyWrap46 List1 Expr
    happy_var_1) ->
    	List1 Expr -> HappyAbsSyn
    happyIn45
    		 (Expr -> List1 Expr
    forall el coll. Singleton el coll => el -> coll
    singleton (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_1)
    	)}

    happyReduce_184 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_184 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_184 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    36# HappyAbsSyn -> HappyAbsSyn
    happyReduction_184
    happyReduction_184 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_184 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap47
    happyOut47 HappyAbsSyn
    happy_x_1 of { (HappyWrap47 Expr
    happy_var_1) ->
    	List1 Expr -> HappyAbsSyn
    happyIn46
    		 (Expr -> List1 Expr
    forall el coll. Singleton el coll => el -> coll
    singleton Expr
    happy_var_1
    	)}

    happyReduce_185 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_185 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_185 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    36# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_185
    happyReduction_185 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_185 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_2 of { (HappyWrap46 List1 Expr
    happy_var_2) ->
    	List1 Expr -> HappyAbsSyn
    happyIn46
    		 (Expr
    happy_var_1 Expr -> List1 Expr -> List1 Expr
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Expr
    happy_var_2
    	)}}

    happyReduce_186 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_186 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_186 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    37# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_186
    happyReduction_186 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_186 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap72
    happyOut72 HappyAbsSyn
    happy_x_2 of { (HappyWrap72 List1 LamBinding
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Range -> List1 LamBinding -> Expr -> Expr
    Lam ((Interval, List1 LamBinding, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,List1 LamBinding
    happy_var_2,Expr
    happy_var_3)) List1 LamBinding
    happy_var_2 Expr
    happy_var_3
    	)}}}

    happyReduce_187 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_187 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_187 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    37# HappyAbsSyn -> HappyAbsSyn
    happyReduction_187
    happyReduction_187 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_187 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap49
    happyOut49 HappyAbsSyn
    happy_x_1 of { (HappyWrap49 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Expr
    happy_var_1
    	)}

    happyReduce_188 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_188 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_188 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    37# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_188
    happyReduction_188 :: HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_188 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap81
    happyOut81 HappyAbsSyn
    happy_x_2 of { (HappyWrap81 List1 LamBinding
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (List1 LamBinding -> Expr -> Expr
    forallPi List1 LamBinding
    happy_var_2 Expr
    happy_var_3
    	)}}

    happyReduce_189 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_189 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_189 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    37# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_189
    happyReduction_189 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_189 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwLet Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap188
    happyOut188 HappyAbsSyn
    happy_x_2 of { (HappyWrap188 List1 Declaration
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap48
    happyOut48 HappyAbsSyn
    happy_x_3 of { (HappyWrap48 Maybe Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Range -> List1 Declaration -> Maybe Expr -> Expr
    Let ((Interval, List1 Declaration, Maybe Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,List1 Declaration
    happy_var_2,Maybe Expr
    happy_var_3)) List1 Declaration
    happy_var_2 Maybe Expr
    happy_var_3
    	)}}}

    happyReduce_190 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_190 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_190 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    37# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_190
    happyReduction_190 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_190 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwDo Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap88
    happyOut88 HappyAbsSyn
    happy_x_3 of { (HappyWrap88 List1 DoStmt
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Range -> List1 DoStmt -> Expr
    DoBlock ((Interval, List1 DoStmt) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, List1 DoStmt
    happy_var_3)) List1 DoStmt
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_191 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_191 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_191 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    37# HappyAbsSyn -> HappyAbsSyn
    happyReduction_191
    happyReduction_191 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_191 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Expr
    happy_var_1
    	)}

    happyReduce_192 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_192 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_192 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    37# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_192
    happyReduction_192 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_192 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwTactic Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_2 of { (HappyWrap50 List1 Expr
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn47
    		 (Range -> Expr -> Expr
    Tactic ((Interval, List1 Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, List1 Expr
    happy_var_2)) (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_2)
    	)}}

    happyReduce_193 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_193 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_193 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    38# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_193
    happyReduction_193 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_193 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_2 of { (HappyWrap42 Expr
    happy_var_2) ->
    	Maybe Expr -> HappyAbsSyn
    happyIn48
    		 (Expr -> Maybe Expr
    forall a. a -> Maybe a
    Just Expr
    happy_var_2
    	)}

    happyReduce_194 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_194 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_194 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    38# HappyAbsSyn
    happyReduction_194
    happyReduction_194 :: HappyAbsSyn
    happyReduction_194  =  Maybe Expr -> HappyAbsSyn
    happyIn48
    		 (Maybe Expr
    forall a. Maybe a
    Nothing
    	)

    happyReduce_195 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_195 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_195 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_195
    happyReduction_195 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_195 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap79
    happyOut79 HappyAbsSyn
    happy_x_3 of { (HappyWrap79 NonEmpty LamClause
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_4) ->
    	( Range -> [Attr] -> NonEmpty LamClause -> Parser Expr
    extLam ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2, Interval
    happy_var_4))     []                NonEmpty LamClause
    happy_var_3)}}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_196 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_196 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_196 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_196
    happyReduction_196 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_196 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap79
    happyOut79 HappyAbsSyn
    happy_x_4 of { (HappyWrap79 NonEmpty LamClause
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_5) ->
    	( Range -> [Attr] -> NonEmpty LamClause -> Parser Expr
    extLam ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_3, Interval
    happy_var_5))     (List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Attr
    happy_var_2) NonEmpty LamClause
    happy_var_4)}}}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_197 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_197 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_197 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_197
    happyReduction_197 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_197 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymOpenVirtualBrace Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap80
    happyOut80 HappyAbsSyn
    happy_x_4 of { (HappyWrap80 NonEmpty LamClause
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap15
    happyOut15 HappyAbsSyn
    happy_x_5 of { (HappyWrap15 ()
    happy_var_5) ->
    	( Range -> [Attr] -> NonEmpty LamClause -> Parser Expr
    extLam ((Interval, Interval, Interval, ()) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2, Interval
    happy_var_3, ()
    happy_var_5)) []                NonEmpty LamClause
    happy_var_4)}}}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_198 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_198 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_198 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    6# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_198
    happyReduction_198 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_198 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymOpenVirtualBrace Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap80
    happyOut80 HappyAbsSyn
    happy_x_5 of { (HappyWrap80 NonEmpty LamClause
    happy_var_5) ->
    	case HappyAbsSyn -> HappyWrap15
    happyOut15 HappyAbsSyn
    happy_x_6 of { (HappyWrap15 ()
    happy_var_6) ->
    	( Range -> [Attr] -> NonEmpty LamClause -> Parser Expr
    extLam ((Interval, Interval, Interval, ()) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_3, Interval
    happy_var_4, ()
    happy_var_6)) (List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Attr
    happy_var_2) NonEmpty LamClause
    happy_var_5)}}}}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_199 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_199 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_199 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_199
    happyReduction_199 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_199 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap73
    happyOut73 HappyAbsSyn
    happy_x_2 of { (HappyWrap73 Either ([LamBinding], Hiding) (List1 Expr)
    happy_var_2) ->
    	( Range
    -> [Attr]
    -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser Expr
    extOrAbsLam (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) []                Either ([LamBinding], Hiding) (List1 Expr)
    happy_var_2)}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_200 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_200 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_200 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    39# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_200
    happyReduction_200 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_200 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymLambda Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap73
    happyOut73 HappyAbsSyn
    happy_x_3 of { (HappyWrap73 Either ([LamBinding], Hiding) (List1 Expr)
    happy_var_3) ->
    	( Range
    -> [Attr]
    -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser Expr
    extOrAbsLam (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) (List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Attr
    happy_var_2) Either ([LamBinding], Hiding) (List1 Expr)
    happy_var_3)}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn49 Expr
    r))

    happyReduce_201 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_201 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_201 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    40# HappyAbsSyn -> HappyAbsSyn
    happyReduction_201
    happyReduction_201 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_201 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	List1 Expr -> HappyAbsSyn
    happyIn50
    		 (Expr -> List1 Expr
    forall el coll. Singleton el coll => el -> coll
    singleton Expr
    happy_var_1
    	)}

    happyReduce_202 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_202 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_202 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    40# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_202
    happyReduction_202 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_202 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap50
    happyOut50 HappyAbsSyn
    happy_x_2 of { (HappyWrap50 List1 Expr
    happy_var_2) ->
    	List1 Expr -> HappyAbsSyn
    happyIn50
    		 (Expr
    happy_var_1 Expr -> List1 Expr -> List1 Expr
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 Expr
    happy_var_2
    	)}}

    happyReduce_203 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_203 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_203 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    41# HappyAbsSyn
    happyReduction_203
    happyReduction_203 :: HappyAbsSyn
    happyReduction_203  =  [Expr] -> HappyAbsSyn
    happyIn51
    		 ([]
    	)

    happyReduce_204 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_204 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_204 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    41# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_204
    happyReduction_204 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_204 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap51
    happyOut51 HappyAbsSyn
    happy_x_2 of { (HappyWrap51 [Expr]
    happy_var_2) ->
    	[Expr] -> HappyAbsSyn
    happyIn51
    		 (Expr
    happy_var_1 Expr -> [Expr] -> [Expr]
    forall a. a -> [a] -> [a]
    : [Expr]
    happy_var_2
    	)}}

    happyReduce_205 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_205 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_205 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    42# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_205
    happyReduction_205 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_205 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap54
    happyOut54 HappyAbsSyn
    happy_x_2 of { (HappyWrap54 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_3) ->
    	( Range -> Named_ Expr -> Expr
    HiddenArg ((Interval, Expr, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,Interval
    happy_var_3)) (Named_ Expr -> Expr) -> Parser (Named_ Expr) -> Parser Expr
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Expr -> Parser (Named_ Expr)
    maybeNamed Expr
    happy_var_2)}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn52 Expr
    r))

    happyReduce_206 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_206 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_206 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    42# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_206
    happyReduction_206 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_206 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn52
    		 (let r :: Range
    r = Interval -> Interval -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Interval
    happy_var_2 in Range -> Named_ Expr -> Expr
    HiddenArg Range
    r (Named_ Expr -> Expr) -> Named_ Expr -> Expr
    forall a b. (a -> b) -> a -> b
    $ Expr -> Named_ Expr
    forall a name. a -> Named name a
    unnamed (Expr -> Named_ Expr) -> Expr -> Named_ Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Expr
    Absurd Range
    r
    	)}}

    happyReduce_207 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_207 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_207 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    42# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_207
    happyReduction_207 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_207 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Expr -> (Expr -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap54
    happyOut54 HappyAbsSyn
    happy_x_2 of { (HappyWrap54 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_3 of { (HappyWrap21 Range
    happy_var_3) ->
    	( Range -> Named_ Expr -> Expr
    InstanceArg ((Interval, Expr, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,Range
    happy_var_3)) (Named_ Expr -> Expr) -> Parser (Named_ Expr) -> Parser Expr
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    `fmap` Expr -> Parser (Named_ Expr)
    maybeNamed Expr
    happy_var_2)}}})
    	) (\Expr
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Expr -> HappyAbsSyn
    happyIn52 Expr
    r))

    happyReduce_208 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_208 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_208 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    42# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_208
    happyReduction_208 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_208 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_2 of { (HappyWrap21 Range
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn52
    		 (let r :: Range
    r = Interval -> Range -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Range
    happy_var_2 in Range -> Named_ Expr -> Expr
    InstanceArg Range
    r (Named_ Expr -> Expr) -> Named_ Expr -> Expr
    forall a b. (a -> b) -> a -> b
    $ Expr -> Named_ Expr
    forall a name. a -> Named name a
    unnamed (Expr -> Named_ Expr) -> Expr -> Named_ Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Expr
    Absurd Range
    r
    	)}}

    happyReduce_209 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_209 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_209 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_209
    happyReduction_209 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_209 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymQuestionMark Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Maybe Int -> Expr
    QuestionMark (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) Maybe Int
    forall a. Maybe a
    Nothing
    	)}

    happyReduce_210 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_210 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_210 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_210
    happyReduction_210 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_210 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Maybe [Char] -> Expr
    Underscore (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) Maybe [Char]
    forall a. Maybe a
    Nothing
    	)}

    happyReduce_211 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_211 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_211 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_211
    happyReduction_211 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_211 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwQuote Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr
    Quote (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_212 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_212 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_212 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_212
    happyReduction_212 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_212 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwQuoteTerm Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr
    QuoteTerm (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_213 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_213 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_213 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_213
    happyReduction_213 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_213 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquote Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr
    Unquote (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_214 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_214 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_214 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    43# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_214
    happyReduction_214 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_214 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenIdiomBracket Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    happy_x_2 of { (HappyWrap45 List1 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseIdiomBracket Interval
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> [Expr] -> Expr
    IdiomBrackets ((Interval, List1 Expr, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,List1 Expr
    happy_var_2,Interval
    happy_var_3)) (List1 Expr -> [Expr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Expr
    happy_var_2)
    	)}}}

    happyReduce_215 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_215 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_215 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_215
    happyReduction_215 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_215 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymEmptyIdiomBracket Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> [Expr] -> Expr
    IdiomBrackets (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) []
    	)}

    happyReduce_216 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_216 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_216 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    43# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_216
    happyReduction_216 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_216 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr
    Absurd (Interval -> Interval -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Interval
    happy_var_2)
    	)}}

    happyReduce_217 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_217 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_217 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    43# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_217
    happyReduction_217 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_217 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymAs Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_3 of { (HappyWrap56 Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Name -> Expr -> Expr
    As ((Name, Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Name
    happy_var_1,Interval
    happy_var_2,Expr
    happy_var_3)) Name
    happy_var_1 Expr
    happy_var_3
    	)}}}

    happyReduce_218 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_218 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_218 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    43# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_218
    happyReduction_218 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_218 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDot Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_2 of { (HappyWrap56 Expr
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr -> Expr
    Dot (Interval -> Expr -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Expr
    happy_var_2) Expr
    happy_var_2
    	)}}

    happyReduce_219 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_219 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_219 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    43# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_219
    happyReduction_219 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_219 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDotDot Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_2 of { (HappyWrap56 Expr
    happy_var_2) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr -> Expr
    DoubleDot (Interval -> Expr -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Expr
    happy_var_2) Expr
    happy_var_2
    	)}}

    happyReduce_220 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_220 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_220 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    43# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_220
    happyReduction_220 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_220 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap57
    happyOut57 HappyAbsSyn
    happy_x_3 of { (HappyWrap57 RecordAssignments
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_4) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> RecordAssignments -> Expr
    Rec ((Interval, Interval, RecordAssignments, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,RecordAssignments
    happy_var_3,Interval
    happy_var_4)) RecordAssignments
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_221 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_221 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_221 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    43# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_221
    happyReduction_221 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_221 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    happy_x_2 of { (HappyWrap53 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap61
    happyOut61 HappyAbsSyn
    happy_x_4 of { (HappyWrap61 [FieldAssignment]
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_5) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr -> [FieldAssignment] -> Expr
    RecUpdate ((Interval, Expr, Interval, [FieldAssignment], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,Interval
    happy_var_3,[FieldAssignment]
    happy_var_4,Interval
    happy_var_5)) Expr
    happy_var_2 [FieldAssignment]
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_222 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_222 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_222 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_222
    happyReduction_222 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_222 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymEllipsis Interval
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Range -> Expr
    Ellipsis (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_223 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_223 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_223 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    43# HappyAbsSyn -> HappyAbsSyn
    happyReduction_223
    happyReduction_223 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_223 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap55
    happyOut55 HappyAbsSyn
    happy_x_1 of { (HappyWrap55 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn53
    		 (Expr
    happy_var_1
    	)}

    happyReduce_224 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_224 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_224 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    44# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_224
    happyReduction_224 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_224 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap43
    happyOut43 HappyAbsSyn
    happy_x_1 of { (HappyWrap43 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymEqual Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn54
    		 (Range -> Expr -> Expr -> Expr
    Equal ((Expr, Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Expr
    happy_var_1, Interval
    happy_var_2, Expr
    happy_var_3)) Expr
    happy_var_1 Expr
    happy_var_3
    	)}}}

    happyReduce_225 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_225 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_225 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    44# HappyAbsSyn -> HappyAbsSyn
    happyReduction_225
    happyReduction_225 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_225 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_1 of { (HappyWrap42 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn54
    		 (Expr
    happy_var_1
    	)}

    happyReduce_226 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_226 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_226 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    45# HappyAbsSyn -> HappyAbsSyn
    happyReduction_226
    happyReduction_226 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_226 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap29
    happyOut29 HappyAbsSyn
    happy_x_1 of { (HappyWrap29 QName
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn55
    		 (QName -> Expr
    Ident QName
    happy_var_1
    	)}

    happyReduce_227 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_227 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_227 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    45# HappyAbsSyn -> HappyAbsSyn
    happyReduction_227
    happyReduction_227 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_227 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokLiteral RLiteral
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn55
    		 (Range -> Literal -> Expr
    Lit (RLiteral -> Range
    forall a. HasRange a => a -> Range
    getRange RLiteral
    happy_var_1) (RLiteral -> Literal
    forall a. Ranged a -> a
    rangedThing RLiteral
    happy_var_1)
    	)}

    happyReduce_228 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_228 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_228 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    45# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_228
    happyReduction_228 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_228 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap54
    happyOut54 HappyAbsSyn
    happy_x_2 of { (HappyWrap54 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_3) ->
    	Expr -> HappyAbsSyn
    happyIn55
    		 (Range -> Expr -> Expr
    Paren ((Interval, Expr, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,Interval
    happy_var_3)) Expr
    happy_var_2
    	)}}}

    happyReduce_229 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_229 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_229 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    46# HappyAbsSyn -> HappyAbsSyn
    happyReduction_229
    happyReduction_229 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_229 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap52
    happyOut52 HappyAbsSyn
    happy_x_1 of { (HappyWrap52 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn56
    		 (Expr
    happy_var_1
    	)}

    happyReduce_230 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_230 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_230 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    46# HappyAbsSyn -> HappyAbsSyn
    happyReduction_230
    happyReduction_230 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_230 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    happy_x_1 of { (HappyWrap53 Expr
    happy_var_1) ->
    	Expr -> HappyAbsSyn
    happyIn56
    		 (Expr
    happy_var_1
    	)}

    happyReduce_231 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_231 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_231 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    47# HappyAbsSyn
    happyReduction_231
    happyReduction_231 :: HappyAbsSyn
    happyReduction_231  =  RecordAssignments -> HappyAbsSyn
    happyIn57
    		 ([]
    	)

    happyReduce_232 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_232 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_232 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    47# HappyAbsSyn -> HappyAbsSyn
    happyReduction_232
    happyReduction_232 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_232 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap58
    happyOut58 HappyAbsSyn
    happy_x_1 of { (HappyWrap58 List1 RecordAssignment
    happy_var_1) ->
    	RecordAssignments -> HappyAbsSyn
    happyIn57
    		 (List1 RecordAssignment -> RecordAssignments
    forall a. NonEmpty a -> [a]
    List1.toList List1 RecordAssignment
    happy_var_1
    	)}

    happyReduce_233 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_233 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_233 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    48# HappyAbsSyn -> HappyAbsSyn
    happyReduction_233
    happyReduction_233 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_233 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap59
    happyOut59 HappyAbsSyn
    happy_x_1 of { (HappyWrap59 RecordAssignment
    happy_var_1) ->
    	List1 RecordAssignment -> HappyAbsSyn
    happyIn58
    		 (RecordAssignment -> List1 RecordAssignment
    forall el coll. Singleton el coll => el -> coll
    singleton RecordAssignment
    happy_var_1
    	)}

    happyReduce_234 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_234 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_234 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    48# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_234
    happyReduction_234 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_234 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap59
    happyOut59 HappyAbsSyn
    happy_x_1 of { (HappyWrap59 RecordAssignment
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap58
    happyOut58 HappyAbsSyn
    happy_x_3 of { (HappyWrap58 List1 RecordAssignment
    happy_var_3) ->
    	List1 RecordAssignment -> HappyAbsSyn
    happyIn58
    		 (RecordAssignment
    happy_var_1 RecordAssignment
    -> List1 RecordAssignment -> List1 RecordAssignment
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 RecordAssignment
    happy_var_3
    	)}}

    happyReduce_235 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_235 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_235 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    49# HappyAbsSyn -> HappyAbsSyn
    happyReduction_235
    happyReduction_235 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_235 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap63
    happyOut63 HappyAbsSyn
    happy_x_1 of { (HappyWrap63 FieldAssignment
    happy_var_1) ->
    	RecordAssignment -> HappyAbsSyn
    happyIn59
    		 (FieldAssignment -> RecordAssignment
    forall a b. a -> Either a b
    Left  FieldAssignment
    happy_var_1
    	)}

    happyReduce_236 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_236 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_236 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    49# HappyAbsSyn -> HappyAbsSyn
    happyReduction_236
    happyReduction_236 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_236 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap60
    happyOut60 HappyAbsSyn
    happy_x_1 of { (HappyWrap60 ModuleAssignment
    happy_var_1) ->
    	RecordAssignment -> HappyAbsSyn
    happyIn59
    		 (ModuleAssignment -> RecordAssignment
    forall a b. b -> Either a b
    Right ModuleAssignment
    happy_var_1
    	)}

    happyReduce_237 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_237 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_237 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    50# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_237
    happyReduction_237 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_237 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_1 of { (HappyWrap30 QName
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    happy_x_2 of { (HappyWrap142 [Expr]
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_3 of { (HappyWrap91 ImportDirective
    happy_var_3) ->
    	ModuleAssignment -> HappyAbsSyn
    happyIn60
    		 (QName -> [Expr] -> ImportDirective -> ModuleAssignment
    ModuleAssignment QName
    happy_var_1 [Expr]
    happy_var_2 ImportDirective
    happy_var_3
    	)}}}

    happyReduce_238 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_238 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_238 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    51# HappyAbsSyn
    happyReduction_238
    happyReduction_238 :: HappyAbsSyn
    happyReduction_238  =  [FieldAssignment] -> HappyAbsSyn
    happyIn61
    		 ([]
    	)

    happyReduce_239 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_239 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_239 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    51# HappyAbsSyn -> HappyAbsSyn
    happyReduction_239
    happyReduction_239 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_239 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap62
    happyOut62 HappyAbsSyn
    happy_x_1 of { (HappyWrap62 List1 FieldAssignment
    happy_var_1) ->
    	[FieldAssignment] -> HappyAbsSyn
    happyIn61
    		 (List1 FieldAssignment -> [FieldAssignment]
    forall a. NonEmpty a -> [a]
    List1.toList List1 FieldAssignment
    happy_var_1
    	)}

    happyReduce_240 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_240 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_240 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    52# HappyAbsSyn -> HappyAbsSyn
    happyReduction_240
    happyReduction_240 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_240 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap63
    happyOut63 HappyAbsSyn
    happy_x_1 of { (HappyWrap63 FieldAssignment
    happy_var_1) ->
    	List1 FieldAssignment -> HappyAbsSyn
    happyIn62
    		 (FieldAssignment -> List1 FieldAssignment
    forall el coll. Singleton el coll => el -> coll
    singleton FieldAssignment
    happy_var_1
    	)}

    happyReduce_241 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_241 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_241 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    52# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_241
    happyReduction_241 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_241 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap63
    happyOut63 HappyAbsSyn
    happy_x_1 of { (HappyWrap63 FieldAssignment
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap62
    happyOut62 HappyAbsSyn
    happy_x_3 of { (HappyWrap62 List1 FieldAssignment
    happy_var_3) ->
    	List1 FieldAssignment -> HappyAbsSyn
    happyIn62
    		 (FieldAssignment
    happy_var_1 FieldAssignment -> List1 FieldAssignment -> List1 FieldAssignment
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 FieldAssignment
    happy_var_3
    	)}}

    happyReduce_242 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_242 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_242 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    53# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_242
    happyReduction_242 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_242 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	FieldAssignment -> HappyAbsSyn
    happyIn63
    		 (Name -> Expr -> FieldAssignment
    forall a. Name -> a -> FieldAssignment' a
    FieldAssignment Name
    happy_var_1 Expr
    happy_var_3
    	)}}

    happyReduce_243 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_243 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_243 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    54# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_243
    happyReduction_243 :: p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_243 p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap65
    happyOut65 HappyAbsSyn
    happy_x_1 of { (HappyWrap65 Telescope1
    happy_var_1) ->
    	Telescope1 -> HappyAbsSyn
    happyIn64
    		 (Telescope1
    happy_var_1
    	)}

    happyReduce_244 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_244 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_244 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    55# HappyAbsSyn -> HappyAbsSyn
    happyReduction_244
    happyReduction_244 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_244 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap66
    happyOut66 HappyAbsSyn
    happy_x_1 of { (HappyWrap66 Telescope1
    happy_var_1) ->
    	Telescope1 -> HappyAbsSyn
    happyIn65
    		 (Telescope1
    happy_var_1
    	)}

    happyReduce_245 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_245 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_245 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    56# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_245
    happyReduction_245 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_245 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap66
    happyOut66 HappyAbsSyn
    happy_x_2 of { (HappyWrap66 Telescope1
    happy_var_2) ->
    	Telescope1 -> HappyAbsSyn
    happyIn66
    		 (TypedBinding
    happy_var_1 TypedBinding -> Telescope1 -> Telescope1
    forall a. a -> NonEmpty a -> NonEmpty a
    <| Telescope1
    happy_var_2
    	)}}

    happyReduce_246 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_246 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_246 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    56# HappyAbsSyn -> HappyAbsSyn
    happyReduction_246
    happyReduction_246 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_246 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	Telescope1 -> HappyAbsSyn
    happyIn66
    		 (TypedBinding -> Telescope1
    forall el coll. Singleton el coll => el -> coll
    singleton TypedBinding
    happy_var_1
    	)}

    happyReduce_247 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_247 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_247 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_247
    happyReduction_247 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_247 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap70
    happyOut70 HappyAbsSyn
    happy_x_3 of { (HappyWrap70 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Interval
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_248 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_248 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_248 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_248
    happyReduction_248 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_248 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_3 of { (HappyWrap68 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Interval
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Hiding -> TypedBinding -> TypedBinding
    forall a. LensHiding a => Hiding -> a -> a
    setHiding Hiding
    Hidden (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_249 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_249 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_249 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_249
    happyReduction_249 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_249 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_3 of { (HappyWrap68 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_4 of { (HappyWrap21 Range
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Range
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 TypedBinding -> TypedBinding
    forall a. LensHiding a => a -> a
    makeInstance (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_250 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_250 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_250 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_250
    happyReduction_250 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_250 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap70
    happyOut70 HappyAbsSyn
    happy_x_3 of { (HappyWrap70 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Interval
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_251 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_251 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_251 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_251
    happyReduction_251 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_251 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_3 of { (HappyWrap68 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Interval
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Hiding -> TypedBinding -> TypedBinding
    forall a. LensHiding a => Hiding -> a -> a
    setHiding Hiding
    Hidden (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_252 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_252 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_252 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_252
    happyReduction_252 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_252 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_3 of { (HappyWrap68 TypedBinding
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_4 of { (HappyWrap21 Range
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_2,TypedBinding
    happy_var_3,Range
    happy_var_4)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 TypedBinding -> TypedBinding
    forall a. LensHiding a => a -> a
    makeInstance (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Relevance -> TypedBinding -> TypedBinding
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict TypedBinding
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_253 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_253 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_253 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_253
    happyReduction_253 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_253 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap70
    happyOut70 HappyAbsSyn
    happy_x_2 of { (HappyWrap70 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Interval
    happy_var_3)) TypedBinding
    happy_var_2
    	)}}}

    happyReduce_254 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_254 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_254 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_254
    happyReduction_254 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_254 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap71
    happyOut71 HappyAbsSyn
    happy_x_2 of { (HappyWrap71 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Interval
    happy_var_3)) TypedBinding
    happy_var_2
    	)}}}

    happyReduce_255 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_255 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_255 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_255
    happyReduction_255 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_255 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_2 of { (HappyWrap68 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_3 of { (HappyWrap21 Range
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Range
    happy_var_3)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 TypedBinding -> TypedBinding
    forall a. LensHiding a => a -> a
    makeInstance TypedBinding
    happy_var_2
    	)}}}

    happyReduce_256 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_256 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_256 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_256
    happyReduction_256 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_256 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap69
    happyOut69 HappyAbsSyn
    happy_x_2 of { (HappyWrap69 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_3 of { (HappyWrap21 Range
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Range
    happy_var_3)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 TypedBinding -> TypedBinding
    forall a. LensHiding a => a -> a
    makeInstance TypedBinding
    happy_var_2
    	)}}}

    happyReduce_257 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_257 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_257 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_257
    happyReduction_257 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_257 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap68
    happyOut68 HappyAbsSyn
    happy_x_2 of { (HappyWrap68 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Interval
    happy_var_3)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Hiding -> TypedBinding -> TypedBinding
    forall a. LensHiding a => Hiding -> a -> a
    setHiding Hiding
    Hidden TypedBinding
    happy_var_2
    	)}}}

    happyReduce_258 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_258 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_258 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_258
    happyReduction_258 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_258 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenBrace Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap69
    happyOut69 HappyAbsSyn
    happy_x_2 of { (HappyWrap69 TypedBinding
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseBrace Interval
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> TypedBinding -> TypedBinding
    forall a. SetRange a => Range -> a -> a
    setRange ((Interval, TypedBinding, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,TypedBinding
    happy_var_2,Interval
    happy_var_3)) (TypedBinding -> TypedBinding) -> TypedBinding -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $
                                 Hiding -> TypedBinding -> TypedBinding
    forall a. LensHiding a => Hiding -> a -> a
    setHiding Hiding
    Hidden TypedBinding
    happy_var_2
    	)}}}

    happyReduce_259 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_259 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_259 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_259
    happyReduction_259 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_259 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap141
    happyOut141 HappyAbsSyn
    happy_x_2 of { (HappyWrap141 List1 Declaration
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> List1 Declaration -> TypedBinding
    forall e. Range -> List1 Declaration -> TypedBinding' e
    TLet ((Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_3)) List1 Declaration
    happy_var_2
    	)}}}

    happyReduce_260 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_260 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_260 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    57# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_260
    happyReduction_260 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_260 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap188
    happyOut188 HappyAbsSyn
    happy_x_3 of { (HappyWrap188 List1 Declaration
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	TypedBinding -> HappyAbsSyn
    happyIn67
    		 (Range -> List1 Declaration -> TypedBinding
    forall e. Range -> List1 Declaration -> TypedBinding' e
    TLet ((Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_4)) List1 Declaration
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_261 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_261 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_261 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    58# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_261
    happyReduction_261 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_261 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_1 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn68
    		 (let r :: Range
    r = (List1 (NamedArg Binder), Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 (NamedArg Binder)
    happy_var_1,Interval
    happy_var_2,Expr
    happy_var_3) -- the range is approximate only for TypedBindings
        in Range -> List1 (NamedArg Binder) -> Expr -> TypedBinding
    forall e. Range -> List1 (NamedArg Binder) -> e -> TypedBinding' e
    TBind Range
    r List1 (NamedArg Binder)
    happy_var_1 Expr
    happy_var_3
    	)}}}

    happyReduce_262 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_262 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_262 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    59# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_262
    happyReduction_262 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_262 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser TypedBinding
    -> (TypedBinding -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_1 of { (HappyWrap28 List1 Attr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_2 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	( do
        let r :: Range
    r = (List1 Attr, List1 (NamedArg Binder), Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 Attr
    happy_var_1,List1 (NamedArg Binder)
    happy_var_2,Interval
    happy_var_3,Expr
    happy_var_4) -- the range is approximate only for TypedBindings
        List1 (NamedArg Binder)
    xs <- (NamedArg Binder -> Parser (NamedArg Binder))
    -> List1 (NamedArg Binder) -> Parser (List1 (NamedArg Binder))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM (List1 Attr -> NamedArg Binder -> Parser (NamedArg Binder)
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_1 (NamedArg Binder -> Parser (NamedArg Binder))
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> Parser (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    happy_var_1) List1 (NamedArg Binder)
    happy_var_2
        TypedBinding -> Parser TypedBinding
    forall (m :: * -> *) a. Monad m => a -> m a
    return (TypedBinding -> Parser TypedBinding)
    -> TypedBinding -> Parser TypedBinding
    forall a b. (a -> b) -> a -> b
    $ Range -> List1 (NamedArg Binder) -> Expr -> TypedBinding
    forall e. Range -> List1 (NamedArg Binder) -> e -> TypedBinding' e
    TBind Range
    r List1 (NamedArg Binder)
    xs Expr
    happy_var_4)}}}})
    	) (\TypedBinding
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (TypedBinding -> HappyAbsSyn
    happyIn69 TypedBinding
    r))

    happyReduce_263 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_263 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_263 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    60# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_263
    happyReduction_263 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_263 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap35
    happyOut35 HappyAbsSyn
    happy_x_1 of { (HappyWrap35 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	TypedBinding -> HappyAbsSyn
    happyIn70
    		 (let r :: Range
    r = (List1 (NamedArg Binder), Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 (NamedArg Binder)
    happy_var_1,Interval
    happy_var_2,Expr
    happy_var_3) -- the range is approximate only for TypedBindings
        in Range -> List1 (NamedArg Binder) -> Expr -> TypedBinding
    forall e. Range -> List1 (NamedArg Binder) -> e -> TypedBinding' e
    TBind Range
    r List1 (NamedArg Binder)
    happy_var_1 Expr
    happy_var_3
    	)}}}

    happyReduce_264 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_264 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_264 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    61# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_264
    happyReduction_264 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_264 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser TypedBinding
    -> (TypedBinding -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_1 of { (HappyWrap28 List1 Attr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap35
    happyOut35 HappyAbsSyn
    happy_x_2 of { (HappyWrap35 List1 (NamedArg Binder)
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	( do
        let r :: Range
    r = (List1 Attr, List1 (NamedArg Binder), Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (List1 Attr
    happy_var_1,List1 (NamedArg Binder)
    happy_var_2,Interval
    happy_var_3,Expr
    happy_var_4) -- the range is approximate only for TypedBindings
        List1 (NamedArg Binder)
    xs <- (NamedArg Binder -> Parser (NamedArg Binder))
    -> List1 (NamedArg Binder) -> Parser (List1 (NamedArg Binder))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM (List1 Attr -> NamedArg Binder -> Parser (NamedArg Binder)
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_1 (NamedArg Binder -> Parser (NamedArg Binder))
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> Parser (NamedArg Binder)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    happy_var_1) List1 (NamedArg Binder)
    happy_var_2
        TypedBinding -> Parser TypedBinding
    forall (m :: * -> *) a. Monad m => a -> m a
    return (TypedBinding -> Parser TypedBinding)
    -> TypedBinding -> Parser TypedBinding
    forall a b. (a -> b) -> a -> b
    $ Range -> List1 (NamedArg Binder) -> Expr -> TypedBinding
    forall e. Range -> List1 (NamedArg Binder) -> e -> TypedBinding' e
    TBind Range
    r List1 (NamedArg Binder)
    xs Expr
    happy_var_4)}}}})
    	) (\TypedBinding
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (TypedBinding -> HappyAbsSyn
    happyIn71 TypedBinding
    r))

    happyReduce_265 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_265 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_265 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    62# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_265
    happyReduction_265 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_265 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 LamBinding)
    -> (List1 LamBinding -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    happy_x_1 of { (HappyWrap74 LamBinds
    happy_var_1) ->
    	(
          case LamBinds -> Maybe Hiding
    forall a. LamBinds' a -> Maybe Hiding
    absurdBinding LamBinds
    happy_var_1 of
            Just{}  -> [Char] -> Parser (List1 LamBinding)
    forall a. [Char] -> Parser a
    parseError [Char]
    "Absurd lambda cannot have a body."
            Maybe Hiding
    Nothing -> List1 LamBinding -> Parser (List1 LamBinding)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 LamBinding -> Parser (List1 LamBinding))
    -> List1 LamBinding -> Parser (List1 LamBinding)
    forall a b. (a -> b) -> a -> b
    $ [LamBinding] -> List1 LamBinding
    forall a. [a] -> NonEmpty a
    List1.fromList ([LamBinding] -> List1 LamBinding)
    -> [LamBinding] -> List1 LamBinding
    forall a b. (a -> b) -> a -> b
    $ LamBinds -> [LamBinding]
    forall a. LamBinds' a -> a
    lamBindings LamBinds
    happy_var_1)})
    	) (\List1 LamBinding
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 LamBinding -> HappyAbsSyn
    happyIn72 List1 LamBinding
    r))

    happyReduce_266 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_266 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_266 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    63# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_266
    happyReduction_266 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_266 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either ([LamBinding], Hiding) (List1 Expr))
    -> (Either ([LamBinding], Hiding) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap75
    happyOut75 HappyAbsSyn
    happy_x_1 of { (HappyWrap75 Either LamBinds (List1 Expr)
    happy_var_1) ->
    	(
        case Either LamBinds (List1 Expr)
    happy_var_1 of
          Left LamBinds
    lb -> case LamBinds -> Maybe Hiding
    forall a. LamBinds' a -> Maybe Hiding
    absurdBinding LamBinds
    lb of
                       Maybe Hiding
    Nothing -> [Char] -> Parser (Either ([LamBinding], Hiding) (List1 Expr))
    forall a. [Char] -> Parser a
    parseError [Char]
    "Missing body for lambda"
                       Just Hiding
    h  -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser (Either ([LamBinding], Hiding) (List1 Expr))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Either ([LamBinding], Hiding) (List1 Expr)
     -> Parser (Either ([LamBinding], Hiding) (List1 Expr)))
    -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser (Either ([LamBinding], Hiding) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ ([LamBinding], Hiding)
    -> Either ([LamBinding], Hiding) (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> [LamBinding]
    forall a. LamBinds' a -> a
    lamBindings LamBinds
    lb, Hiding
    h)
          Right List1 Expr
    es -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser (Either ([LamBinding], Hiding) (List1 Expr))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Either ([LamBinding], Hiding) (List1 Expr)
     -> Parser (Either ([LamBinding], Hiding) (List1 Expr)))
    -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser (Either ([LamBinding], Hiding) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ List1 Expr -> Either ([LamBinding], Hiding) (List1 Expr)
    forall a b. b -> Either a b
    Right List1 Expr
    es)})
    	) (\Either ([LamBinding], Hiding) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either ([LamBinding], Hiding) (List1 Expr) -> HappyAbsSyn
    happyIn73 Either ([LamBinding], Hiding) (List1 Expr)
    r))

    happyReduce_267 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_267 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_267 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_267
    happyReduction_267 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_267 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    happy_x_2 of { (HappyWrap74 LamBinds
    happy_var_2) ->
    	LamBinds -> HappyAbsSyn
    happyIn74
    		 (([LamBinding] -> [LamBinding]) -> LamBinds -> LamBinds
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((NamedArg Binder -> LamBinding)
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> [a] -> [b]
    map NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree (List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    happy_var_1) [LamBinding] -> [LamBinding] -> [LamBinding]
    forall a. [a] -> [a] -> [a]
    ++) LamBinds
    happy_var_2
    	)}}

    happyReduce_268 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_268 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_268 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_268
    happyReduction_268 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_268 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    happy_x_2 of { (HappyWrap74 LamBinds
    happy_var_2) ->
    	LamBinds -> HappyAbsSyn
    happyIn74
    		 (([LamBinding] -> [LamBinding]) -> LamBinds -> LamBinds
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1 LamBinding -> [LamBinding] -> [LamBinding]
    forall a. a -> [a] -> [a]
    :) LamBinds
    happy_var_2
    	)}}

    happyReduce_269 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_269 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_269 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    64# HappyAbsSyn -> HappyAbsSyn
    happyReduction_269
    happyReduction_269 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_269 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	LamBinds -> HappyAbsSyn
    happyIn74
    		 ([LamBinding] -> LamBinds
    forall a. a -> LamBinds' a
    mkLamBinds ([LamBinding] -> LamBinds) -> [LamBinding] -> LamBinds
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> LamBinding)
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> [a] -> [b]
    map NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree ([NamedArg Binder] -> [LamBinding])
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> a -> b
    $ List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    happy_var_1
    	)}

    happyReduce_270 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_270 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_270 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    64# HappyAbsSyn -> HappyAbsSyn
    happyReduction_270
    happyReduction_270 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_270 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	LamBinds -> HappyAbsSyn
    happyIn74
    		 ([LamBinding] -> LamBinds
    forall a. a -> LamBinds' a
    mkLamBinds [TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1]
    	)}

    happyReduce_271 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_271 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_271 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_271
    happyReduction_271 :: p -> p -> HappyAbsSyn
    happyReduction_271 p
    happy_x_2
    	p
    happy_x_1
    	 =  LamBinds -> HappyAbsSyn
    happyIn74
    		 (Hiding -> LamBinds
    mkAbsurdBinding Hiding
    NotHidden
    	)

    happyReduce_272 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_272 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_272 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_272
    happyReduction_272 :: p -> p -> HappyAbsSyn
    happyReduction_272 p
    happy_x_2
    	p
    happy_x_1
    	 =  LamBinds -> HappyAbsSyn
    happyIn74
    		 (Hiding -> LamBinds
    mkAbsurdBinding Hiding
    Hidden
    	)

    happyReduce_273 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_273 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_273 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_273
    happyReduction_273 :: p -> p -> HappyAbsSyn
    happyReduction_273 p
    happy_x_2
    	p
    happy_x_1
    	 =  LamBinds -> HappyAbsSyn
    happyIn74
    		 (Hiding -> LamBinds
    mkAbsurdBinding (Overlappable -> Hiding
    Instance Overlappable
    NoOverlap)
    	)

    happyReduce_274 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_274 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_274 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_274
    happyReduction_274 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_274 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    happy_x_2 of { (HappyWrap74 LamBinds
    happy_var_2) ->
    	Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ ([LamBinding] -> [LamBinding]) -> LamBinds -> LamBinds
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((NamedArg Binder -> LamBinding)
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> [a] -> [b]
    map NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree (List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    happy_var_1) [LamBinding] -> [LamBinding] -> [LamBinding]
    forall a. [a] -> [a] -> [a]
    ++) LamBinds
    happy_var_2
    	)}}

    happyReduce_275 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_275 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_275 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_275
    happyReduction_275 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_275 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap74
    happyOut74 HappyAbsSyn
    happy_x_2 of { (HappyWrap74 LamBinds
    happy_var_2) ->
    	Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ ([LamBinding] -> [LamBinding]) -> LamBinds -> LamBinds
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1 LamBinding -> [LamBinding] -> [LamBinding]
    forall a. a -> [a] -> [a]
    :) LamBinds
    happy_var_2
    	)}}

    happyReduce_276 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_276 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_276 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    65# HappyAbsSyn -> HappyAbsSyn
    happyReduction_276
    happyReduction_276 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_276 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap87
    happyOut87 HappyAbsSyn
    happy_x_1 of { (HappyWrap87 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1) ->
    	Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (case Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1 of
                                        Left List1 (NamedArg Binder)
    lb -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ [LamBinding] -> LamBinds
    forall a. a -> LamBinds' a
    mkLamBinds ((NamedArg Binder -> LamBinding)
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> [a] -> [b]
    map NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree ([NamedArg Binder] -> [LamBinding])
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> a -> b
    $ List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    lb)
                                        Right List1 Expr
    es -> List1 Expr -> Either LamBinds (List1 Expr)
    forall a b. b -> Either a b
    Right List1 Expr
    es
    	)}

    happyReduce_277 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_277 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_277 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    65# HappyAbsSyn -> HappyAbsSyn
    happyReduction_277
    happyReduction_277 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_277 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ [LamBinding] -> LamBinds
    forall a. a -> LamBinds' a
    mkLamBinds [TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1]
    	)}

    happyReduce_278 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_278 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_278 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_278
    happyReduction_278 :: p -> p -> HappyAbsSyn
    happyReduction_278 p
    happy_x_2
    	p
    happy_x_1
    	 =  Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ Hiding -> LamBinds
    mkAbsurdBinding Hiding
    NotHidden
    	)

    happyReduce_279 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_279 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_279 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_279
    happyReduction_279 :: p -> p -> HappyAbsSyn
    happyReduction_279 p
    happy_x_2
    	p
    happy_x_1
    	 =  Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ Hiding -> LamBinds
    mkAbsurdBinding Hiding
    Hidden
    	)

    happyReduce_280 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_280 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_280 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_280
    happyReduction_280 :: p -> p -> HappyAbsSyn
    happyReduction_280 p
    happy_x_2
    	p
    happy_x_1
    	 =  Either LamBinds (List1 Expr) -> HappyAbsSyn
    happyIn75
    		 (LamBinds -> Either LamBinds (List1 Expr)
    forall a b. a -> Either a b
    Left (LamBinds -> Either LamBinds (List1 Expr))
    -> LamBinds -> Either LamBinds (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ Hiding -> LamBinds
    mkAbsurdBinding (Overlappable -> Hiding
    Instance Overlappable
    NoOverlap)
    	)

    happyReduce_281 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_281 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_281 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    66# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_281
    happyReduction_281 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_281 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser LamClause
    -> (LamClause -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap51
    happyOut51 HappyAbsSyn
    happy_x_1 of { (HappyWrap51 [Expr]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	( Bool -> [Expr] -> RHS -> Parser LamClause
    mkLamClause Bool
    False [Expr]
    happy_var_1 (Expr -> RHS
    forall e. e -> RHS' e
    RHS Expr
    happy_var_3))}})
    	) (\LamClause
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (LamClause -> HappyAbsSyn
    happyIn76 LamClause
    r))

    happyReduce_282 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_282 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_282 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    66# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_282
    happyReduction_282 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_282 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser LamClause
    -> (LamClause -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap51
    happyOut51 HappyAbsSyn
    happy_x_2 of { (HappyWrap51 [Expr]
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	( Bool -> [Expr] -> RHS -> Parser LamClause
    mkLamClause Bool
    True  [Expr]
    happy_var_2 (Expr -> RHS
    forall e. e -> RHS' e
    RHS Expr
    happy_var_4))}})
    	) (\LamClause
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (LamClause -> HappyAbsSyn
    happyIn76 LamClause
    r))

    happyReduce_283 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_283 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_283 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    67# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_283
    happyReduction_283 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_283 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser LamClause
    -> (LamClause -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_1 of { (HappyWrap46 List1 Expr
    happy_var_1) ->
    	( Bool -> List1 Expr -> Parser LamClause
    mkAbsurdLamClause Bool
    False List1 Expr
    happy_var_1)})
    	) (\LamClause
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (LamClause -> HappyAbsSyn
    happyIn77 LamClause
    r))

    happyReduce_284 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_284 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_284 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    67# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_284
    happyReduction_284 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_284 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser LamClause
    -> (LamClause -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_2 of { (HappyWrap46 List1 Expr
    happy_var_2) ->
    	( Bool -> List1 Expr -> Parser LamClause
    mkAbsurdLamClause Bool
    True  List1 Expr
    happy_var_2)})
    	) (\LamClause
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (LamClause -> HappyAbsSyn
    happyIn77 LamClause
    r))

    happyReduce_285 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_285 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_285 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    68# HappyAbsSyn -> HappyAbsSyn
    happyReduction_285
    happyReduction_285 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_285 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap76
    happyOut76 HappyAbsSyn
    happy_x_1 of { (HappyWrap76 LamClause
    happy_var_1) ->
    	LamClause -> HappyAbsSyn
    happyIn78
    		 (LamClause
    happy_var_1
    	)}

    happyReduce_286 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_286 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_286 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    68# HappyAbsSyn -> HappyAbsSyn
    happyReduction_286
    happyReduction_286 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_286 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap77
    happyOut77 HappyAbsSyn
    happy_x_1 of { (HappyWrap77 LamClause
    happy_var_1) ->
    	LamClause -> HappyAbsSyn
    happyIn78
    		 (LamClause
    happy_var_1
    	)}

    happyReduce_287 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_287 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_287 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    69# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_287
    happyReduction_287 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_287 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap79
    happyOut79 HappyAbsSyn
    happy_x_1 of { (HappyWrap79 NonEmpty LamClause
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap78
    happyOut78 HappyAbsSyn
    happy_x_3 of { (HappyWrap78 LamClause
    happy_var_3) ->
    	NonEmpty LamClause -> HappyAbsSyn
    happyIn79
    		 (LamClause
    happy_var_3 LamClause -> NonEmpty LamClause -> NonEmpty LamClause
    forall a. a -> NonEmpty a -> NonEmpty a
    <| NonEmpty LamClause
    happy_var_1
    	)}}

    happyReduce_288 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_288 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_288 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    69# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_288
    happyReduction_288 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_288 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap77
    happyOut77 HappyAbsSyn
    happy_x_1 of { (HappyWrap77 LamClause
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap78
    happyOut78 HappyAbsSyn
    happy_x_3 of { (HappyWrap78 LamClause
    happy_var_3) ->
    	NonEmpty LamClause -> HappyAbsSyn
    happyIn79
    		 (LamClause
    happy_var_3 LamClause -> NonEmpty LamClause -> NonEmpty LamClause
    forall a. a -> NonEmpty a -> NonEmpty a
    <| LamClause -> NonEmpty LamClause
    forall el coll. Singleton el coll => el -> coll
    singleton LamClause
    happy_var_1
    	)}}

    happyReduce_289 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_289 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_289 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    69# HappyAbsSyn -> HappyAbsSyn
    happyReduction_289
    happyReduction_289 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_289 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap76
    happyOut76 HappyAbsSyn
    happy_x_1 of { (HappyWrap76 LamClause
    happy_var_1) ->
    	NonEmpty LamClause -> HappyAbsSyn
    happyIn79
    		 (LamClause -> NonEmpty LamClause
    forall el coll. Singleton el coll => el -> coll
    singleton LamClause
    happy_var_1
    	)}

    happyReduce_290 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_290 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_290 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    70# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_290
    happyReduction_290 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_290 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap80
    happyOut80 HappyAbsSyn
    happy_x_1 of { (HappyWrap80 NonEmpty LamClause
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap78
    happyOut78 HappyAbsSyn
    happy_x_3 of { (HappyWrap78 LamClause
    happy_var_3) ->
    	NonEmpty LamClause -> HappyAbsSyn
    happyIn80
    		 (LamClause
    happy_var_3 LamClause -> NonEmpty LamClause -> NonEmpty LamClause
    forall a. a -> NonEmpty a -> NonEmpty a
    <| NonEmpty LamClause
    happy_var_1
    	)}}

    happyReduce_291 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_291 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_291 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    70# HappyAbsSyn -> HappyAbsSyn
    happyReduction_291
    happyReduction_291 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_291 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap78
    happyOut78 HappyAbsSyn
    happy_x_1 of { (HappyWrap78 LamClause
    happy_var_1) ->
    	NonEmpty LamClause -> HappyAbsSyn
    happyIn80
    		 (LamClause -> NonEmpty LamClause
    forall el coll. Singleton el coll => el -> coll
    singleton LamClause
    happy_var_1
    	)}

    happyReduce_292 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_292 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_292 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    71# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_292
    happyReduction_292 :: p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_292 p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap82
    happyOut82 HappyAbsSyn
    happy_x_1 of { (HappyWrap82 List1 LamBinding
    happy_var_1) ->
    	List1 LamBinding -> HappyAbsSyn
    happyIn81
    		 (List1 LamBinding
    happy_var_1
    	)}

    happyReduce_293 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_293 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_293 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    72# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_293
    happyReduction_293 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_293 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap82
    happyOut82 HappyAbsSyn
    happy_x_2 of { (HappyWrap82 List1 LamBinding
    happy_var_2) ->
    	List1 LamBinding -> HappyAbsSyn
    happyIn82
    		 ((NamedArg Binder -> LamBinding)
    -> List1 (NamedArg Binder) -> List1 LamBinding
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree List1 (NamedArg Binder)
    happy_var_1 List1 LamBinding -> List1 LamBinding -> List1 LamBinding
    forall a. Semigroup a => a -> a -> a
    <> List1 LamBinding
    happy_var_2
    	)}}

    happyReduce_294 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_294 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_294 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    72# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_294
    happyReduction_294 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_294 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap82
    happyOut82 HappyAbsSyn
    happy_x_2 of { (HappyWrap82 List1 LamBinding
    happy_var_2) ->
    	List1 LamBinding -> HappyAbsSyn
    happyIn82
    		 (TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1 LamBinding -> List1 LamBinding -> List1 LamBinding
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 LamBinding
    happy_var_2
    	)}}

    happyReduce_295 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_295 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_295 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    72# HappyAbsSyn -> HappyAbsSyn
    happyReduction_295
    happyReduction_295 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_295 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	List1 LamBinding -> HappyAbsSyn
    happyIn82
    		 ((NamedArg Binder -> LamBinding)
    -> List1 (NamedArg Binder) -> List1 LamBinding
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree List1 (NamedArg Binder)
    happy_var_1
    	)}

    happyReduce_296 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_296 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_296 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    72# HappyAbsSyn -> HappyAbsSyn
    happyReduction_296
    happyReduction_296 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_296 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	List1 LamBinding -> HappyAbsSyn
    happyIn82
    		 (LamBinding -> List1 LamBinding
    forall el coll. Singleton el coll => el -> coll
    singleton (LamBinding -> List1 LamBinding) -> LamBinding -> List1 LamBinding
    forall a b. (a -> b) -> a -> b
    $ TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1
    	)}

    happyReduce_297 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_297 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_297 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    73# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_297
    happyReduction_297 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_297 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_2 of { (HappyWrap83 [LamBinding]
    happy_var_2) ->
    	[LamBinding] -> HappyAbsSyn
    happyIn83
    		 ((NamedArg Binder -> LamBinding)
    -> [NamedArg Binder] -> [LamBinding]
    forall a b. (a -> b) -> [a] -> [b]
    map NamedArg Binder -> LamBinding
    forall a. NamedArg Binder -> LamBinding' a
    DomainFree (List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    happy_var_1) [LamBinding] -> [LamBinding] -> [LamBinding]
    forall a. [a] -> [a] -> [a]
    ++ [LamBinding]
    happy_var_2
    	)}}

    happyReduce_298 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_298 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_298 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    73# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_298
    happyReduction_298 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_298 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap67
    happyOut67 HappyAbsSyn
    happy_x_1 of { (HappyWrap67 TypedBinding
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_2 of { (HappyWrap83 [LamBinding]
    happy_var_2) ->
    	[LamBinding] -> HappyAbsSyn
    happyIn83
    		 (TypedBinding -> LamBinding
    forall a. a -> LamBinding' a
    DomainFull TypedBinding
    happy_var_1 LamBinding -> [LamBinding] -> [LamBinding]
    forall a. a -> [a] -> [a]
    : [LamBinding]
    happy_var_2
    	)}}

    happyReduce_299 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_299 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_299 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    73# HappyAbsSyn
    happyReduction_299
    happyReduction_299 :: HappyAbsSyn
    happyReduction_299  =  [LamBinding] -> HappyAbsSyn
    happyIn83
    		 ([]
    	)

    happyReduce_300 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_300 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_300 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    74# HappyAbsSyn
    happyReduction_300
    happyReduction_300 :: HappyAbsSyn
    happyReduction_300  =  [NamedArg Binder] -> HappyAbsSyn
    happyIn84
    		 ([]
    	)

    happyReduce_301 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_301 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_301 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    74# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_301
    happyReduction_301 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_301 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap85
    happyOut85 HappyAbsSyn
    happy_x_1 of { (HappyWrap85 List1 (NamedArg Binder)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap84
    happyOut84 HappyAbsSyn
    happy_x_2 of { (HappyWrap84 [NamedArg Binder]
    happy_var_2) ->
    	[NamedArg Binder] -> HappyAbsSyn
    happyIn84
    		 (List1 (NamedArg Binder) -> [NamedArg Binder]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (NamedArg Binder)
    happy_var_1 [NamedArg Binder] -> [NamedArg Binder] -> [NamedArg Binder]
    forall a. [a] -> [a] -> [a]
    ++ [NamedArg Binder]
    happy_var_2
    	)}}

    happyReduce_302 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_302 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_302 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    75# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_302
    happyReduction_302 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_302 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 (NamedArg Binder))
    -> (List1 (NamedArg Binder) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap87
    happyOut87 HappyAbsSyn
    happy_x_1 of { (HappyWrap87 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1) ->
    	( case Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_1 of
                                 Left List1 (NamedArg Binder)
    lbs -> List1 (NamedArg Binder) -> Parser (List1 (NamedArg Binder))
    forall (m :: * -> *) a. Monad m => a -> m a
    return List1 (NamedArg Binder)
    lbs
                                 Right List1 Expr
    _ -> [Char] -> Parser (List1 (NamedArg Binder))
    forall a. [Char] -> Parser a
    parseError [Char]
    "expected sequence of bound identifiers, not absurd pattern")})
    	) (\List1 (NamedArg Binder)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 (NamedArg Binder) -> HappyAbsSyn
    happyIn85 List1 (NamedArg Binder)
    r))

    happyReduce_303 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_303 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_303 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    76# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_303
    happyReduction_303 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_303 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Maybe Pattern)
    -> (Maybe Pattern -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_2 of { (HappyWrap56 Expr
    happy_var_2) ->
    	( (Pattern -> Maybe Pattern)
    -> Parser Pattern -> Parser (Maybe Pattern)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Pattern -> Maybe Pattern
    forall a. a -> Maybe a
    Just (Expr -> Parser Pattern
    exprToPattern Expr
    happy_var_2))})
    	) (\Maybe Pattern
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Maybe Pattern -> HappyAbsSyn
    happyIn86 Maybe Pattern
    r))

    happyReduce_304 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_304 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_304 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    76# HappyAbsSyn
    happyReduction_304
    happyReduction_304 :: HappyAbsSyn
    happyReduction_304  =  Maybe Pattern -> HappyAbsSyn
    happyIn86
    		 (Maybe Pattern
    forall a. Maybe a
    Nothing
    	)

    happyReduce_305 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_305 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_305 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    77# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_305
    happyReduction_305 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_305 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    happy_x_1 of { (HappyWrap31 Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap86
    happyOut86 HappyAbsSyn
    happy_x_2 of { (HappyWrap86 Maybe Pattern
    happy_var_2) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg Binder -> List1 (NamedArg Binder))
    -> NamedArg Binder
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ NamedArg Binder -> NamedArg Binder
    forall a. a -> a
    id Maybe Pattern
    happy_var_2 Name
    happy_var_1
    	)}}

    happyReduce_306 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_306 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_306 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    77# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_306
    happyReduction_306 :: HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_306 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    happy_x_2 of { (HappyWrap31 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap86
    happyOut86 HappyAbsSyn
    happy_x_3 of { (HappyWrap86 Maybe Pattern
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg Binder -> List1 (NamedArg Binder))
    -> NamedArg Binder
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ (Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant) Maybe Pattern
    happy_var_3 Name
    happy_var_2
    	)}}

    happyReduce_307 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_307 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_307 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    77# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_307
    happyReduction_307 :: HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_307 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap31
    happyOut31 HappyAbsSyn
    happy_x_2 of { (HappyWrap31 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap86
    happyOut86 HappyAbsSyn
    happy_x_3 of { (HappyWrap86 Maybe Pattern
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg Binder -> List1 (NamedArg Binder))
    -> NamedArg Binder
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> NamedArg Binder -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ (Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict) Maybe Pattern
    happy_var_3 Name
    happy_var_2
    	)}}

    happyReduce_308 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_308 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_308 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    77# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_308
    happyReduction_308 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_308 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap46
    happyOut46 HappyAbsSyn
    happy_x_2 of { (HappyWrap46 List1 Expr
    happy_var_2) ->
    	( Expr -> Parser Pattern
    exprToPattern (List1 Expr -> Expr
    rawApp List1 Expr
    happy_var_2) Parser Pattern
    -> (Pattern
        -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
    >>= \ Pattern
    p ->
                                     Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (Either (List1 (NamedArg Binder)) (List1 Expr)
     -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> (NamedArg Binder
        -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> NamedArg Binder
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (NamedArg Binder -> List1 (NamedArg Binder))
    -> NamedArg Binder
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg Binder
     -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> NamedArg Binder
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ NamedArg Binder -> NamedArg Binder
    forall a. a -> a
    id (Pattern -> Maybe Pattern
    forall a. a -> Maybe a
    Just Pattern
    p) (Name -> NamedArg Binder) -> Name -> NamedArg Binder
    forall a b. (a -> b) -> a -> b
    $ Name
    simpleHole)})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_309 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_309 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_309 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_309
    happyReduction_309 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_309 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap34
    happyOut34 HappyAbsSyn
    happy_x_3 of { (HappyWrap34 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_3) ->
    	( List1 Attr -> ArgInfo -> Parser ArgInfo
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_2 ArgInfo
    defaultArgInfo Parser ArgInfo
    -> (ArgInfo -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> \ ArgInfo
    ai ->
                  (List1 (NamedArg Binder) -> List1 (NamedArg Binder))
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall (p :: * -> * -> *) a b c.
    Bifunctor p =>
    (a -> b) -> p a c -> p b c
    first ((NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    happy_var_2 (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . ArgInfo -> NamedArg Binder -> NamedArg Binder
    forall a. LensArgInfo a => ArgInfo -> a -> a
    setArgInfo ArgInfo
    ai)) Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_3)}})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_310 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_310 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_310 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    77# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_310
    happyReduction_310 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_310 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap34
    happyOut34 HappyAbsSyn
    happy_x_2 of { (HappyWrap34 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_2) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 ((List1 (NamedArg Binder) -> List1 (NamedArg Binder))
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall (p :: * -> * -> *) a b c.
    Bifunctor p =>
    (a -> b) -> p a c -> p b c
    first ((NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    hide) Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_2
    	)}

    happyReduce_311 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_311 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_311 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_311
    happyReduction_311 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_311 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap34
    happyOut34 HappyAbsSyn
    happy_x_3 of { (HappyWrap34 Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_3) ->
    	( List1 Attr -> ArgInfo -> Parser ArgInfo
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_2 ArgInfo
    defaultArgInfo Parser ArgInfo
    -> (ArgInfo -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> \ ArgInfo
    ai ->
                  (List1 (NamedArg Binder) -> List1 (NamedArg Binder))
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall (p :: * -> * -> *) a b c.
    Bifunctor p =>
    (a -> b) -> p a c -> p b c
    first ((NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    hide (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    happy_var_2 (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . ArgInfo -> NamedArg Binder -> NamedArg Binder
    forall a. LensArgInfo a => ArgInfo -> a -> a
    setArgInfo ArgInfo
    ai)) Either (List1 (NamedArg Binder)) (List1 Expr)
    happy_var_3)}})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_312 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_312 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_312 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    77# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_312
    happyReduction_312 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_312 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_2 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_2) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    makeInstance List1 (NamedArg Binder)
    happy_var_2
    	)}

    happyReduce_313 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_313 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_313 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_313
    happyReduction_313 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_313 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    -> (Either (List1 (NamedArg Binder)) (List1 Expr)
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_2 of { (HappyWrap28 List1 Attr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_3 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_3) ->
    	( List1 Attr -> ArgInfo -> Parser ArgInfo
    forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 List1 Attr
    happy_var_2 ArgInfo
    defaultArgInfo Parser ArgInfo
    -> (ArgInfo -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> \ ArgInfo
    ai ->
                  List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    happy_var_2 (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . ArgInfo -> NamedArg Binder -> NamedArg Binder
    forall a. LensArgInfo a => ArgInfo -> a -> a
    setArgInfo ArgInfo
    ai) List1 (NamedArg Binder)
    happy_var_3)}})
    	) (\Either (List1 (NamedArg Binder)) (List1 Expr)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87 Either (List1 (NamedArg Binder)) (List1 Expr)
    r))

    happyReduce_314 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_314 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_314 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_314
    happyReduction_314 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_314 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_3 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    hide (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant) List1 (NamedArg Binder)
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_315 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_315 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_315 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_315
    happyReduction_315 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_315 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_3 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant) List1 (NamedArg Binder)
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_316 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_316 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_316 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_316
    happyReduction_316 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_316 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_3 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    hide (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict) List1 (NamedArg Binder)
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_317 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_317 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_317 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    77# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_317
    happyReduction_317 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_317 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap33
    happyOut33 HappyAbsSyn
    happy_x_3 of { (HappyWrap33 List1 (NamedArg Binder)
    happy_var_3) ->
    	Either (List1 (NamedArg Binder)) (List1 Expr) -> HappyAbsSyn
    happyIn87
    		 (List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. (a -> b) -> a -> b
    $ (NamedArg Binder -> NamedArg Binder)
    -> List1 (NamedArg Binder) -> List1 (NamedArg Binder)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg Binder -> NamedArg Binder
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg Binder -> NamedArg Binder)
    -> (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder
    -> NamedArg Binder
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Relevance -> NamedArg Binder -> NamedArg Binder
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    NonStrict) List1 (NamedArg Binder)
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_318 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_318 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_318 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    78# HappyAbsSyn -> HappyAbsSyn
    happyReduction_318
    happyReduction_318 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_318 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap89
    happyOut89 HappyAbsSyn
    happy_x_1 of { (HappyWrap89 DoStmt
    happy_var_1) ->
    	List1 DoStmt -> HappyAbsSyn
    happyIn88
    		 (DoStmt -> List1 DoStmt
    forall el coll. Singleton el coll => el -> coll
    singleton DoStmt
    happy_var_1
    	)}

    happyReduce_319 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_319 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_319 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    78# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_319
    happyReduction_319 :: p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_319 p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap89
    happyOut89 HappyAbsSyn
    happy_x_1 of { (HappyWrap89 DoStmt
    happy_var_1) ->
    	List1 DoStmt -> HappyAbsSyn
    happyIn88
    		 (DoStmt -> List1 DoStmt
    forall el coll. Singleton el coll => el -> coll
    singleton DoStmt
    happy_var_1
    	)}

    happyReduce_320 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_320 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_320 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    78# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_320
    happyReduction_320 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_320 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap89
    happyOut89 HappyAbsSyn
    happy_x_1 of { (HappyWrap89 DoStmt
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap88
    happyOut88 HappyAbsSyn
    happy_x_3 of { (HappyWrap88 List1 DoStmt
    happy_var_3) ->
    	List1 DoStmt -> HappyAbsSyn
    happyIn88
    		 (DoStmt
    happy_var_1 DoStmt -> List1 DoStmt -> List1 DoStmt
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 DoStmt
    happy_var_3
    	)}}

    happyReduce_321 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_321 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_321 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    2# Int#
    79# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_321
    happyReduction_321 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_321 (HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser DoStmt
    -> (DoStmt -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_1 of { (HappyWrap42 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap90
    happyOut90 HappyAbsSyn
    happy_x_2 of { (HappyWrap90 [LamClause]
    happy_var_2) ->
    	( Expr -> [LamClause] -> Parser DoStmt
    buildDoStmt Expr
    happy_var_1 [LamClause]
    happy_var_2)}})
    	) (\DoStmt
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (DoStmt -> HappyAbsSyn
    happyIn89 DoStmt
    r))

    happyReduce_322 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_322 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_322 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    80# HappyAbsSyn
    happyReduction_322
    happyReduction_322 :: HappyAbsSyn
    happyReduction_322  =  [LamClause] -> HappyAbsSyn
    happyIn90
    		 ([]
    	)

    happyReduce_323 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_323 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_323 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    80# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_323
    happyReduction_323 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_323 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap80
    happyOut80 HappyAbsSyn
    happy_x_3 of { (HappyWrap80 NonEmpty LamClause
    happy_var_3) ->
    	[LamClause] -> HappyAbsSyn
    happyIn90
    		 ([LamClause] -> [LamClause]
    forall a. [a] -> [a]
    reverse (NonEmpty LamClause -> [LamClause]
    forall a. NonEmpty a -> [a]
    List1.toList NonEmpty LamClause
    happy_var_3)
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}

    happyReduce_324 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_324 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_324 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    81# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_324
    happyReduction_324 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_324 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap92
    happyOut92 HappyAbsSyn
    happy_x_1 of { (HappyWrap92 ImportDirective
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_2 of { (HappyWrap91 ImportDirective
    happy_var_2) ->
    	ImportDirective -> HappyAbsSyn
    happyIn91
    		 (ImportDirective
    happy_var_1 ImportDirective -> ImportDirective -> ImportDirective
    forall a. Semigroup a => a -> a -> a
    <> ImportDirective
    happy_var_2
    	)}}

    happyReduce_325 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_325 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_325 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    81# HappyAbsSyn
    happyReduction_325
    happyReduction_325 :: HappyAbsSyn
    happyReduction_325  =  ImportDirective -> HappyAbsSyn
    happyIn91
    		 (ImportDirective
    forall a. Monoid a => a
    mempty
    	)

    happyReduce_326 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_326 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_326 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    82# HappyAbsSyn -> HappyAbsSyn
    happyReduction_326
    happyReduction_326 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_326 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPublic Interval
    happy_var_1) ->
    	ImportDirective -> HappyAbsSyn
    happyIn92
    		 (ImportDirective
    forall n m. ImportDirective' n m
    defaultImportDir { importDirRange :: Range
    importDirRange = Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1, publicOpen :: Maybe Range
    publicOpen = Range -> Maybe Range
    forall a. a -> Maybe a
    Just (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) }
    	)}

    happyReduce_327 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_327 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_327 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    82# HappyAbsSyn -> HappyAbsSyn
    happyReduction_327
    happyReduction_327 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_327 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap93
    happyOut93 HappyAbsSyn
    happy_x_1 of { (HappyWrap93 (Using, Range)
    happy_var_1) ->
    	ImportDirective -> HappyAbsSyn
    happyIn92
    		 (ImportDirective
    forall n m. ImportDirective' n m
    defaultImportDir { importDirRange :: Range
    importDirRange = (Using, Range) -> Range
    forall a b. (a, b) -> b
    snd (Using, Range)
    happy_var_1, using :: Using
    using    = (Using, Range) -> Using
    forall a b. (a, b) -> a
    fst (Using, Range)
    happy_var_1 }
    	)}

    happyReduce_328 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_328 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_328 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    82# HappyAbsSyn -> HappyAbsSyn
    happyReduction_328
    happyReduction_328 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_328 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap94
    happyOut94 HappyAbsSyn
    happy_x_1 of { (HappyWrap94 ([ImportedName], Range)
    happy_var_1) ->
    	ImportDirective -> HappyAbsSyn
    happyIn92
    		 (ImportDirective
    forall n m. ImportDirective' n m
    defaultImportDir { importDirRange :: Range
    importDirRange = ([ImportedName], Range) -> Range
    forall a b. (a, b) -> b
    snd ([ImportedName], Range)
    happy_var_1, hiding :: [ImportedName]
    hiding   = ([ImportedName], Range) -> [ImportedName]
    forall a b. (a, b) -> a
    fst ([ImportedName], Range)
    happy_var_1 }
    	)}

    happyReduce_329 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_329 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_329 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    82# HappyAbsSyn -> HappyAbsSyn
    happyReduction_329
    happyReduction_329 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_329 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap95
    happyOut95 HappyAbsSyn
    happy_x_1 of { (HappyWrap95 ([Renaming], Range)
    happy_var_1) ->
    	ImportDirective -> HappyAbsSyn
    happyIn92
    		 (ImportDirective
    forall n m. ImportDirective' n m
    defaultImportDir { importDirRange :: Range
    importDirRange = ([Renaming], Range) -> Range
    forall a b. (a, b) -> b
    snd ([Renaming], Range)
    happy_var_1, impRenaming :: [Renaming]
    impRenaming = ([Renaming], Range) -> [Renaming]
    forall a b. (a, b) -> a
    fst ([Renaming], Range)
    happy_var_1 }
    	)}

    happyReduce_330 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_330 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_330 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    83# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_330
    happyReduction_330 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_330 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUsing Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap101
    happyOut101 HappyAbsSyn
    happy_x_3 of { (HappyWrap101 [ImportedName]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	(Using, Range) -> HappyAbsSyn
    happyIn93
    		 (([ImportedName] -> Using
    forall n m. [ImportedName' n m] -> Using' n m
    Using [ImportedName]
    happy_var_3 , (Interval, Interval, [ImportedName], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,[ImportedName]
    happy_var_3,Interval
    happy_var_4))
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_331 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_331 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_331 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    84# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_331
    happyReduction_331 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_331 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwHiding Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap101
    happyOut101 HappyAbsSyn
    happy_x_3 of { (HappyWrap101 [ImportedName]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	([ImportedName], Range) -> HappyAbsSyn
    happyIn94
    		 (([ImportedName]
    happy_var_3 , (Interval, Interval, [ImportedName], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,[ImportedName]
    happy_var_3,Interval
    happy_var_4))
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_332 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_332 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_332 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    85# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_332
    happyReduction_332 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_332 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRenaming Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap96
    happyOut96 HappyAbsSyn
    happy_x_3 of { (HappyWrap96 [Renaming]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_4) ->
    	([Renaming], Range) -> HappyAbsSyn
    happyIn95
    		 (([Renaming]
    happy_var_3 , (Interval, Interval, [Renaming], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,[Renaming]
    happy_var_3,Interval
    happy_var_4))
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_333 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_333 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_333 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    85# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_333
    happyReduction_333 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_333 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRenaming Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymOpenParen Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymCloseParen Interval
    happy_var_3) ->
    	([Renaming], Range) -> HappyAbsSyn
    happyIn95
    		 (([] , (Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3))
    	)}}}

    happyReduce_334 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_334 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_334 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    86# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_334
    happyReduction_334 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_334 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap97
    happyOut97 HappyAbsSyn
    happy_x_1 of { (HappyWrap97 Renaming
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap96
    happyOut96 HappyAbsSyn
    happy_x_3 of { (HappyWrap96 [Renaming]
    happy_var_3) ->
    	[Renaming] -> HappyAbsSyn
    happyIn96
    		 (Renaming
    happy_var_1 Renaming -> [Renaming] -> [Renaming]
    forall a. a -> [a] -> [a]
    : [Renaming]
    happy_var_3
    	)}}

    happyReduce_335 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_335 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_335 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    86# HappyAbsSyn -> HappyAbsSyn
    happyReduction_335
    happyReduction_335 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_335 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap97
    happyOut97 HappyAbsSyn
    happy_x_1 of { (HappyWrap97 Renaming
    happy_var_1) ->
    	[Renaming] -> HappyAbsSyn
    happyIn96
    		 ([Renaming
    happy_var_1]
    	)}

    happyReduce_336 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_336 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_336 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    87# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_336
    happyReduction_336 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_336 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap99
    happyOut99 HappyAbsSyn
    happy_x_1 of { (HappyWrap99 ImportedName
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwTo Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap98
    happyOut98 HappyAbsSyn
    happy_x_3 of { (HappyWrap98 (Maybe Fixity, Name)
    happy_var_3) ->
    	Renaming -> HappyAbsSyn
    happyIn97
    		 (ImportedName -> ImportedName -> Maybe Fixity -> Range -> Renaming
    forall n m.
    ImportedName' n m
    -> ImportedName' n m -> Maybe Fixity -> Range -> Renaming' n m
    Renaming ImportedName
    happy_var_1 (ImportedName -> Name -> ImportedName
    forall a. ImportedName' a a -> a -> ImportedName' a a
    setImportedName ImportedName
    happy_var_1 ((Maybe Fixity, Name) -> Name
    forall a b. (a, b) -> b
    snd (Maybe Fixity, Name)
    happy_var_3)) ((Maybe Fixity, Name) -> Maybe Fixity
    forall a b. (a, b) -> a
    fst (Maybe Fixity, Name)
    happy_var_3) (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_2)
    	)}}}

    happyReduce_337 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_337 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_337 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    88# HappyAbsSyn -> HappyAbsSyn
    happyReduction_337
    happyReduction_337 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_337 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	(Maybe Fixity, Name) -> HappyAbsSyn
    happyIn98
    		 ((Maybe Fixity
    forall a. Maybe a
    Nothing, Name
    happy_var_1)
    	)}

    happyReduce_338 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_338 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_338 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    88# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_338
    happyReduction_338 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_338 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfix Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	(Maybe Fixity, Name) -> HappyAbsSyn
    happyIn98
    		 ((Fixity -> Maybe Fixity
    forall a. a -> Maybe a
    Just (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    NonAssoc)  , Name
    happy_var_3)
    	)}}}

    happyReduce_339 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_339 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_339 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    88# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_339
    happyReduction_339 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_339 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixL Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	(Maybe Fixity, Name) -> HappyAbsSyn
    happyIn98
    		 ((Fixity -> Maybe Fixity
    forall a. a -> Maybe a
    Just (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    LeftAssoc) , Name
    happy_var_3)
    	)}}}

    happyReduce_340 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_340 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_340 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    88# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_340
    happyReduction_340 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_340 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixR Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	(Maybe Fixity, Name) -> HappyAbsSyn
    happyIn98
    		 ((Fixity -> Maybe Fixity
    forall a. a -> Maybe a
    Just (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    RightAssoc), Name
    happy_var_3)
    	)}}}

    happyReduce_341 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_341 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_341 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    89# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_341
    happyReduction_341 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_341 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	ImportedName -> HappyAbsSyn
    happyIn99
    		 (Name -> ImportedName
    forall n m. n -> ImportedName' n m
    ImportedName Name
    happy_var_2
    	)}

    happyReduce_342 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_342 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_342 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    89# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. HappyAbsSyn -> p -> p -> HappyAbsSyn
    happyReduction_342
    happyReduction_342 :: HappyAbsSyn -> p -> p -> HappyAbsSyn
    happyReduction_342 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	ImportedName -> HappyAbsSyn
    happyIn99
    		 (Name -> ImportedName
    forall n m. m -> ImportedName' n m
    ImportedModule Name
    happy_var_3
    	)}

    happyReduce_343 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_343 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_343 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    90# HappyAbsSyn -> HappyAbsSyn
    happyReduction_343
    happyReduction_343 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_343 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_1 of { (HappyWrap19 Name
    happy_var_1) ->
    	ImportedName -> HappyAbsSyn
    happyIn100
    		 (Name -> ImportedName
    forall n m. n -> ImportedName' n m
    ImportedName Name
    happy_var_1
    	)}

    happyReduce_344 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_344 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_344 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    90# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_344
    happyReduction_344 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_344 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	ImportedName -> HappyAbsSyn
    happyIn100
    		 (Name -> ImportedName
    forall n m. m -> ImportedName' n m
    ImportedModule Name
    happy_var_2
    	)}

    happyReduce_345 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_345 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_345 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    91# HappyAbsSyn
    happyReduction_345
    happyReduction_345 :: HappyAbsSyn
    happyReduction_345  =  [ImportedName] -> HappyAbsSyn
    happyIn101
    		 ([]
    	)

    happyReduce_346 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_346 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_346 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    91# HappyAbsSyn -> HappyAbsSyn
    happyReduction_346
    happyReduction_346 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_346 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap102
    happyOut102 HappyAbsSyn
    happy_x_1 of { (HappyWrap102 List1 ImportedName
    happy_var_1) ->
    	[ImportedName] -> HappyAbsSyn
    happyIn101
    		 (List1 ImportedName -> [ImportedName]
    forall a. NonEmpty a -> [a]
    List1.toList List1 ImportedName
    happy_var_1
    	)}

    happyReduce_347 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_347 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_347 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    92# HappyAbsSyn -> HappyAbsSyn
    happyReduction_347
    happyReduction_347 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_347 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap100
    happyOut100 HappyAbsSyn
    happy_x_1 of { (HappyWrap100 ImportedName
    happy_var_1) ->
    	List1 ImportedName -> HappyAbsSyn
    happyIn102
    		 (ImportedName -> List1 ImportedName
    forall el coll. Singleton el coll => el -> coll
    singleton ImportedName
    happy_var_1
    	)}

    happyReduce_348 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_348 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_348 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    92# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_348
    happyReduction_348 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_348 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap100
    happyOut100 HappyAbsSyn
    happy_x_1 of { (HappyWrap100 ImportedName
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap102
    happyOut102 HappyAbsSyn
    happy_x_3 of { (HappyWrap102 List1 ImportedName
    happy_var_3) ->
    	List1 ImportedName -> HappyAbsSyn
    happyIn102
    		 (ImportedName
    happy_var_1 ImportedName -> List1 ImportedName -> List1 ImportedName
    forall a. a -> NonEmpty a -> NonEmpty a
    <| List1 ImportedName
    happy_var_3
    	)}}

    happyReduce_349 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_349 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_349 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    93# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_349
    happyReduction_349 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_349 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser ([RewriteEqn] -> [WithExpr] -> LHS)
    -> (([RewriteEqn] -> [WithExpr] -> LHS) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap43
    happyOut43 HappyAbsSyn
    happy_x_1 of { (HappyWrap43 Expr
    happy_var_1) ->
    	( Expr -> Parser ([RewriteEqn] -> [WithExpr] -> LHS)
    exprToLHS Expr
    happy_var_1)})
    	) (\[RewriteEqn] -> [WithExpr] -> LHS
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (([RewriteEqn] -> [WithExpr] -> LHS) -> HappyAbsSyn
    happyIn103 [RewriteEqn] -> [WithExpr] -> LHS
    r))

    happyReduce_350 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_350 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_350 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    94# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_350
    happyReduction_350 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_350 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser [Either RewriteEqn (List1 (Named Name Expr))]
    -> ([Either RewriteEqn (List1 (Named Name Expr))]
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap44
    happyOut44 HappyAbsSyn
    happy_x_2 of { (HappyWrap44 List1 (Named Name Expr)
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    happy_x_3 of { (HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) ->
    	( ([Either RewriteEqn (List1 (Named Name Expr))]
     -> [Either RewriteEqn (List1 (Named Name Expr))])
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ([Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    forall a. [a] -> [a] -> [a]
    ++ [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) (List1 (Named Name Expr)
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    buildWithStmt List1 (Named Name Expr)
    happy_var_2))}})
    	) (\[Either RewriteEqn (List1 (Named Name Expr))]
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ([Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn104 [Either RewriteEqn (List1 (Named Name Expr))]
    r))

    happyReduce_351 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_351 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_351 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    94# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_351
    happyReduction_351 :: HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_351 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    happy_x_2 of { (HappyWrap45 List1 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    happy_x_3 of { (HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) ->
    	[Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn104
    		 (RewriteEqn -> Either RewriteEqn (List1 (Named Name Expr))
    forall a b. a -> Either a b
    Left (List1 ((), Expr) -> RewriteEqn
    forall qn nm p e. List1 (qn, e) -> RewriteEqn' qn nm p e
    Rewrite (List1 ((), Expr) -> RewriteEqn) -> List1 ((), Expr) -> RewriteEqn
    forall a b. (a -> b) -> a -> b
    $ (Expr -> ((), Expr)) -> List1 Expr -> List1 ((), Expr)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((),) List1 Expr
    happy_var_2) Either RewriteEqn (List1 (Named Name Expr))
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    forall a. a -> [a] -> [a]
    : [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3
    	)}}

    happyReduce_352 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_352 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_352 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    94# HappyAbsSyn
    happyReduction_352
    happyReduction_352 :: HappyAbsSyn
    happyReduction_352  =  [Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn104
    		 ([]
    	)

    happyReduce_353 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_353 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_353 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    95# HappyAbsSyn -> HappyAbsSyn
    happyReduction_353
    happyReduction_353 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_353 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_1 of { (HappyWrap42 Expr
    happy_var_1) ->
    	HoleContent -> HappyAbsSyn
    happyIn105
    		 (Expr -> HoleContent
    forall qn nm p e. e -> HoleContent' qn nm p e
    HoleContentExpr    Expr
    happy_var_1
    	)}

    happyReduce_354 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_354 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_354 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    95# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_354
    happyReduction_354 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_354 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser HoleContent
    -> (HoleContent -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    happy_x_1 of { (HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_1) ->
    	( ([RewriteEqn] -> HoleContent)
    -> Parser [RewriteEqn] -> Parser HoleContent
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap [RewriteEqn] -> HoleContent
    forall qn nm p e. [RewriteEqn' qn nm p e] -> HoleContent' qn nm p e
    HoleContentRewrite (Parser [RewriteEqn] -> Parser HoleContent)
    -> Parser [RewriteEqn] -> Parser HoleContent
    forall a b. (a -> b) -> a -> b
    $ [Either RewriteEqn (List1 (Named Name Expr))]
    -> (Either RewriteEqn (List1 (Named Name Expr))
        -> Parser RewriteEqn)
    -> Parser [RewriteEqn]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    t a -> (a -> m b) -> m (t b)
    forM [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_1 ((Either RewriteEqn (List1 (Named Name Expr)) -> Parser RewriteEqn)
     -> Parser [RewriteEqn])
    -> (Either RewriteEqn (List1 (Named Name Expr))
        -> Parser RewriteEqn)
    -> Parser [RewriteEqn]
    forall a b. (a -> b) -> a -> b
    $ \case
             Left RewriteEqn
    r  -> RewriteEqn -> Parser RewriteEqn
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure RewriteEqn
    r
             Right{} -> [Char] -> Parser RewriteEqn
    forall a. [Char] -> Parser a
    parseError [Char]
    "Cannot declare a 'with' abstraction from inside a hole.")})
    	) (\HoleContent
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (HoleContent -> HappyAbsSyn
    happyIn105 HoleContent
    r))

    happyReduce_355 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_355 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_355 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    96# HappyAbsSyn
    happyReduction_355
    happyReduction_355 :: HappyAbsSyn
    happyReduction_355  =  WhereClause -> HappyAbsSyn
    happyIn106
    		 (WhereClause
    forall decls. WhereClause' decls
    NoWhere
    	)

    happyReduce_356 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_356 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_356 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    96# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_356
    happyReduction_356 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_356 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	WhereClause -> HappyAbsSyn
    happyIn106
    		 (Range -> [Declaration] -> WhereClause
    forall decls. Range -> decls -> WhereClause' decls
    AnyWhere  (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) [Declaration]
    happy_var_2
    	)}}

    happyReduce_357 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_357 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_357 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    96# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_357
    happyReduction_357 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_357 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_4 of { (HappyWrap189 [Declaration]
    happy_var_4) ->
    	WhereClause -> HappyAbsSyn
    happyIn106
    		 (Range -> Name -> Access -> [Declaration] -> WhereClause
    forall decls.
    Range -> Name -> Access -> decls -> WhereClause' decls
    SomeWhere ((Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_3)) Name
    happy_var_2 Access
    PublicAccess [Declaration]
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_358 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_358 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_358 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    96# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_358
    happyReduction_358 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_358 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap146
    happyOut146 HappyAbsSyn
    happy_x_2 of { (HappyWrap146 Name
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_4 of { (HappyWrap189 [Declaration]
    happy_var_4) ->
    	WhereClause -> HappyAbsSyn
    happyIn106
    		 (Range -> Name -> Access -> [Declaration] -> WhereClause
    forall decls.
    Range -> Name -> Access -> decls -> WhereClause' decls
    SomeWhere ((Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_3)) Name
    happy_var_2 Access
    PublicAccess [Declaration]
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_359 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_359 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_359 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    97# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_359
    happyReduction_359 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_359 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_1 of { (HappyWrap42 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap106
    happyOut106 HappyAbsSyn
    happy_x_2 of { (HappyWrap106 WhereClause
    happy_var_2) ->
    	ExprWhere -> HappyAbsSyn
    happyIn107
    		 (Expr -> WhereClause -> ExprWhere
    ExprWhere Expr
    happy_var_1 WhereClause
    happy_var_2
    	)}}

    happyReduce_360 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_360 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_360 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_360
    happyReduction_360 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_360 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap121
    happyOut121 HappyAbsSyn
    happy_x_1 of { (HappyWrap121 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_361 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_361 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_361 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_361
    happyReduction_361 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_361 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap111
    happyOut111 HappyAbsSyn
    happy_x_1 of { (HappyWrap111 List1 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (List1 Declaration
    happy_var_1
    	)}

    happyReduce_362 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_362 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_362 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_362
    happyReduction_362 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_362 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap114
    happyOut114 HappyAbsSyn
    happy_x_1 of { (HappyWrap114 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_363 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_363 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_363 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_363
    happyReduction_363 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_363 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap115
    happyOut115 HappyAbsSyn
    happy_x_1 of { (HappyWrap115 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_364 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_364 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_364 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_364
    happyReduction_364 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_364 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap116
    happyOut116 HappyAbsSyn
    happy_x_1 of { (HappyWrap116 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_365 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_365 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_365 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_365
    happyReduction_365 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_365 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap117
    happyOut117 HappyAbsSyn
    happy_x_1 of { (HappyWrap117 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_366 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_366 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_366 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_366
    happyReduction_366 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_366 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap120
    happyOut120 HappyAbsSyn
    happy_x_1 of { (HappyWrap120 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_367 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_367 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_367 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_367
    happyReduction_367 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_367 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap122
    happyOut122 HappyAbsSyn
    happy_x_1 of { (HappyWrap122 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_368 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_368 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_368 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_368
    happyReduction_368 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_368 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap123
    happyOut123 HappyAbsSyn
    happy_x_1 of { (HappyWrap123 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_369 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_369 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_369 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_369
    happyReduction_369 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_369 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap124
    happyOut124 HappyAbsSyn
    happy_x_1 of { (HappyWrap124 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_370 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_370 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_370 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_370
    happyReduction_370 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_370 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap125
    happyOut125 HappyAbsSyn
    happy_x_1 of { (HappyWrap125 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_371 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_371 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_371 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_371
    happyReduction_371 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_371 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap126
    happyOut126 HappyAbsSyn
    happy_x_1 of { (HappyWrap126 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_372 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_372 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_372 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_372
    happyReduction_372 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_372 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap127
    happyOut127 HappyAbsSyn
    happy_x_1 of { (HappyWrap127 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_373 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_373 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_373 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_373
    happyReduction_373 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_373 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap128
    happyOut128 HappyAbsSyn
    happy_x_1 of { (HappyWrap128 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_374 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_374 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_374 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_374
    happyReduction_374 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_374 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap129
    happyOut129 HappyAbsSyn
    happy_x_1 of { (HappyWrap129 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_375 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_375 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_375 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_375
    happyReduction_375 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_375 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap141
    happyOut141 HappyAbsSyn
    happy_x_1 of { (HappyWrap141 List1 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (List1 Declaration
    happy_var_1
    	)}

    happyReduce_376 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_376 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_376 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_376
    happyReduction_376 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_376 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap144
    happyOut144 HappyAbsSyn
    happy_x_1 of { (HappyWrap144 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_377 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_377 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_377 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_377
    happyReduction_377 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_377 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap145
    happyOut145 HappyAbsSyn
    happy_x_1 of { (HappyWrap145 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_378 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_378 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_378 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_378
    happyReduction_378 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_378 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap148
    happyOut148 HappyAbsSyn
    happy_x_1 of { (HappyWrap148 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_379 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_379 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_379 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_379
    happyReduction_379 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_379 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap131
    happyOut131 HappyAbsSyn
    happy_x_1 of { (HappyWrap131 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_380 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_380 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_380 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_380
    happyReduction_380 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_380 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap132
    happyOut132 HappyAbsSyn
    happy_x_1 of { (HappyWrap132 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_381 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_381 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_381 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_381
    happyReduction_381 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_381 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap130
    happyOut130 HappyAbsSyn
    happy_x_1 of { (HappyWrap130 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_382 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_382 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_382 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    98# HappyAbsSyn -> HappyAbsSyn
    happyReduction_382
    happyReduction_382 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_382 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap118
    happyOut118 HappyAbsSyn
    happy_x_1 of { (HappyWrap118 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn108
    		 (Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton Declaration
    happy_var_1
    	)}

    happyReduce_383 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_383 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_383 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    99# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_383
    happyReduction_383 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_383 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_1 of { (HappyWrap20 List1 Name
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn109
    		 ((Name -> Declaration) -> List1 Name -> List1 Declaration
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ Name
    x -> ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    typeSig ArgInfo
    defaultArgInfo Maybe Expr
    forall a. Maybe a
    Nothing Name
    x Expr
    happy_var_3) List1 Name
    happy_var_1
    	)}}

    happyReduce_384 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_384 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_384 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    100# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_384
    happyReduction_384 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_384 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap25
    happyOut25 HappyAbsSyn
    happy_x_1 of { (HappyWrap25 ([Attr], List1 (Arg Name))
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	List1 (Arg Declaration) -> HappyAbsSyn
    happyIn110
    		 (let ([Attr]
    attrs, List1 (Arg Name)
    xs) = ([Attr], List1 (Arg Name))
    happy_var_1 in
                               (Arg Name -> Arg Declaration)
    -> List1 (Arg Name) -> List1 (Arg Declaration)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((Name -> Declaration) -> Arg Name -> Arg Declaration
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ Name
    x -> ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    typeSig ArgInfo
    defaultArgInfo ([Attr] -> Maybe Expr
    getTacticAttr [Attr]
    attrs) Name
    x Expr
    happy_var_3)) List1 (Arg Name)
    xs
    	)}}

    happyReduce_385 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_385 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_385 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    100# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_385
    happyReduction_385 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_385 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 (Arg Declaration))
    -> (List1 (Arg Declaration) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOverlap Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap25
    happyOut25 HappyAbsSyn
    happy_x_2 of { (HappyWrap25 ([Attr], List1 (Arg Name))
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	(
          let ([Attr]
    attrs, List1 (Arg Name)
    xs) = ([Attr], List1 (Arg Name))
    happy_var_2
              setOverlap :: Arg Declaration -> Parser (Arg Declaration)
    setOverlap Arg Declaration
    x =
                case Arg Declaration -> Hiding
    forall a. LensHiding a => a -> Hiding
    getHiding Arg Declaration
    x of
                  Instance Overlappable
    _ -> Arg Declaration -> Parser (Arg Declaration)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Arg Declaration -> Parser (Arg Declaration))
    -> Arg Declaration -> Parser (Arg Declaration)
    forall a b. (a -> b) -> a -> b
    $ Overlappable -> Arg Declaration -> Arg Declaration
    forall a. LensHiding a => Overlappable -> a -> a
    makeInstance' Overlappable
    YesOverlap Arg Declaration
    x
                  Hiding
    _          -> Interval -> [Char] -> Parser (Arg Declaration)
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Interval
    happy_var_1
                                 [Char]
    "The 'overlap' keyword only applies to instance fields (fields marked with {{ }})"
          in (Arg Name -> Parser (Arg Declaration))
    -> List1 (Arg Name) -> Parser (List1 (Arg Declaration))
    forall (t :: * -> *) (f :: * -> *) a b.
    (Traversable t, Applicative f) =>
    (a -> f b) -> t a -> f (t b)
    T.traverse (Arg Declaration -> Parser (Arg Declaration)
    setOverlap (Arg Declaration -> Parser (Arg Declaration))
    -> (Arg Name -> Arg Declaration)
    -> Arg Name
    -> Parser (Arg Declaration)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Name -> Declaration) -> Arg Name -> Arg Declaration
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (\ Name
    x -> ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    typeSig ArgInfo
    defaultArgInfo ([Attr] -> Maybe Expr
    getTacticAttr [Attr]
    attrs) Name
    x Expr
    happy_var_4)) List1 (Arg Name)
    xs)}}})
    	) (\List1 (Arg Declaration)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 (Arg Declaration) -> HappyAbsSyn
    happyIn110 List1 (Arg Declaration)
    r))

    happyReduce_386 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_386 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_386 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    100# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_386
    happyReduction_386 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_386 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap178
    happyOut178 HappyAbsSyn
    happy_x_2 of { (HappyWrap178 List1 (Arg Declaration)
    happy_var_2) ->
    	List1 (Arg Declaration) -> HappyAbsSyn
    happyIn110
    		 (let
          setInstance :: Declaration -> Declaration
    setInstance (TypeSig ArgInfo
    info Maybe Expr
    tac Name
    x Expr
    t) = ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    TypeSig (ArgInfo -> ArgInfo
    forall a. LensHiding a => a -> a
    makeInstance ArgInfo
    info) Maybe Expr
    tac Name
    x Expr
    t
          setInstance Declaration
    _ = Declaration
    forall a. HasCallStack => a
    __IMPOSSIBLE__ in
        (Arg Declaration -> Arg Declaration)
    -> List1 (Arg Declaration) -> List1 (Arg Declaration)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((Declaration -> Declaration) -> Arg Declaration -> Arg Declaration
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Declaration -> Declaration
    setInstance) List1 (Arg Declaration)
    happy_var_2
    	)}

    happyReduce_387 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_387 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_387 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    101# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_387
    happyReduction_387 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_387 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 Declaration)
    -> (List1 Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap103
    happyOut103 HappyAbsSyn
    happy_x_1 of { (HappyWrap103 [RewriteEqn] -> [WithExpr] -> LHS
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap112
    happyOut112 HappyAbsSyn
    happy_x_2 of { (HappyWrap112 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap113
    happyOut113 HappyAbsSyn
    happy_x_3 of { (HappyWrap113 RHSOrTypeSigs
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap106
    happyOut106 HappyAbsSyn
    happy_x_4 of { (HappyWrap106 WhereClause
    happy_var_4) ->
    	( [Attr]
    -> ([RewriteEqn] -> [WithExpr] -> LHS)
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> RHSOrTypeSigs
    -> WhereClause
    -> Parser (List1 Declaration)
    funClauseOrTypeSigs [] [RewriteEqn] -> [WithExpr] -> LHS
    happy_var_1 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_2 RHSOrTypeSigs
    happy_var_3 WhereClause
    happy_var_4)}}}})
    	) (\List1 Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 Declaration -> HappyAbsSyn
    happyIn111 List1 Declaration
    r))

    happyReduce_388 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_388 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_388 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    101# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_388
    happyReduction_388 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_388 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 Declaration)
    -> (List1 Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap28
    happyOut28 HappyAbsSyn
    happy_x_1 of { (HappyWrap28 List1 Attr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap103
    happyOut103 HappyAbsSyn
    happy_x_2 of { (HappyWrap103 [RewriteEqn] -> [WithExpr] -> LHS
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap112
    happyOut112 HappyAbsSyn
    happy_x_3 of { (HappyWrap112 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap113
    happyOut113 HappyAbsSyn
    happy_x_4 of { (HappyWrap113 RHSOrTypeSigs
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap106
    happyOut106 HappyAbsSyn
    happy_x_5 of { (HappyWrap106 WhereClause
    happy_var_5) ->
    	( [Attr]
    -> ([RewriteEqn] -> [WithExpr] -> LHS)
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> RHSOrTypeSigs
    -> WhereClause
    -> Parser (List1 Declaration)
    funClauseOrTypeSigs (List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Attr
    happy_var_1) [RewriteEqn] -> [WithExpr] -> LHS
    happy_var_2 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3 RHSOrTypeSigs
    happy_var_4 WhereClause
    happy_var_5)}}}}})
    	) (\List1 Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 Declaration -> HappyAbsSyn
    happyIn111 List1 Declaration
    r))

    happyReduce_389 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_389 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_389 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    102# HappyAbsSyn
    happyReduction_389
    happyReduction_389 :: HappyAbsSyn
    happyReduction_389  =  [Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn112
    		 ([]
    	)

    happyReduce_390 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_390 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_390 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    102# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_390
    happyReduction_390 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_390 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser [Either RewriteEqn (List1 (Named Name Expr))]
    -> ([Either RewriteEqn (List1 (Named Name Expr))]
        -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap44
    happyOut44 HappyAbsSyn
    happy_x_2 of { (HappyWrap44 List1 (Named Name Expr)
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    happy_x_3 of { (HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) ->
    	( ([Either RewriteEqn (List1 (Named Name Expr))]
     -> [Either RewriteEqn (List1 (Named Name Expr))])
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ([Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    forall a. [a] -> [a] -> [a]
    ++ [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) (List1 (Named Name Expr)
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    buildWithStmt List1 (Named Name Expr)
    happy_var_2))}})
    	) (\[Either RewriteEqn (List1 (Named Name Expr))]
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ([Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn112 [Either RewriteEqn (List1 (Named Name Expr))]
    r))

    happyReduce_391 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_391 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_391 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    102# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_391
    happyReduction_391 :: HappyAbsSyn -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_391 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap45
    happyOut45 HappyAbsSyn
    happy_x_2 of { (HappyWrap45 List1 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap104
    happyOut104 HappyAbsSyn
    happy_x_3 of { (HappyWrap104 [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3) ->
    	[Either RewriteEqn (List1 (Named Name Expr))] -> HappyAbsSyn
    happyIn112
    		 (RewriteEqn -> Either RewriteEqn (List1 (Named Name Expr))
    forall a b. a -> Either a b
    Left (List1 ((), Expr) -> RewriteEqn
    forall qn nm p e. List1 (qn, e) -> RewriteEqn' qn nm p e
    Rewrite (List1 ((), Expr) -> RewriteEqn) -> List1 ((), Expr) -> RewriteEqn
    forall a b. (a -> b) -> a -> b
    $ (Expr -> ((), Expr)) -> List1 Expr -> List1 ((), Expr)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((),) List1 Expr
    happy_var_2) Either RewriteEqn (List1 (Named Name Expr))
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    forall a. a -> [a] -> [a]
    : [Either RewriteEqn (List1 (Named Name Expr))]
    happy_var_3
    	)}}

    happyReduce_392 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_392 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_392 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    103# HappyAbsSyn
    happyReduction_392
    happyReduction_392 :: HappyAbsSyn
    happyReduction_392  =  RHSOrTypeSigs -> HappyAbsSyn
    happyIn113
    		 (RHS -> RHSOrTypeSigs
    JustRHS RHS
    forall e. RHS' e
    AbsurdRHS
    	)

    happyReduce_393 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_393 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_393 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    103# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_393
    happyReduction_393 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_393 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_2 of { (HappyWrap42 Expr
    happy_var_2) ->
    	RHSOrTypeSigs -> HappyAbsSyn
    happyIn113
    		 (RHS -> RHSOrTypeSigs
    JustRHS (Expr -> RHS
    forall e. e -> RHS' e
    RHS Expr
    happy_var_2)
    	)}

    happyReduce_394 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_394 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_394 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    103# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_394
    happyReduction_394 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_394 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_2 of { (HappyWrap42 Expr
    happy_var_2) ->
    	RHSOrTypeSigs -> HappyAbsSyn
    happyIn113
    		 (Expr -> RHSOrTypeSigs
    TypeSigsRHS Expr
    happy_var_2
    	)}

    happyReduce_395 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_395 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_395 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    7# Int#
    104# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_395
    happyReduction_395 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_395 (HappyAbsSyn
    happy_x_7 `HappyStk`
    	HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwData Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_5 of { (HappyWrap42 Expr
    happy_var_5) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_6 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_6) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_7 of { (HappyWrap189 [Declaration]
    happy_var_7) ->
    	Declaration -> HappyAbsSyn
    happyIn114
    		 (Range
    -> Name -> [LamBinding] -> Expr -> [Declaration] -> Declaration
    Data ((Interval, Name, [LamBinding], Interval, Expr, Interval,
     [Declaration])
    -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Name
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,Expr
    happy_var_5,Interval
    happy_var_6,[Declaration]
    happy_var_7)) Name
    happy_var_2 [LamBinding]
    happy_var_3 Expr
    happy_var_5 [Declaration]
    happy_var_7
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}}}

    happyReduce_396 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_396 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_396 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    104# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_396
    happyReduction_396 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_396 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwData Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_5 of { (HappyWrap189 [Declaration]
    happy_var_5) ->
    	Declaration -> HappyAbsSyn
    happyIn114
    		 (Range -> Name -> [LamBinding] -> [Declaration] -> Declaration
    DataDef ((Interval, Name, [LamBinding], Interval, [Declaration]) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Name
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,[Declaration]
    happy_var_5)) Name
    happy_var_2 [LamBinding]
    happy_var_3 [Declaration]
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_397 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_397 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_397 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    105# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_397
    happyReduction_397 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_397 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwData Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_5 of { (HappyWrap42 Expr
    happy_var_5) ->
    	Declaration -> HappyAbsSyn
    happyIn115
    		 (Range -> Name -> [LamBinding] -> Expr -> Declaration
    DataSig ((Interval, Name, [LamBinding], Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Name
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,Expr
    happy_var_5)) Name
    happy_var_2 [LamBinding]
    happy_var_3 Expr
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_398 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_398 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_398 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    7# Int#
    106# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_398
    happyReduction_398 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_398 (HappyAbsSyn
    happy_x_7 `HappyStk`
    	HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    happy_x_2 of { (HappyWrap53 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_5 of { (HappyWrap42 Expr
    happy_var_5) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_6 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_6) ->
    	case HappyAbsSyn -> HappyWrap182
    happyOut182 HappyAbsSyn
    happy_x_7 of { (HappyWrap182 (RecordDirectives, [Declaration])
    happy_var_7) ->
    	( Expr -> Parser Name
    exprToName Expr
    happy_var_2 Parser Name -> (Name -> Parser Declaration) -> Parser Declaration
    forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
    >>= \ Name
    n -> let (RecordDirectives
    dir, [Declaration]
    ds) = (RecordDirectives, [Declaration])
    happy_var_7 in Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Range
    -> Name
    -> RecordDirectives
    -> [LamBinding]
    -> Expr
    -> [Declaration]
    -> Declaration
    Record ((Interval, Expr, [LamBinding], Interval, Expr, Interval,
     (RecordDirectives, [Declaration]))
    -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,Expr
    happy_var_5,Interval
    happy_var_6,(RecordDirectives, [Declaration])
    happy_var_7)) Name
    n RecordDirectives
    dir [LamBinding]
    happy_var_3 Expr
    happy_var_5 [Declaration]
    ds)}}}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn116 Declaration
    r))

    happyReduce_399 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_399 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_399 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    106# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_399
    happyReduction_399 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_399 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    happy_x_2 of { (HappyWrap53 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap182
    happyOut182 HappyAbsSyn
    happy_x_5 of { (HappyWrap182 (RecordDirectives, [Declaration])
    happy_var_5) ->
    	( Expr -> Parser Name
    exprToName Expr
    happy_var_2 Parser Name -> (Name -> Parser Declaration) -> Parser Declaration
    forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
    >>= \ Name
    n -> let (RecordDirectives
    dir, [Declaration]
    ds) = (RecordDirectives, [Declaration])
    happy_var_5 in Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Range
    -> Name
    -> RecordDirectives
    -> [LamBinding]
    -> [Declaration]
    -> Declaration
    RecordDef ((Interval, Expr, [LamBinding], Interval,
     (RecordDirectives, [Declaration]))
    -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,(RecordDirectives, [Declaration])
    happy_var_5)) Name
    n RecordDirectives
    dir [LamBinding]
    happy_var_3 [Declaration]
    ds)}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn116 Declaration
    r))

    happyReduce_400 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_400 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_400 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    107# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_400
    happyReduction_400 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_400 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwRecord Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap53
    happyOut53 HappyAbsSyn
    happy_x_2 of { (HappyWrap53 Expr
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymColon Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_5 of { (HappyWrap42 Expr
    happy_var_5) ->
    	( Expr -> Parser Name
    exprToName Expr
    happy_var_2 Parser Name -> (Name -> Parser Declaration) -> Parser Declaration
    forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
    >>= \ Name
    n -> Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Range -> Name -> [LamBinding] -> Expr -> Declaration
    RecordSig ((Interval, Expr, [LamBinding], Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Expr
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,Expr
    happy_var_5)) Name
    n [LamBinding]
    happy_var_3 Expr
    happy_var_5)}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn117 Declaration
    r))

    happyReduce_401 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_401 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_401 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    108# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_401
    happyReduction_401 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_401 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwData Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_4 of { (HappyWrap189 [Declaration]
    happy_var_4) ->
    	Declaration -> HappyAbsSyn
    happyIn118
    		 (Range -> [Declaration] -> Declaration
    LoneConstructor ((Interval, [Declaration]) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,[Declaration]
    happy_var_4)) [Declaration]
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_402 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_402 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_402 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    109# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_402
    happyReduction_402 :: HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_402 HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	(Name, IsInstance) -> HappyAbsSyn
    happyIn119
    		 ((Name
    happy_var_2, IsInstance
    NotInstanceDef)
    	)}

    happyReduce_403 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_403 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_403 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    109# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_403
    happyReduction_403 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_403 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInstance Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_4 of { (HappyWrap19 Name
    happy_var_4) ->
    	(Name, IsInstance) -> HappyAbsSyn
    happyIn119
    		 ((Name
    happy_var_4, Range -> IsInstance
    InstanceDef (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1))
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_404 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_404 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_404 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    110# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_404
    happyReduction_404 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_404 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfix Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap32
    happyOut32 HappyAbsSyn
    happy_x_3 of { (HappyWrap32 List1 Name
    happy_var_3) ->
    	Declaration -> HappyAbsSyn
    happyIn120
    		 (Fixity -> List1 Name -> Declaration
    Infix (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double, List1 Name) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2,List1 Name
    happy_var_3)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    NonAssoc)   List1 Name
    happy_var_3
    	)}}}

    happyReduce_405 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_405 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_405 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    110# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_405
    happyReduction_405 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_405 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixL Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap32
    happyOut32 HappyAbsSyn
    happy_x_3 of { (HappyWrap32 List1 Name
    happy_var_3) ->
    	Declaration -> HappyAbsSyn
    happyIn120
    		 (Fixity -> List1 Name -> Declaration
    Infix (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double, List1 Name) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2,List1 Name
    happy_var_3)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    LeftAssoc)  List1 Name
    happy_var_3
    	)}}}

    happyReduce_406 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_406 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_406 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    110# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_406
    happyReduction_406 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_406 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInfixR Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap18
    happyOut18 HappyAbsSyn
    happy_x_2 of { (HappyWrap18 Ranged Double
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap32
    happyOut32 HappyAbsSyn
    happy_x_3 of { (HappyWrap32 List1 Name
    happy_var_3) ->
    	Declaration -> HappyAbsSyn
    happyIn120
    		 (Fixity -> List1 Name -> Declaration
    Infix (Range -> FixityLevel -> Associativity -> Fixity
    Fixity ((Interval, Ranged Double, List1 Name) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Ranged Double
    happy_var_2,List1 Name
    happy_var_3)) (Double -> FixityLevel
    Related (Double -> FixityLevel) -> Double -> FixityLevel
    forall a b. (a -> b) -> a -> b
    $ Ranged Double -> Double
    forall a. Ranged a -> a
    rangedThing Ranged Double
    happy_var_2) Associativity
    RightAssoc) List1 Name
    happy_var_3
    	)}}}

    happyReduce_407 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_407 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_407 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    111# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_407
    happyReduction_407 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_407 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwField Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap180
    happyOut180 HappyAbsSyn
    happy_x_2 of { (HappyWrap180 [Arg Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn121
    		 (let
                    inst :: a -> IsInstance
    inst a
    i = case a -> Hiding
    forall a. LensHiding a => a -> Hiding
    getHiding a
    i of
                               Instance Overlappable
    _ -> Range -> IsInstance
    InstanceDef Range
    forall a. Range' a
    noRange  -- no @instance@ keyword here
                               Hiding
    _          -> IsInstance
    NotInstanceDef
                    toField :: Arg Declaration -> Declaration
    toField (Arg ArgInfo
    info (TypeSig ArgInfo
    info' Maybe Expr
    tac Name
    x Expr
    t)) = IsInstance -> Maybe Expr -> Name -> Arg Expr -> Declaration
    FieldSig (ArgInfo -> IsInstance
    forall {a}. LensHiding a => a -> IsInstance
    inst ArgInfo
    info') Maybe Expr
    tac Name
    x (ArgInfo -> Expr -> Arg Expr
    forall e. ArgInfo -> e -> Arg e
    Arg ArgInfo
    info Expr
    t)
                  in Range -> [Declaration] -> Declaration
    Field (Interval -> [Arg Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Arg Declaration]
    happy_var_2) ([Declaration] -> Declaration) -> [Declaration] -> Declaration
    forall a b. (a -> b) -> a -> b
    $ (Arg Declaration -> Declaration)
    -> [Arg Declaration] -> [Declaration]
    forall a b. (a -> b) -> [a] -> [b]
    map Arg Declaration -> Declaration
    toField [Arg Declaration]
    happy_var_2
    	)}}

    happyReduce_408 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_408 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_408 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    112# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_408
    happyReduction_408 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_408 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwVariable Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap180
    happyOut180 HappyAbsSyn
    happy_x_2 of { (HappyWrap180 [Arg Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn122
    		 (let
                    toGeneralize :: Arg Declaration -> Declaration
    toGeneralize (Arg ArgInfo
    info (TypeSig ArgInfo
    _ Maybe Expr
    tac Name
    x Expr
    t)) = ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    TypeSig ArgInfo
    info Maybe Expr
    tac Name
    x Expr
    t
                  in Range -> [Declaration] -> Declaration
    Generalize (Interval -> [Arg Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Arg Declaration]
    happy_var_2) ((Arg Declaration -> Declaration)
    -> [Arg Declaration] -> [Declaration]
    forall a b. (a -> b) -> [a] -> [b]
    map Arg Declaration -> Declaration
    toGeneralize [Arg Declaration]
    happy_var_2)
    	)}}

    happyReduce_409 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_409 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_409 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    113# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_409
    happyReduction_409 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_409 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwMutual Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn123
    		 (Range -> [Declaration] -> Declaration
    Mutual (Interval -> [Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Declaration]
    happy_var_2) [Declaration]
    happy_var_2
    	)}}

    happyReduce_410 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_410 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_410 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    113# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_410
    happyReduction_410 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_410 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInterleaved Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwMutual Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_3 of { (HappyWrap189 [Declaration]
    happy_var_3) ->
    	Declaration -> HappyAbsSyn
    happyIn123
    		 (Range -> [Declaration] -> Declaration
    InterleavedMutual ((Interval, Interval, [Declaration]) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,[Declaration]
    happy_var_3)) [Declaration]
    happy_var_3
    	)}}}

    happyReduce_411 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_411 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_411 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    114# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_411
    happyReduction_411 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_411 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwAbstract Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn124
    		 (Range -> [Declaration] -> Declaration
    Abstract (Interval -> [Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Declaration]
    happy_var_2) [Declaration]
    happy_var_2
    	)}}

    happyReduce_412 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_412 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_412 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    115# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_412
    happyReduction_412 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_412 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPrivate Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn125
    		 (Range -> Origin -> [Declaration] -> Declaration
    Private (Interval -> [Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Declaration]
    happy_var_2) Origin
    UserWritten [Declaration]
    happy_var_2
    	)}}

    happyReduce_413 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_413 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_413 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    116# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_413
    happyReduction_413 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_413 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInstance Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn126
    		 (Range -> [Declaration] -> Declaration
    InstanceB (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) [Declaration]
    happy_var_2
    	)}}

    happyReduce_414 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_414 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_414 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    117# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_414
    happyReduction_414 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_414 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwMacro Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn127
    		 (Range -> [Declaration] -> Declaration
    Macro (Interval -> [Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Declaration]
    happy_var_2) [Declaration]
    happy_var_2
    	)}}

    happyReduce_415 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_415 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_415 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    118# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_415
    happyReduction_415 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_415 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPostulate Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_2 of { (HappyWrap189 [Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn128
    		 (Range -> [Declaration] -> Declaration
    Postulate (Interval -> [Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Declaration]
    happy_var_2) [Declaration]
    happy_var_2
    	)}}

    happyReduce_416 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_416 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_416 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    119# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_416
    happyReduction_416 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_416 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPrimitive Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap180
    happyOut180 HappyAbsSyn
    happy_x_2 of { (HappyWrap180 [Arg Declaration]
    happy_var_2) ->
    	Declaration -> HappyAbsSyn
    happyIn129
    		 (let { setArg :: Arg Declaration -> Declaration
    setArg (Arg ArgInfo
    info (TypeSig ArgInfo
    _ Maybe Expr
    tac Name
    x Expr
    t)) = ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    TypeSig ArgInfo
    info Maybe Expr
    tac Name
    x Expr
    t
          ; setArg Arg Declaration
    _ = Declaration
    forall a. HasCallStack => a
    __IMPOSSIBLE__ } in
      Range -> [Declaration] -> Declaration
    Primitive (Interval -> [Arg Declaration] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 [Arg Declaration]
    happy_var_2) ((Arg Declaration -> Declaration)
    -> [Arg Declaration] -> [Declaration]
    forall a b. (a -> b) -> [a] -> [b]
    map Arg Declaration -> Declaration
    setArg [Arg Declaration]
    happy_var_2)
    	)}}

    happyReduce_417 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_417 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_417 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    120# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_417
    happyReduction_417 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_417 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquoteDecl Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_3 of { (HappyWrap42 Expr
    happy_var_3) ->
    	Declaration -> HappyAbsSyn
    happyIn130
    		 (Range -> [Name] -> Expr -> Declaration
    UnquoteDecl (Interval -> Expr -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Expr
    happy_var_3) [] Expr
    happy_var_3
    	)}}

    happyReduce_418 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_418 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_418 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    120# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_418
    happyReduction_418 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_418 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquoteDecl Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_2 of { (HappyWrap20 List1 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	Declaration -> HappyAbsSyn
    happyIn130
    		 (Range -> [Name] -> Expr -> Declaration
    UnquoteDecl (Interval -> Expr -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Expr
    happy_var_4) (List1 Name -> [Name]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Name
    happy_var_2) Expr
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_419 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_419 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_419 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    120# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_419
    happyReduction_419 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_419 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwUnquoteDef Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap20
    happyOut20 HappyAbsSyn
    happy_x_2 of { (HappyWrap20 List1 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_4 of { (HappyWrap42 Expr
    happy_var_4) ->
    	Declaration -> HappyAbsSyn
    happyIn130
    		 (Range -> [Name] -> Expr -> Declaration
    UnquoteDef (Interval -> Expr -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Expr
    happy_var_4) (List1 Name -> [Name]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Name
    happy_var_2) Expr
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}

    happyReduce_420 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_420 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_420 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    121# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_420
    happyReduction_420 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_420 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap135
    happyOut135 HappyAbsSyn
    happy_x_3 of { (HappyWrap135 [NamedArg HoleName]
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap134
    happyOut134 HappyAbsSyn
    happy_x_5 of { (HappyWrap134 [RString]
    happy_var_5) ->
    	(
      case Name
    happy_var_2 of
        Name Range
    _ NameInScope
    _ (NamePart
    _ :| []) -> case [NamedArg HoleName] -> [RString] -> Either [Char] Notation
    mkNotation [NamedArg HoleName]
    happy_var_3 [RString]
    happy_var_5 of
          Left [Char]
    err -> [Char] -> Parser Declaration
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser Declaration) -> [Char] -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Malformed syntax declaration: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    err
          Right Notation
    n -> Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Name -> Notation -> Declaration
    Syntax Name
    happy_var_2 Notation
    n
        Name
    _ -> [Char] -> Parser Declaration
    forall a. [Char] -> Parser a
    parseError [Char]
    "Syntax declarations are allowed only for simple names (without holes)")}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn131 Declaration
    r))

    happyReduce_421 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_421 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_421 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    122# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_421
    happyReduction_421 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_421 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPatternSyn Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_2 of { (HappyWrap19 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap133
    happyOut133 HappyAbsSyn
    happy_x_3 of { (HappyWrap133 [Arg Name]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymEqual Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    happy_x_5 of { (HappyWrap42 Expr
    happy_var_5) ->
    	( do
      Pattern
    p <- Expr -> Parser Pattern
    exprToPattern Expr
    happy_var_5
      Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Range -> Name -> [Arg Name] -> Pattern -> Declaration
    PatternSyn ((Interval, Name, [Arg Name], Interval, Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Name
    happy_var_2,[Arg Name]
    happy_var_3,Interval
    happy_var_4,Expr
    happy_var_5)) Name
    happy_var_2 [Arg Name]
    happy_var_3 Pattern
    p))}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn132 Declaration
    r))

    happyReduce_422 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_422 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_422 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    123# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_422
    happyReduction_422 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_422 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser [Arg Name]
    -> ([Arg Name] -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap84
    happyOut84 HappyAbsSyn
    happy_x_1 of { (HappyWrap84 [NamedArg Binder]
    happy_var_1) ->
    	( [NamedArg Binder] -> Parser [Arg Name]
    patternSynArgs [NamedArg Binder]
    happy_var_1)})
    	) (\[Arg Name]
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ([Arg Name] -> HappyAbsSyn
    happyIn133 [Arg Name]
    r))

    happyReduce_423 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_423 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_423 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    124# HappyAbsSyn -> HappyAbsSyn
    happyReduction_423
    happyReduction_423 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_423 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_1 of { (HappyWrap139 RString
    happy_var_1) ->
    	[RString] -> HappyAbsSyn
    happyIn134
    		 ([RString
    happy_var_1]
    	)}

    happyReduce_424 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_424 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_424 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    124# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_424
    happyReduction_424 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_424 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap134
    happyOut134 HappyAbsSyn
    happy_x_1 of { (HappyWrap134 [RString]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_2 of { (HappyWrap139 RString
    happy_var_2) ->
    	[RString] -> HappyAbsSyn
    happyIn134
    		 ([RString]
    happy_var_1 [RString] -> [RString] -> [RString]
    forall a. [a] -> [a] -> [a]
    ++ [RString
    happy_var_2]
    	)}}

    happyReduce_425 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_425 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_425 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    125# HappyAbsSyn
    happyReduction_425
    happyReduction_425 :: HappyAbsSyn
    happyReduction_425  =  [NamedArg HoleName] -> HappyAbsSyn
    happyIn135
    		 ([]
    	)

    happyReduce_426 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_426 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_426 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    125# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_426
    happyReduction_426 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_426 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap135
    happyOut135 HappyAbsSyn
    happy_x_1 of { (HappyWrap135 [NamedArg HoleName]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap136
    happyOut136 HappyAbsSyn
    happy_x_2 of { (HappyWrap136 NamedArg HoleName
    happy_var_2) ->
    	[NamedArg HoleName] -> HappyAbsSyn
    happyIn135
    		 ([NamedArg HoleName]
    happy_var_1 [NamedArg HoleName] -> [NamedArg HoleName] -> [NamedArg HoleName]
    forall a. [a] -> [a] -> [a]
    ++ [NamedArg HoleName
    happy_var_2]
    	)}}

    happyReduce_427 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_427 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_427 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    126# HappyAbsSyn -> HappyAbsSyn
    happyReduction_427
    happyReduction_427 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_427 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap137
    happyOut137 HappyAbsSyn
    happy_x_1 of { (HappyWrap137 HoleName
    happy_var_1) ->
    	NamedArg HoleName -> HappyAbsSyn
    happyIn136
    		 (HoleName -> NamedArg HoleName
    forall a. a -> NamedArg a
    defaultNamedArg HoleName
    happy_var_1
    	)}

    happyReduce_428 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_428 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_428 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    126# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_428
    happyReduction_428 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_428 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap138
    happyOut138 HappyAbsSyn
    happy_x_2 of { (HappyWrap138 HoleName
    happy_var_2) ->
    	NamedArg HoleName -> HappyAbsSyn
    happyIn136
    		 (NamedArg HoleName -> NamedArg HoleName
    forall a. LensHiding a => a -> a
    hide         (NamedArg HoleName -> NamedArg HoleName)
    -> NamedArg HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ HoleName -> NamedArg HoleName
    forall a. a -> NamedArg a
    defaultNamedArg HoleName
    happy_var_2
    	)}

    happyReduce_429 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_429 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_429 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    126# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_429
    happyReduction_429 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_429 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap138
    happyOut138 HappyAbsSyn
    happy_x_2 of { (HappyWrap138 HoleName
    happy_var_2) ->
    	NamedArg HoleName -> HappyAbsSyn
    happyIn136
    		 (NamedArg HoleName -> NamedArg HoleName
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg HoleName -> NamedArg HoleName)
    -> NamedArg HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ HoleName -> NamedArg HoleName
    forall a. a -> NamedArg a
    defaultNamedArg HoleName
    happy_var_2
    	)}

    happyReduce_430 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_430 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_430 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    126# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_430
    happyReduction_430 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_430 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_2 of { (HappyWrap139 RString
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap138
    happyOut138 HappyAbsSyn
    happy_x_4 of { (HappyWrap138 HoleName
    happy_var_4) ->
    	NamedArg HoleName -> HappyAbsSyn
    happyIn136
    		 (NamedArg HoleName -> NamedArg HoleName
    forall a. LensHiding a => a -> a
    hide         (NamedArg HoleName -> NamedArg HoleName)
    -> NamedArg HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ Named_ HoleName -> NamedArg HoleName
    forall a. a -> Arg a
    defaultArg (Named_ HoleName -> NamedArg HoleName)
    -> Named_ HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ RString -> HoleName -> Named_ HoleName
    forall a. RString -> a -> Named_ a
    userNamed RString
    happy_var_2 HoleName
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_431 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_431 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_431 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    126# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_431
    happyReduction_431 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_431 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_2 of { (HappyWrap139 RString
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap138
    happyOut138 HappyAbsSyn
    happy_x_4 of { (HappyWrap138 HoleName
    happy_var_4) ->
    	NamedArg HoleName -> HappyAbsSyn
    happyIn136
    		 (NamedArg HoleName -> NamedArg HoleName
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg HoleName -> NamedArg HoleName)
    -> NamedArg HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ Named_ HoleName -> NamedArg HoleName
    forall a. a -> Arg a
    defaultArg (Named_ HoleName -> NamedArg HoleName)
    -> Named_ HoleName -> NamedArg HoleName
    forall a b. (a -> b) -> a -> b
    $ RString -> HoleName -> Named_ HoleName
    forall a. RString -> a -> Named_ a
    userNamed RString
    happy_var_2 HoleName
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_432 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_432 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_432 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    127# HappyAbsSyn -> HappyAbsSyn
    happyReduction_432
    happyReduction_432 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_432 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_1 of { (HappyWrap139 RString
    happy_var_1) ->
    	HoleName -> HappyAbsSyn
    happyIn137
    		 (RString -> HoleName
    ExprHole RString
    happy_var_1
    	)}

    happyReduce_433 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_433 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_433 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    6# Int#
    127# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_433
    happyReduction_433 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_433 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_3 of { (HappyWrap139 RString
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_5 of { (HappyWrap139 RString
    happy_var_5) ->
    	HoleName -> HappyAbsSyn
    happyIn137
    		 (RString -> RString -> HoleName
    LambdaHole RString
    happy_var_3 RString
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_434 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_434 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_434 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    6# Int#
    127# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_434
    happyReduction_434 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_434 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_5 of { (HappyWrap139 RString
    happy_var_5) ->
    	HoleName -> HappyAbsSyn
    happyIn137
    		 (RString -> RString -> HoleName
    LambdaHole (Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_3) [Char]
    "_") RString
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_435 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_435 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_435 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    128# HappyAbsSyn -> HappyAbsSyn
    happyReduction_435
    happyReduction_435 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_435 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_1 of { (HappyWrap139 RString
    happy_var_1) ->
    	HoleName -> HappyAbsSyn
    happyIn138
    		 (RString -> HoleName
    ExprHole RString
    happy_var_1
    	)}

    happyReduce_436 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_436 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_436 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    128# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_436
    happyReduction_436 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_436 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_2 of { (HappyWrap139 RString
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_4 of { (HappyWrap139 RString
    happy_var_4) ->
    	HoleName -> HappyAbsSyn
    happyIn138
    		 (RString -> RString -> HoleName
    LambdaHole RString
    happy_var_2 RString
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_437 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_437 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_437 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    128# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_437
    happyReduction_437 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_437 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymArrow Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap139
    happyOut139 HappyAbsSyn
    happy_x_4 of { (HappyWrap139 RString
    happy_var_4) ->
    	HoleName -> HappyAbsSyn
    happyIn138
    		 (RString -> RString -> HoleName
    LambdaHole (Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_3) [Char]
    "_") RString
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_438 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_438 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_438 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    129# HappyAbsSyn -> HappyAbsSyn
    happyReduction_438
    happyReduction_438 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_438 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokId (Interval, [Char])
    happy_var_1) ->
    	RString -> HappyAbsSyn
    happyIn139
    		 (Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval -> Range) -> Interval -> Range
    forall a b. (a -> b) -> a -> b
    $ (Interval, [Char]) -> Interval
    forall a b. (a, b) -> a
    fst (Interval, [Char])
    happy_var_1) ([Char] -> [Char]
    stringToRawName ([Char] -> [Char]) -> [Char] -> [Char]
    forall a b. (a -> b) -> a -> b
    $ (Interval, [Char]) -> [Char]
    forall a b. (a, b) -> b
    snd (Interval, [Char])
    happy_var_1)
    	)}

    happyReduce_439 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_439 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_439 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    130# HappyAbsSyn -> HappyAbsSyn
    happyReduction_439
    happyReduction_439 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_439 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOpen Interval
    happy_var_1) ->
    	Maybe Range -> HappyAbsSyn
    happyIn140
    		 (Range -> Maybe Range
    forall a. a -> Maybe a
    Just (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_440 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_440 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_440 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    130# HappyAbsSyn
    happyReduction_440
    happyReduction_440 :: HappyAbsSyn
    happyReduction_440  =  Maybe Range -> HappyAbsSyn
    happyIn140
    		 (Maybe Range
    forall a. Maybe a
    Nothing
    	)

    happyReduce_441 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_441 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_441 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    131# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_441
    happyReduction_441 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_441 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (List1 Declaration)
    -> (List1 Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap140
    happyOut140 HappyAbsSyn
    happy_x_1 of { (HappyWrap140 Maybe Range
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwImport Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_3 of { (HappyWrap30 QName
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    happy_x_4 of { (HappyWrap142 [Expr]
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_5 of { (HappyWrap91 ImportDirective
    happy_var_5) ->
    	(
        let
        { doOpen :: OpenShortHand
    doOpen = OpenShortHand
    -> (Range -> OpenShortHand) -> Maybe Range -> OpenShortHand
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe OpenShortHand
    DontOpen (OpenShortHand -> Range -> OpenShortHand
    forall a b. a -> b -> a
    const OpenShortHand
    DoOpen) Maybe Range
    happy_var_1
        ; m :: QName
    m   = QName
    happy_var_3
        ; es :: [Expr]
    es  = [Expr]
    happy_var_4
        ; dir :: ImportDirective
    dir = ImportDirective
    happy_var_5
        ; r :: Range
    r   = (Maybe Range, Interval, QName, [Expr], ImportDirective) -> Range
    forall a. HasRange a => a -> Range
    getRange (Maybe Range
    happy_var_1, Interval
    happy_var_2, QName
    m, [Expr]
    es, ImportDirective
    dir)
        ; mr :: Range
    mr  = QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    m
        ; unique :: Word64
    unique = [Char] -> Word64
    hashString ([Char] -> Word64) -> [Char] -> Word64
    forall a b. (a -> b) -> a -> b
    $ Range' (Maybe ()) -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow (Range' (Maybe ()) -> [Char]) -> Range' (Maybe ()) -> [Char]
    forall a b. (a -> b) -> a -> b
    $ (Maybe ()
    forall a. Maybe a
    Strict.Nothing :: Strict.Maybe ()) Maybe () -> Range -> Range' (Maybe ())
    forall (f :: * -> *) a b. Functor f => a -> f b -> f a
    <$ Range
    r
             -- turn range into unique id, but delete file path
             -- which is absolute and messes up suite of failing tests
             -- (different hashs on different installations)
             -- TODO: Don't use (insecure) hashes in this way.
        ; fresh :: Name
    fresh  = Range -> NameInScope -> NonEmpty NamePart -> Name
    Name Range
    mr NameInScope
    NotInScope (NonEmpty NamePart -> Name) -> NonEmpty NamePart -> Name
    forall a b. (a -> b) -> a -> b
    $ NamePart -> NonEmpty NamePart
    forall el coll. Singleton el coll => el -> coll
    singleton (NamePart -> NonEmpty NamePart) -> NamePart -> NonEmpty NamePart
    forall a b. (a -> b) -> a -> b
    $ [Char] -> NamePart
    Id ([Char] -> NamePart) -> [Char] -> NamePart
    forall a b. (a -> b) -> a -> b
    $ [Char] -> [Char]
    stringToRawName ([Char] -> [Char]) -> [Char] -> [Char]
    forall a b. (a -> b) -> a -> b
    $ [Char]
    ".#" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ QName -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow QName
    m [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    "-" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Word64 -> [Char]
    forall a. Show a => a -> [Char]
    show Word64
    unique
        ; fresh' :: Name
    fresh' = Range -> NameInScope -> NonEmpty NamePart -> Name
    Name Range
    mr NameInScope
    NotInScope (NonEmpty NamePart -> Name) -> NonEmpty NamePart -> Name
    forall a b. (a -> b) -> a -> b
    $ NamePart -> NonEmpty NamePart
    forall el coll. Singleton el coll => el -> coll
    singleton (NamePart -> NonEmpty NamePart) -> NamePart -> NonEmpty NamePart
    forall a b. (a -> b) -> a -> b
    $ [Char] -> NamePart
    Id ([Char] -> NamePart) -> [Char] -> NamePart
    forall a b. (a -> b) -> a -> b
    $ [Char] -> [Char]
    stringToRawName ([Char] -> [Char]) -> [Char] -> [Char]
    forall a b. (a -> b) -> a -> b
    $ [Char]
    ".#" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ QName -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow QName
    m [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    "-" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Word64 -> [Char]
    forall a. Show a => a -> [Char]
    show (Word64
    unique Word64 -> Word64 -> Word64
    forall a. Num a => a -> a -> a
    + Word64
    1)
        ; impStm :: Range -> Declaration
    impStm Range
    asR = Range
    -> QName
    -> Maybe AsName
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    Import Range
    forall a. Range' a
    noRange QName
    m (AsName -> Maybe AsName
    forall a. a -> Maybe a
    Just (Either Expr Name -> Range -> AsName
    forall a. a -> Range -> AsName' a
    AsName (Name -> Either Expr Name
    forall a b. b -> Either a b
    Right Name
    fresh) Range
    asR)) OpenShortHand
    DontOpen ImportDirective
    forall n m. ImportDirective' n m
    defaultImportDir
        ; appStm :: Name -> [Expr] -> Declaration
    appStm Name
    m' [Expr]
    es =
            Range -> Origin -> [Declaration] -> Declaration
    Private Range
    r Origin
    Inserted
              [ Range
    -> Name
    -> ModuleApplication
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    ModuleMacro Range
    r Name
    m'
                 (Range -> Telescope -> Expr -> ModuleApplication
    SectionApp ([Expr] -> Range
    forall a. HasRange a => a -> Range
    getRange [Expr]
    es) []
                   (List1 Expr -> Expr
    rawApp (QName -> Expr
    Ident (Name -> QName
    QName Name
    fresh) Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    es)))
                 OpenShortHand
    doOpen ImportDirective
    dir
              ]
        ; ([Expr]
    initArgs, [Expr]
    last2Args) = Int -> [Expr] -> ([Expr], [Expr])
    forall a. Int -> [a] -> ([a], [a])
    splitAt ([Expr] -> Int
    forall (t :: * -> *) a. Foldable t => t a -> Int
    length [Expr]
    es Int -> Int -> Int
    forall a. Num a => a -> a -> a
    - Int
    2) [Expr]
    es
        ; parseAsClause :: Maybe (Range, Either Expr Name)
    parseAsClause = case [Expr]
    last2Args of
          { [ Ident (QName (Name Range
    asR NameInScope
    InScope (Id [Char]
    x :| [])))
            , Expr
    e
              -- Andreas, 2018-11-03, issue #3364, accept anything after 'as'
              -- but require it to be a 'Name' in the scope checker.
            ] | [Char] -> [Char]
    rawNameToString [Char]
    x [Char] -> [Char] -> Bool
    forall a. Eq a => a -> a -> Bool
    == [Char]
    "as" -> (Range, Either Expr Name) -> Maybe (Range, Either Expr Name)
    forall a. a -> Maybe a
    Just ((Range, Either Expr Name) -> Maybe (Range, Either Expr Name))
    -> (Either Expr Name -> (Range, Either Expr Name))
    -> Either Expr Name
    -> Maybe (Range, Either Expr Name)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Range
    asR,) (Either Expr Name -> Maybe (Range, Either Expr Name))
    -> Either Expr Name -> Maybe (Range, Either Expr Name)
    forall a b. (a -> b) -> a -> b
    $
              if | Ident (QName Name
    m') <- Expr
    e -> Name -> Either Expr Name
    forall a b. b -> Either a b
    Right Name
    m'
                 | Bool
    otherwise             -> Expr -> Either Expr Name
    forall a b. a -> Either a b
    Left Expr
    e
          ; [Expr]
    _ -> Maybe (Range, Either Expr Name)
    forall a. Maybe a
    Nothing
          }
        } in
        case [Expr]
    es of
          { [] -> List1 Declaration -> Parser (List1 Declaration)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 Declaration -> Parser (List1 Declaration))
    -> List1 Declaration -> Parser (List1 Declaration)
    forall a b. (a -> b) -> a -> b
    $ Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton (Declaration -> List1 Declaration)
    -> Declaration -> List1 Declaration
    forall a b. (a -> b) -> a -> b
    $ Range
    -> QName
    -> Maybe AsName
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    Import Range
    r QName
    m Maybe AsName
    forall a. Maybe a
    Nothing OpenShortHand
    doOpen ImportDirective
    dir
          ; [Expr]
    _ | Just (Range
    asR, Either Expr Name
    m') <- Maybe (Range, Either Expr Name)
    parseAsClause -> List1 Declaration -> Parser (List1 Declaration)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 Declaration -> Parser (List1 Declaration))
    -> List1 Declaration -> Parser (List1 Declaration)
    forall a b. (a -> b) -> a -> b
    $
                  if [Expr] -> Bool
    forall a. Null a => a -> Bool
    null [Expr]
    initArgs then Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton
                     ( Range
    -> QName
    -> Maybe AsName
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    Import ((QName, Range, Either Expr Name, ImportDirective) -> Range
    forall a. HasRange a => a -> Range
    getRange (QName
    m, Range
    asR, Either Expr Name
    m', ImportDirective
    dir)) QName
    m
                         (AsName -> Maybe AsName
    forall a. a -> Maybe a
    Just (Either Expr Name -> Range -> AsName
    forall a. a -> Range -> AsName' a
    AsName Either Expr Name
    m' Range
    asR)) OpenShortHand
    doOpen ImportDirective
    dir
                     )
                  else Range -> Declaration
    impStm Range
    asR Declaration -> [Declaration] -> List1 Declaration
    forall a. a -> [a] -> NonEmpty a
    :| [ Name -> [Expr] -> Declaration
    appStm ((Expr -> Name) -> Either Expr Name -> Name
    forall a b. (a -> b) -> Either a b -> b
    fromRight (Name -> Expr -> Name
    forall a b. a -> b -> a
    const Name
    fresh') Either Expr Name
    m') [Expr]
    initArgs ]
              -- Andreas, 2017-05-13, issue #2579
              -- Nisse reports that importing with instantation but without open
              -- could be usefule for bringing instances into scope.
              -- Ulf, 2018-12-6: Not since fixes of #1913 and #2489 which require
              -- instances to be in scope.
              | OpenShortHand
    DontOpen <- OpenShortHand
    doOpen -> Interval -> [Char] -> Parser (List1 Declaration)
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Interval
    happy_var_2 [Char]
    "An import statement with module instantiation is useless without either an `open' keyword or an `as` binding giving a name to the instantiated module."
              | Bool
    otherwise -> List1 Declaration -> Parser (List1 Declaration)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 Declaration -> Parser (List1 Declaration))
    -> List1 Declaration -> Parser (List1 Declaration)
    forall a b. (a -> b) -> a -> b
    $
                  Range -> Declaration
    impStm Range
    forall a. Range' a
    noRange Declaration -> [Declaration] -> List1 Declaration
    forall a. a -> [a] -> NonEmpty a
    :|
                  Name -> [Expr] -> Declaration
    appStm (Range -> Name
    noName (Range -> Name) -> Range -> Name
    forall a b. (a -> b) -> a -> b
    $ Range -> Range
    beginningOf (Range -> Range) -> Range -> Range
    forall a b. (a -> b) -> a -> b
    $ QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    m) [Expr]
    es Declaration -> [Declaration] -> [Declaration]
    forall a. a -> [a] -> [a]
    :
                  []
          })}}}}})
    	) (\List1 Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (List1 Declaration -> HappyAbsSyn
    happyIn141 List1 Declaration
    r))

    happyReduce_442 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_442 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_442 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    131# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_442
    happyReduction_442 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_442 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOpen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_2 of { (HappyWrap30 QName
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    happy_x_3 of { (HappyWrap142 [Expr]
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_4 of { (HappyWrap91 ImportDirective
    happy_var_4) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn141
    		 (let
        { m :: QName
    m   = QName
    happy_var_2
        ; es :: [Expr]
    es  = [Expr]
    happy_var_3
        ; dir :: ImportDirective
    dir = ImportDirective
    happy_var_4
        ; r :: Range
    r   = (Interval, QName, [Expr], ImportDirective) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, QName
    m, [Expr]
    es, ImportDirective
    dir)
        } in Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton (Declaration -> List1 Declaration)
    -> Declaration -> List1 Declaration
    forall a b. (a -> b) -> a -> b
    $
          case [Expr]
    es of
          { []  -> Range -> QName -> ImportDirective -> Declaration
    Open Range
    r QName
    m ImportDirective
    dir
          ; [Expr]
    _   -> Range -> Origin -> [Declaration] -> Declaration
    Private Range
    r Origin
    Inserted
                     [ Range
    -> Name
    -> ModuleApplication
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    ModuleMacro Range
    r (Range -> Name
    noName (Range -> Name) -> Range -> Name
    forall a b. (a -> b) -> a -> b
    $ Range -> Range
    beginningOf (Range -> Range) -> Range -> Range
    forall a b. (a -> b) -> a -> b
    $ QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    m)
                                 (Range -> Telescope -> Expr -> ModuleApplication
    SectionApp ((QName, [Expr]) -> Range
    forall a. HasRange a => a -> Range
    getRange (QName
    m , [Expr]
    es)) [] (List1 Expr -> Expr
    rawApp (QName -> Expr
    Ident QName
    m Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    es)))
                                 OpenShortHand
    DoOpen ImportDirective
    dir
                     ]
          }
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_443 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_443 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_443 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    6# Int#
    131# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_443
    happyReduction_443 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_443 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_2 of { (HappyWrap30 QName
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_6 of { (HappyWrap91 ImportDirective
    happy_var_6) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn141
    		 (let r :: Range
    r = QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    happy_var_2 in Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton (Declaration -> List1 Declaration)
    -> Declaration -> List1 Declaration
    forall a b. (a -> b) -> a -> b
    $
          Range -> Origin -> [Declaration] -> Declaration
    Private Range
    r Origin
    Inserted
          [ Range
    -> Name
    -> ModuleApplication
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    ModuleMacro Range
    r (Range -> Name
    noName (Range -> Name) -> Range -> Name
    forall a b. (a -> b) -> a -> b
    $ Range -> Range
    beginningOf (Range -> Range) -> Range -> Range
    forall a b. (a -> b) -> a -> b
    $ QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    happy_var_2) (Range -> QName -> ModuleApplication
    RecordModuleInstance Range
    r QName
    happy_var_2) OpenShortHand
    DoOpen ImportDirective
    happy_var_6
          ]
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}

    happyReduce_444 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_444 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_444 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    132# HappyAbsSyn
    happyReduction_444
    happyReduction_444 :: HappyAbsSyn
    happyReduction_444  =  [Expr] -> HappyAbsSyn
    happyIn142
    		 ([]
    	)

    happyReduce_445 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_445 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_445 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    132# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_445
    happyReduction_445 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_445 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap56
    happyOut56 HappyAbsSyn
    happy_x_1 of { (HappyWrap56 Expr
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    happy_x_2 of { (HappyWrap142 [Expr]
    happy_var_2) ->
    	[Expr] -> HappyAbsSyn
    happyIn142
    		 (Expr
    happy_var_1 Expr -> [Expr] -> [Expr]
    forall a. a -> [a] -> [a]
    : [Expr]
    happy_var_2
    	)}}

    happyReduce_446 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_446 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_446 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    133# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_446
    happyReduction_446 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_446 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_1 of { (HappyWrap30 QName
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymEllipsis Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap21
    happyOut21 HappyAbsSyn
    happy_x_4 of { (HappyWrap21 Range
    happy_var_4) ->
    	(Telescope -> Parser ModuleApplication) -> HappyAbsSyn
    happyIn143
    		 ((\Telescope
    ts ->
                        if Telescope -> Bool
    forall a. Null a => a -> Bool
    null Telescope
    ts then ModuleApplication -> Parser ModuleApplication
    forall (m :: * -> *) a. Monad m => a -> m a
    return (ModuleApplication -> Parser ModuleApplication)
    -> ModuleApplication -> Parser ModuleApplication
    forall a b. (a -> b) -> a -> b
    $ Range -> QName -> ModuleApplication
    RecordModuleInstance ((QName, Interval, Interval, Range) -> Range
    forall a. HasRange a => a -> Range
    getRange (QName
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3,Range
    happy_var_4)) QName
    happy_var_1
                        else [Char] -> Parser ModuleApplication
    forall a. [Char] -> Parser a
    parseError [Char]
    "No bindings allowed for record module with non-canonical implicits" )
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_447 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_447 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_447 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    133# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_447
    happyReduction_447 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_447 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_1 of { (HappyWrap30 QName
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap142
    happyOut142 HappyAbsSyn
    happy_x_2 of { (HappyWrap142 [Expr]
    happy_var_2) ->
    	(Telescope -> Parser ModuleApplication) -> HappyAbsSyn
    happyIn143
    		 ((\Telescope
    ts -> ModuleApplication -> Parser ModuleApplication
    forall (m :: * -> *) a. Monad m => a -> m a
    return (ModuleApplication -> Parser ModuleApplication)
    -> ModuleApplication -> Parser ModuleApplication
    forall a b. (a -> b) -> a -> b
    $ Range -> Telescope -> Expr -> ModuleApplication
    SectionApp ((QName, [Expr]) -> Range
    forall a. HasRange a => a -> Range
    getRange (QName
    happy_var_1, [Expr]
    happy_var_2)) Telescope
    ts (List1 Expr -> Expr
    rawApp (QName -> Expr
    Ident QName
    happy_var_1 Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    happy_var_2)) )
    	)}}

    happyReduce_448 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_448 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_448 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    6# Int#
    134# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_448
    happyReduction_448 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_448 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_2 of { (HappyWrap30 QName
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap143
    happyOut143 HappyAbsSyn
    happy_x_5 of { (HappyWrap143 Telescope -> Parser ModuleApplication
    happy_var_5) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_6 of { (HappyWrap91 ImportDirective
    happy_var_6) ->
    	( do { ModuleApplication
    ma <- Telescope -> Parser ModuleApplication
    happy_var_5 ((LamBinding -> TypedBinding) -> [LamBinding] -> Telescope
    forall a b. (a -> b) -> [a] -> [b]
    map LamBinding -> TypedBinding
    addType [LamBinding]
    happy_var_3)
                              ; Name
    name <- QName -> Parser Name
    ensureUnqual QName
    happy_var_2
                              ; Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Range
    -> Name
    -> ModuleApplication
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    ModuleMacro ((Interval, QName, ModuleApplication, ImportDirective) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, QName
    happy_var_2, ModuleApplication
    ma, ImportDirective
    happy_var_6)) Name
    name ModuleApplication
    ma OpenShortHand
    DontOpen ImportDirective
    happy_var_6 })}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn144 Declaration
    r))

    happyReduce_449 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_449 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_449 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    7# Int#
    134# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_449
    happyReduction_449 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_449 (HappyAbsSyn
    happy_x_7 `HappyStk`
    	HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Declaration
    -> (Declaration -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwOpen Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap19
    happyOut19 HappyAbsSyn
    happy_x_3 of { (HappyWrap19 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_4 of { (HappyWrap83 [LamBinding]
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap143
    happyOut143 HappyAbsSyn
    happy_x_6 of { (HappyWrap143 Telescope -> Parser ModuleApplication
    happy_var_6) ->
    	case HappyAbsSyn -> HappyWrap91
    happyOut91 HappyAbsSyn
    happy_x_7 of { (HappyWrap91 ImportDirective
    happy_var_7) ->
    	( do {ModuleApplication
    ma <- Telescope -> Parser ModuleApplication
    happy_var_6 ((LamBinding -> TypedBinding) -> [LamBinding] -> Telescope
    forall a b. (a -> b) -> [a] -> [b]
    map LamBinding -> TypedBinding
    addType [LamBinding]
    happy_var_4); Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ Range
    -> Name
    -> ModuleApplication
    -> OpenShortHand
    -> ImportDirective
    -> Declaration
    ModuleMacro ((Interval, Interval, Name, ModuleApplication, ImportDirective)
    -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2, Name
    happy_var_3, ModuleApplication
    ma, ImportDirective
    happy_var_7)) Name
    happy_var_3 ModuleApplication
    ma OpenShortHand
    DoOpen ImportDirective
    happy_var_7 })}}}}}})
    	) (\Declaration
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Declaration -> HappyAbsSyn
    happyIn144 Declaration
    r))

    happyReduce_450 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_450 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_450 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    135# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_450
    happyReduction_450 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_450 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    happy_x_2 of { (HappyWrap30 QName
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_5 of { (HappyWrap189 [Declaration]
    happy_var_5) ->
    	Declaration -> HappyAbsSyn
    happyIn145
    		 (Range -> QName -> Telescope -> [Declaration] -> Declaration
    Module ((Interval, QName, [LamBinding], Interval, [Declaration]) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,QName
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,[Declaration]
    happy_var_5)) QName
    happy_var_2 ((LamBinding -> TypedBinding) -> [LamBinding] -> Telescope
    forall a b. (a -> b) -> [a] -> [b]
    map LamBinding -> TypedBinding
    addType [LamBinding]
    happy_var_3) [Declaration]
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_451 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_451 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_451 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    135# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_451
    happyReduction_451 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_451 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwModule Interval
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap146
    happyOut146 HappyAbsSyn
    happy_x_2 of { (HappyWrap146 Name
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap83
    happyOut83 HappyAbsSyn
    happy_x_3 of { (HappyWrap83 [LamBinding]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokKeyword Keyword
    KwWhere Interval
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap189
    happyOut189 HappyAbsSyn
    happy_x_5 of { (HappyWrap189 [Declaration]
    happy_var_5) ->
    	Declaration -> HappyAbsSyn
    happyIn145
    		 (Range -> QName -> Telescope -> [Declaration] -> Declaration
    Module ((Interval, Name, [LamBinding], Interval, [Declaration]) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Name
    happy_var_2,[LamBinding]
    happy_var_3,Interval
    happy_var_4,[Declaration]
    happy_var_5)) (Name -> QName
    QName Name
    happy_var_2) ((LamBinding -> TypedBinding) -> [LamBinding] -> Telescope
    forall a b. (a -> b) -> [a] -> [b]
    map LamBinding -> TypedBinding
    addType [LamBinding]
    happy_var_3) [Declaration]
    happy_var_5
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_452 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_452 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_452 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    136# HappyAbsSyn -> HappyAbsSyn
    happyReduction_452
    happyReduction_452 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_452 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymUnderscore Interval
    happy_var_1) ->
    	Name -> HappyAbsSyn
    happyIn146
    		 (Range -> Name
    noName (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1)
    	)}

    happyReduce_453 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_453 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_453 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    137# HappyAbsSyn -> HappyAbsSyn
    happyReduction_453
    happyReduction_453 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_453 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap191
    happyOut191 HappyAbsSyn
    happy_x_1 of { (HappyWrap191 [Declaration]
    happy_var_1) ->
    	[Declaration] -> HappyAbsSyn
    happyIn147
    		 ([Declaration] -> [Declaration]
    figureOutTopLevelModule [Declaration]
    happy_var_1
    	)}

    happyReduce_454 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_454 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_454 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    138# HappyAbsSyn -> HappyAbsSyn
    happyReduction_454
    happyReduction_454 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_454 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap149
    happyOut149 HappyAbsSyn
    happy_x_1 of { (HappyWrap149 Pragma
    happy_var_1) ->
    	Declaration -> HappyAbsSyn
    happyIn148
    		 (Pragma -> Declaration
    Pragma Pragma
    happy_var_1
    	)}

    happyReduce_455 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_455 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_455 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_455
    happyReduction_455 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_455 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap151
    happyOut151 HappyAbsSyn
    happy_x_1 of { (HappyWrap151 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_456 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_456 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_456 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_456
    happyReduction_456 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_456 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap152
    happyOut152 HappyAbsSyn
    happy_x_1 of { (HappyWrap152 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_457 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_457 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_457 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_457
    happyReduction_457 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_457 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap154
    happyOut154 HappyAbsSyn
    happy_x_1 of { (HappyWrap154 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_458 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_458 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_458 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_458
    happyReduction_458 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_458 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap153
    happyOut153 HappyAbsSyn
    happy_x_1 of { (HappyWrap153 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_459 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_459 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_459 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_459
    happyReduction_459 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_459 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap155
    happyOut155 HappyAbsSyn
    happy_x_1 of { (HappyWrap155 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_460 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_460 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_460 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_460
    happyReduction_460 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_460 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap158
    happyOut158 HappyAbsSyn
    happy_x_1 of { (HappyWrap158 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_461 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_461 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_461 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_461
    happyReduction_461 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_461 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap156
    happyOut156 HappyAbsSyn
    happy_x_1 of { (HappyWrap156 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_462 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_462 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_462 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_462
    happyReduction_462 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_462 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap157
    happyOut157 HappyAbsSyn
    happy_x_1 of { (HappyWrap157 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_463 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_463 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_463 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_463
    happyReduction_463 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_463 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap167
    happyOut167 HappyAbsSyn
    happy_x_1 of { (HappyWrap167 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_464 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_464 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_464 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_464
    happyReduction_464 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_464 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap163
    happyOut163 HappyAbsSyn
    happy_x_1 of { (HappyWrap163 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_465 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_465 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_465 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_465
    happyReduction_465 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_465 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap162
    happyOut162 HappyAbsSyn
    happy_x_1 of { (HappyWrap162 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_466 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_466 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_466 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_466
    happyReduction_466 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_466 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap161
    happyOut161 HappyAbsSyn
    happy_x_1 of { (HappyWrap161 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_467 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_467 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_467 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_467
    happyReduction_467 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_467 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap164
    happyOut164 HappyAbsSyn
    happy_x_1 of { (HappyWrap164 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_468 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_468 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_468 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_468
    happyReduction_468 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_468 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap171
    happyOut171 HappyAbsSyn
    happy_x_1 of { (HappyWrap171 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_469 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_469 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_469 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_469
    happyReduction_469 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_469 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap172
    happyOut172 HappyAbsSyn
    happy_x_1 of { (HappyWrap172 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_470 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_470 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_470 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_470
    happyReduction_470 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_470 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap165
    happyOut165 HappyAbsSyn
    happy_x_1 of { (HappyWrap165 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_471 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_471 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_471 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_471
    happyReduction_471 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_471 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap166
    happyOut166 HappyAbsSyn
    happy_x_1 of { (HappyWrap166 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_472 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_472 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_472 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_472
    happyReduction_472 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_472 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap159
    happyOut159 HappyAbsSyn
    happy_x_1 of { (HappyWrap159 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_473 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_473 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_473 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_473
    happyReduction_473 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_473 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap160
    happyOut160 HappyAbsSyn
    happy_x_1 of { (HappyWrap160 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_474 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_474 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_474 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_474
    happyReduction_474 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_474 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap168
    happyOut168 HappyAbsSyn
    happy_x_1 of { (HappyWrap168 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_475 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_475 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_475 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_475
    happyReduction_475 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_475 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap169
    happyOut169 HappyAbsSyn
    happy_x_1 of { (HappyWrap169 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_476 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_476 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_476 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_476
    happyReduction_476 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_476 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap170
    happyOut170 HappyAbsSyn
    happy_x_1 of { (HappyWrap170 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_477 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_477 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_477 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    139# HappyAbsSyn -> HappyAbsSyn
    happyReduction_477
    happyReduction_477 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_477 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap150
    happyOut150 HappyAbsSyn
    happy_x_1 of { (HappyWrap150 Pragma
    happy_var_1) ->
    	Pragma -> HappyAbsSyn
    happyIn149
    		 (Pragma
    happy_var_1
    	)}

    happyReduce_478 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_478 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_478 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    140# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_478
    happyReduction_478 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_478 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwOPTIONS Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    happy_x_3 of { (HappyWrap36 [[Char]]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn150
    		 (Range -> [[Char]] -> Pragma
    OptionsPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_4)) [[Char]]
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_479 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_479 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_479 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    141# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_479
    happyReduction_479 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_479 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwBUILTIN Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokString (Interval, [Char])
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_4 of { (HappyWrap40 QName
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	Pragma -> HappyAbsSyn
    happyIn151
    		 (Range -> RString -> QName -> Pragma
    BuiltinPragma ((Interval, Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,(Interval, [Char]) -> Interval
    forall a b. (a, b) -> a
    fst (Interval, [Char])
    happy_var_3,QName
    happy_var_4,Interval
    happy_var_5)) ((Interval, [Char]) -> RString
    mkRString (Interval, [Char])
    happy_var_3) QName
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_480 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_480 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_480 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    141# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_480
    happyReduction_480 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_480 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwBUILTIN Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokKeyword Keyword
    KwREWRITE Interval
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_4 of { (HappyWrap40 QName
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	Pragma -> HappyAbsSyn
    happyIn151
    		 (Range -> RString -> QName -> Pragma
    BuiltinPragma ((Interval, Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3,QName
    happy_var_4,Interval
    happy_var_5)) (Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_3) [Char]
    "REWRITE") QName
    happy_var_4
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_481 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_481 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_481 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    142# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_481
    happyReduction_481 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_481 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwREWRITE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap41
    happyOut41 HappyAbsSyn
    happy_x_3 of { (HappyWrap41 [QName]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn152
    		 (Range -> Range -> [QName] -> Pragma
    RewritePragma ((Interval, Interval, [QName], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,[QName]
    happy_var_3,Interval
    happy_var_4)) (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_2) [QName]
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_482 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_482 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_482 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    143# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_482
    happyReduction_482 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_482 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwFOREIGN Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokString (Interval, [Char])
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap38
    happyOut38 HappyAbsSyn
    happy_x_4 of { (HappyWrap38 [(Interval, [Char])]
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	Pragma -> HappyAbsSyn
    happyIn153
    		 (Range -> RString -> [Char] -> Pragma
    ForeignPragma ((Interval, Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2, (Interval, [Char]) -> Interval
    forall a b. (a, b) -> a
    fst (Interval, [Char])
    happy_var_3, Interval
    happy_var_5)) ((Interval, [Char]) -> RString
    mkRString (Interval, [Char])
    happy_var_3) ([(Interval, [Char])] -> [Char]
    recoverLayout [(Interval, [Char])]
    happy_var_4)
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_483 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_483 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_483 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    6# Int#
    144# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_483
    happyReduction_483 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_483 (HappyAbsSyn
    happy_x_6 `HappyStk`
    	HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwCOMPILE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokString (Interval, [Char])
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_4 of { (HappyWrap40 QName
    happy_var_4) ->
    	case HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    happy_x_5 of { (HappyWrap36 [[Char]]
    happy_var_5) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_6 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_6) ->
    	Pragma -> HappyAbsSyn
    happyIn154
    		 (Range -> RString -> QName -> [Char] -> Pragma
    CompilePragma ((Interval, Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,(Interval, [Char]) -> Interval
    forall a b. (a, b) -> a
    fst (Interval, [Char])
    happy_var_3,QName
    happy_var_4,Interval
    happy_var_6)) ((Interval, [Char]) -> RString
    mkRString (Interval, [Char])
    happy_var_3) QName
    happy_var_4 ([[Char]] -> [Char]
    unwords [[Char]]
    happy_var_5)
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}}

    happyReduce_484 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_484 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_484 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    145# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_484
    happyReduction_484 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_484 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwSTATIC Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn155
    		 (Range -> QName -> Pragma
    StaticPragma ((Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Interval
    happy_var_4)) QName
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_485 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_485 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_485 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    146# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_485
    happyReduction_485 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_485 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwINLINE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn156
    		 (Range -> Bool -> QName -> Pragma
    InlinePragma ((Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Interval
    happy_var_4)) Bool
    True QName
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_486 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_486 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_486 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    147# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_486
    happyReduction_486 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_486 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNOINLINE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn157
    		 (Range -> Bool -> QName -> Pragma
    InlinePragma ((Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Interval
    happy_var_4)) Bool
    False QName
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_487 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_487 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_487 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    148# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_487
    happyReduction_487 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_487 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwINJECTIVE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn158
    		 (Range -> QName -> Pragma
    InjectivePragma ((Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Interval
    happy_var_4)) QName
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_488 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_488 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_488 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    149# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_488
    happyReduction_488 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_488 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Pragma
    -> (Pragma -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokString (Interval, [Char])
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    happy_x_4 of { (HappyWrap36 [[Char]]
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	(
          let (Interval
    r, [Char]
    s) = (Interval, [Char])
    happy_var_3 in
          Range -> Position -> [Char] -> Parser Pragma
    parseDisplayPragma (Interval -> Interval -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Interval
    happy_var_1 Interval
    happy_var_5) (Interval -> Position
    forall a. Interval' a -> Position' a
    iStart Interval
    r) ([[Char]] -> [Char]
    unwords ([Char]
    s [Char] -> [[Char]] -> [[Char]]
    forall a. a -> [a] -> [a]
    : [[Char]]
    happy_var_4)))}}}})
    	) (\Pragma
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Pragma -> HappyAbsSyn
    happyIn159 Pragma
    r))

    happyReduce_489 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_489 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_489 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    150# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_489
    happyReduction_489 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_489 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwETA Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn160
    		 (Range -> QName -> Pragma
    EtaPragma ((Interval, Interval, QName, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Interval
    happy_var_4)) QName
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_490 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_490 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_490 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    151# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_490
    happyReduction_490 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_490 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNO_TERMINATION_CHECK Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn161
    		 (Range -> TerminationCheck Name -> Pragma
    TerminationCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3)) TerminationCheck Name
    forall m. TerminationCheck m
    NoTerminationCheck
    	)}}}

    happyReduce_491 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_491 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_491 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    152# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_491
    happyReduction_491 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_491 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNON_TERMINATING Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn162
    		 (Range -> TerminationCheck Name -> Pragma
    TerminationCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3)) TerminationCheck Name
    forall m. TerminationCheck m
    NonTerminating
    	)}}}

    happyReduce_492 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_492 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_492 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    153# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_492
    happyReduction_492 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_492 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwTERMINATING Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn163
    		 (Range -> TerminationCheck Name -> Pragma
    TerminationCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3)) TerminationCheck Name
    forall m. TerminationCheck m
    Terminating
    	)}}}

    happyReduce_493 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_493 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_493 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    154# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_493
    happyReduction_493 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_493 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNON_COVERING Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn164
    		 (Range -> Pragma
    NoCoverageCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3))
    	)}}}

    happyReduce_494 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_494 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_494 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    155# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_494
    happyReduction_494 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_494 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwMEASURE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap39
    happyOut39 HappyAbsSyn
    happy_x_3 of { (HappyWrap39 Name
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn165
    		 (let r :: Range
    r = (Interval, Interval, Name, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1, Interval
    happy_var_2, Name
    happy_var_3, Interval
    happy_var_4) in
          Range -> TerminationCheck Name -> Pragma
    TerminationCheckPragma Range
    r (Range -> Name -> TerminationCheck Name
    forall m. Range -> m -> TerminationCheck m
    TerminationMeasure Range
    r Name
    happy_var_3)
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_495 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_495 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_495 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    156# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_495
    happyReduction_495 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_495 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwCATCHALL Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn166
    		 (Range -> Pragma
    CatchallPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3))
    	)}}}

    happyReduce_496 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_496 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_496 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    4# Int#
    157# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_496
    happyReduction_496 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_496 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwIMPOSSIBLE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap36
    happyOut36 HappyAbsSyn
    happy_x_3 of { (HappyWrap36 [[Char]]
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	Pragma -> HappyAbsSyn
    happyIn167
    		 (Range -> [[Char]] -> Pragma
    ImpossiblePragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_4)) [[Char]]
    happy_var_3
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}

    happyReduce_497 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_497 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_497 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    158# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_497
    happyReduction_497 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_497 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNO_POSITIVITY_CHECK Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn168
    		 (Range -> Pragma
    NoPositivityCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3))
    	)}}}

    happyReduce_498 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_498 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_498 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    159# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_498
    happyReduction_498 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_498 HappyAbsSyn
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwNO_UNIVERSE_CHECK Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_3) ->
    	Pragma -> HappyAbsSyn
    happyIn169
    		 (Range -> Pragma
    NoUniverseCheckPragma ((Interval, Interval, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Interval
    happy_var_3))
    	)}}}

    happyReduce_499 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_499 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_499 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce Int#
    5# Int#
    160# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_499
    happyReduction_499 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    happyReduction_499 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest)
    	 = case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwPOLARITY Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap39
    happyOut39 HappyAbsSyn
    happy_x_3 of { (HappyWrap39 Name
    happy_var_3) ->
    	case HappyAbsSyn -> HappyWrap173
    happyOut173 HappyAbsSyn
    happy_x_4 of { (HappyWrap173 [(Range, Occurrence)]
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	Pragma -> HappyAbsSyn
    happyIn170
    		 (let ([Range]
    rs, [Occurrence]
    occs) = [(Range, Occurrence)] -> ([Range], [Occurrence])
    forall a b. [(a, b)] -> ([a], [b])
    unzip ([(Range, Occurrence)] -> [(Range, Occurrence)]
    forall a. [a] -> [a]
    reverse [(Range, Occurrence)]
    happy_var_4) in
          Range -> Name -> [Occurrence] -> Pragma
    PolarityPragma ((Interval, Interval, Name, [Range], Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Name
    happy_var_3,[Range]
    rs,Interval
    happy_var_5)) Name
    happy_var_3 [Occurrence]
    occs
    	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
    forall a. a -> HappyStk a -> HappyStk a
    `HappyStk` HappyStk HappyAbsSyn
    happyRest}}}}}

    happyReduce_500 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_500 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_500 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    161# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_500
    happyReduction_500 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_500 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Pragma
    -> (Pragma -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwWARNING_ON_USAGE Interval
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap40
    happyOut40 HappyAbsSyn
    happy_x_3 of { (HappyWrap40 QName
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokLiteral RLiteral
    happy_var_4) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_5 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_5) ->
    	(  case RLiteral
    happy_var_4 of
            { Ranged Range
    r (LitString Text
    str) -> Pragma -> Parser Pragma
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Pragma -> Parser Pragma) -> Pragma -> Parser Pragma
    forall a b. (a -> b) -> a -> b
    $ Range -> QName -> Text -> Pragma
    WarningOnUsage ((Interval, Interval, QName, Range, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,QName
    happy_var_3,Range
    r,Interval
    happy_var_5)) QName
    happy_var_3 Text
    str
            ; RLiteral
    _ -> [Char] -> Parser Pragma
    forall a. [Char] -> Parser a
    parseError [Char]
    "Expected string literal"
            })}}}}})
    	) (\Pragma
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Pragma -> HappyAbsSyn
    happyIn171 Pragma
    r))

    happyReduce_501 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_501 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_501 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    4# Int#
    162# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_501
    happyReduction_501 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_501 (HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser Pragma
    -> (Pragma -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokSymbol Symbol
    SymOpenPragma Interval
    happy_var_1) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_2 of { (TokKeyword Keyword
    KwWARNING_ON_IMPORT Interval
    happy_var_2) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_3 of { (TokLiteral RLiteral
    happy_var_3) ->
    	case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_4 of { (TokSymbol Symbol
    SymClosePragma Interval
    happy_var_4) ->
    	(  case RLiteral
    happy_var_3 of
            { Ranged Range
    r (LitString Text
    str) -> Pragma -> Parser Pragma
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Pragma -> Parser Pragma) -> Pragma -> Parser Pragma
    forall a b. (a -> b) -> a -> b
    $ Range -> Text -> Pragma
    WarningOnImport ((Interval, Interval, Range, Interval) -> Range
    forall a. HasRange a => a -> Range
    getRange (Interval
    happy_var_1,Interval
    happy_var_2,Range
    r,Interval
    happy_var_4)) Text
    str
            ; RLiteral
    _ -> [Char] -> Parser Pragma
    forall a. [Char] -> Parser a
    parseError [Char]
    "Expected string literal"
            })}}}})
    	) (\Pragma
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn (Pragma -> HappyAbsSyn
    happyIn172 Pragma
    r))

    happyReduce_502 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_502 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_502 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    163# HappyAbsSyn
    happyReduction_502
    happyReduction_502 :: HappyAbsSyn
    happyReduction_502  =  [(Range, Occurrence)] -> HappyAbsSyn
    happyIn173
    		 ([]
    	)

    happyReduce_503 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_503 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_503 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    163# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_503
    happyReduction_503 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_503 HappyAbsSyn
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap173
    happyOut173 HappyAbsSyn
    happy_x_1 of { (HappyWrap173 [(Range, Occurrence)]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap174
    happyOut174 HappyAbsSyn
    happy_x_2 of { (HappyWrap174 (Range, Occurrence)
    happy_var_2) ->
    	[(Range, Occurrence)] -> HappyAbsSyn
    happyIn173
    		 ((Range, Occurrence)
    happy_var_2 (Range, Occurrence)
    -> [(Range, Occurrence)] -> [(Range, Occurrence)]
    forall a. a -> [a] -> [a]
    : [(Range, Occurrence)]
    happy_var_1
    	)}}

    happyReduce_504 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_504 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_504 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    1# Int#
    164# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_504
    happyReduction_504 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_504 (HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (Range, Occurrence)
    -> ((Range, Occurrence) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokString (Interval, [Char])
    happy_var_1) ->
    	( (Interval, [Char]) -> Parser (Range, Occurrence)
    polarity (Interval, [Char])
    happy_var_1)})
    	) (\(Range, Occurrence)
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ((Range, Occurrence) -> HappyAbsSyn
    happyIn174 (Range, Occurrence)
    r))

    happyReduce_505 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_505 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_505 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    165# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_505
    happyReduction_505 :: p -> p -> HappyAbsSyn
    happyReduction_505 p
    happy_x_2
    	p
    happy_x_1
    	 =  [Declaration] -> HappyAbsSyn
    happyIn175
    		 ([]
    	)

    happyReduce_506 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_506 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_506 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    165# HappyAbsSyn -> HappyAbsSyn
    happyReduction_506
    happyReduction_506 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_506 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap176
    happyOut176 HappyAbsSyn
    happy_x_1 of { (HappyWrap176 List1 Declaration
    happy_var_1) ->
    	[Declaration] -> HappyAbsSyn
    happyIn175
    		 (List1 Declaration -> [Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Declaration
    happy_var_1
    	)}

    happyReduce_507 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_507 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_507 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    166# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_507
    happyReduction_507 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_507 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap177
    happyOut177 HappyAbsSyn
    happy_x_2 of { (HappyWrap177 List1 Declaration
    happy_var_2) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn176
    		 (List1 Declaration -> List1 Declaration
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 Declaration
    happy_var_2
    	)}

    happyReduce_508 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_508 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_508 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    167# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_508
    happyReduction_508 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_508 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap177
    happyOut177 HappyAbsSyn
    happy_x_1 of { (HappyWrap177 List1 Declaration
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap109
    happyOut109 HappyAbsSyn
    happy_x_3 of { (HappyWrap109 List1 Declaration
    happy_var_3) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn177
    		 (List1 Declaration -> List1 Declaration
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 Declaration
    happy_var_3 List1 Declaration -> List1 Declaration -> List1 Declaration
    forall a. Semigroup a => a -> a -> a
    <> List1 Declaration
    happy_var_1
    	)}}

    happyReduce_509 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_509 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_509 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    167# HappyAbsSyn -> HappyAbsSyn
    happyReduction_509
    happyReduction_509 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_509 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap109
    happyOut109 HappyAbsSyn
    happy_x_1 of { (HappyWrap109 List1 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn177
    		 (List1 Declaration -> List1 Declaration
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 Declaration
    happy_var_1
    	)}

    happyReduce_510 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_510 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_510 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    168# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_510
    happyReduction_510 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_510 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap179
    happyOut179 HappyAbsSyn
    happy_x_2 of { (HappyWrap179 List1 (Arg Declaration)
    happy_var_2) ->
    	List1 (Arg Declaration) -> HappyAbsSyn
    happyIn178
    		 (List1 (Arg Declaration) -> List1 (Arg Declaration)
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 (Arg Declaration)
    happy_var_2
    	)}

    happyReduce_511 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_511 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_511 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    169# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_511
    happyReduction_511 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_511 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap179
    happyOut179 HappyAbsSyn
    happy_x_1 of { (HappyWrap179 List1 (Arg Declaration)
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap110
    happyOut110 HappyAbsSyn
    happy_x_3 of { (HappyWrap110 List1 (Arg Declaration)
    happy_var_3) ->
    	List1 (Arg Declaration) -> HappyAbsSyn
    happyIn179
    		 (List1 (Arg Declaration) -> List1 (Arg Declaration)
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 (Arg Declaration)
    happy_var_3 List1 (Arg Declaration)
    -> List1 (Arg Declaration) -> List1 (Arg Declaration)
    forall a. Semigroup a => a -> a -> a
    <> List1 (Arg Declaration)
    happy_var_1
    	)}}

    happyReduce_512 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_512 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_512 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    169# HappyAbsSyn -> HappyAbsSyn
    happyReduction_512
    happyReduction_512 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_512 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap110
    happyOut110 HappyAbsSyn
    happy_x_1 of { (HappyWrap110 List1 (Arg Declaration)
    happy_var_1) ->
    	List1 (Arg Declaration) -> HappyAbsSyn
    happyIn179
    		 (List1 (Arg Declaration) -> List1 (Arg Declaration)
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse List1 (Arg Declaration)
    happy_var_1
    	)}

    happyReduce_513 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_513 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_513 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    170# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_513
    happyReduction_513 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_513 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap181
    happyOut181 HappyAbsSyn
    happy_x_2 of { (HappyWrap181 [Arg Declaration]
    happy_var_2) ->
    	[Arg Declaration] -> HappyAbsSyn
    happyIn180
    		 ([Arg Declaration] -> [Arg Declaration]
    forall a. [a] -> [a]
    reverse [Arg Declaration]
    happy_var_2
    	)}

    happyReduce_514 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_514 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_514 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    171# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_514
    happyReduction_514 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_514 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap181
    happyOut181 HappyAbsSyn
    happy_x_1 of { (HappyWrap181 [Arg Declaration]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap110
    happyOut110 HappyAbsSyn
    happy_x_3 of { (HappyWrap110 List1 (Arg Declaration)
    happy_var_3) ->
    	[Arg Declaration] -> HappyAbsSyn
    happyIn181
    		 ([Arg Declaration] -> [Arg Declaration]
    forall a. [a] -> [a]
    reverse (List1 (Arg Declaration) -> [Arg Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (Arg Declaration)
    happy_var_3) [Arg Declaration] -> [Arg Declaration] -> [Arg Declaration]
    forall a. [a] -> [a] -> [a]
    ++ [Arg Declaration]
    happy_var_1
    	)}}

    happyReduce_515 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_515 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_515 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    171# HappyAbsSyn -> HappyAbsSyn
    happyReduction_515
    happyReduction_515 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_515 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap110
    happyOut110 HappyAbsSyn
    happy_x_1 of { (HappyWrap110 List1 (Arg Declaration)
    happy_var_1) ->
    	[Arg Declaration] -> HappyAbsSyn
    happyIn181
    		 ([Arg Declaration] -> [Arg Declaration]
    forall a. [a] -> [a]
    reverse (List1 (Arg Declaration) -> [Arg Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (Arg Declaration)
    happy_var_1)
    	)}

    happyReduce_516 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_516 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_516 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    171# HappyAbsSyn
    happyReduction_516
    happyReduction_516 :: HappyAbsSyn
    happyReduction_516  =  [Arg Declaration] -> HappyAbsSyn
    happyIn181
    		 ([]
    	)

    happyReduce_517 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_517 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_517 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    3# Int#
    172# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_517
    happyReduction_517 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_517 (HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (RecordDirectives, [Declaration])
    -> ((RecordDirectives, [Declaration]) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap183
    happyOut183 HappyAbsSyn
    happy_x_2 of { (HappyWrap183 [RecordDirective]
    happy_var_2) ->
    	( [RecordDirective] -> Parser RecordDirectives
    verifyRecordDirectives [RecordDirective]
    happy_var_2 Parser RecordDirectives
    -> (RecordDirectives -> (RecordDirectives, [Declaration]))
    -> Parser (RecordDirectives, [Declaration])
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> (,[]))})
    	) (\(RecordDirectives, [Declaration])
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ((RecordDirectives, [Declaration]) -> HappyAbsSyn
    happyIn182 (RecordDirectives, [Declaration])
    r))

    happyReduce_518 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_518 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_518 = Int#
    -> Int#
    -> (HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyMonadReduce Int#
    5# Int#
    172# HappyStk HappyAbsSyn -> Token -> Parser HappyAbsSyn
    forall {p}. HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_518
    happyReduction_518 :: HappyStk HappyAbsSyn -> p -> Parser HappyAbsSyn
    happyReduction_518 (HappyAbsSyn
    happy_x_5 `HappyStk`
    	HappyAbsSyn
    happy_x_4 `HappyStk`
    	HappyAbsSyn
    happy_x_3 `HappyStk`
    	HappyAbsSyn
    happy_x_2 `HappyStk`
    	HappyAbsSyn
    happy_x_1 `HappyStk`
    	HappyStk HappyAbsSyn
    happyRest) p
    tk
    	 = Parser (RecordDirectives, [Declaration])
    -> ((RecordDirectives, [Declaration]) -> Parser HappyAbsSyn)
    -> Parser HappyAbsSyn
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen ((case HappyAbsSyn -> HappyWrap183
    happyOut183 HappyAbsSyn
    happy_x_2 of { (HappyWrap183 [RecordDirective]
    happy_var_2) ->
    	case HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    happy_x_4 of { (HappyWrap190 List1 Declaration
    happy_var_4) ->
    	( [RecordDirective] -> Parser RecordDirectives
    verifyRecordDirectives [RecordDirective]
    happy_var_2 Parser RecordDirectives
    -> (RecordDirectives -> (RecordDirectives, [Declaration]))
    -> Parser (RecordDirectives, [Declaration])
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> (, List1 Declaration -> [Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Declaration
    happy_var_4))}})
    	) (\(RecordDirectives, [Declaration])
    r -> HappyAbsSyn -> Parser HappyAbsSyn
    forall a. a -> Parser a
    happyReturn ((RecordDirectives, [Declaration]) -> HappyAbsSyn
    happyIn182 (RecordDirectives, [Declaration])
    r))

    happyReduce_519 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_519 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_519 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    172# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_519
    happyReduction_519 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_519 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    happy_x_2 of { (HappyWrap190 List1 Declaration
    happy_var_2) ->
    	(RecordDirectives, [Declaration]) -> HappyAbsSyn
    happyIn182
    		 ((RecordDirectives
    forall a. RecordDirectives' a
    emptyRecordDirectives, List1 Declaration -> [Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Declaration
    happy_var_2)
    	)}

    happyReduce_520 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_520 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_520 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    173# HappyAbsSyn
    happyReduction_520
    happyReduction_520 :: HappyAbsSyn
    happyReduction_520  =  [RecordDirective] -> HappyAbsSyn
    happyIn183
    		 ([]
    	)

    happyReduce_521 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_521 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_521 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    173# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_521
    happyReduction_521 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_521 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap183
    happyOut183 HappyAbsSyn
    happy_x_1 of { (HappyWrap183 [RecordDirective]
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap184
    happyOut184 HappyAbsSyn
    happy_x_3 of { (HappyWrap184 RecordDirective
    happy_var_3) ->
    	[RecordDirective] -> HappyAbsSyn
    happyIn183
    		 (RecordDirective
    happy_var_3 RecordDirective -> [RecordDirective] -> [RecordDirective]
    forall a. a -> [a] -> [a]
    : [RecordDirective]
    happy_var_1
    	)}}

    happyReduce_522 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_522 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_522 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    173# HappyAbsSyn -> HappyAbsSyn
    happyReduction_522
    happyReduction_522 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_522 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap184
    happyOut184 HappyAbsSyn
    happy_x_1 of { (HappyWrap184 RecordDirective
    happy_var_1) ->
    	[RecordDirective] -> HappyAbsSyn
    happyIn183
    		 ([RecordDirective
    happy_var_1]
    	)}

    happyReduce_523 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_523 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_523 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    174# HappyAbsSyn -> HappyAbsSyn
    happyReduction_523
    happyReduction_523 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_523 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap119
    happyOut119 HappyAbsSyn
    happy_x_1 of { (HappyWrap119 (Name, IsInstance)
    happy_var_1) ->
    	RecordDirective -> HappyAbsSyn
    happyIn184
    		 ((Name -> IsInstance -> RecordDirective)
    -> (Name, IsInstance) -> RecordDirective
    forall a b c. (a -> b -> c) -> (a, b) -> c
    uncurry Name -> IsInstance -> RecordDirective
    Constructor (Name, IsInstance)
    happy_var_1
    	)}

    happyReduce_524 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_524 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_524 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    174# HappyAbsSyn -> HappyAbsSyn
    happyReduction_524
    happyReduction_524 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_524 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap187
    happyOut187 HappyAbsSyn
    happy_x_1 of { (HappyWrap187 Ranged Induction
    happy_var_1) ->
    	RecordDirective -> HappyAbsSyn
    happyIn184
    		 (Ranged Induction -> RecordDirective
    Induction Ranged Induction
    happy_var_1
    	)}

    happyReduce_525 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_525 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_525 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    174# HappyAbsSyn -> HappyAbsSyn
    happyReduction_525
    happyReduction_525 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_525 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap185
    happyOut185 HappyAbsSyn
    happy_x_1 of { (HappyWrap185 Ranged HasEta0
    happy_var_1) ->
    	RecordDirective -> HappyAbsSyn
    happyIn184
    		 (Ranged HasEta0 -> RecordDirective
    Eta Ranged HasEta0
    happy_var_1
    	)}

    happyReduce_526 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_526 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_526 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    174# HappyAbsSyn -> HappyAbsSyn
    happyReduction_526
    happyReduction_526 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_526 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap186
    happyOut186 HappyAbsSyn
    happy_x_1 of { (HappyWrap186 Range
    happy_var_1) ->
    	RecordDirective -> HappyAbsSyn
    happyIn184
    		 (Range -> RecordDirective
    PatternOrCopattern Range
    happy_var_1
    	)}

    happyReduce_527 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_527 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_527 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    175# HappyAbsSyn -> HappyAbsSyn
    happyReduction_527
    happyReduction_527 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_527 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwEta Interval
    happy_var_1) ->
    	Ranged HasEta0 -> HappyAbsSyn
    happyIn185
    		 (Range -> HasEta0 -> Ranged HasEta0
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) HasEta0
    forall a. HasEta' a
    YesEta
    	)}

    happyReduce_528 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_528 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_528 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    175# HappyAbsSyn -> HappyAbsSyn
    happyReduction_528
    happyReduction_528 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_528 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwNoEta Interval
    happy_var_1) ->
    	Ranged HasEta0 -> HappyAbsSyn
    happyIn185
    		 (Range -> HasEta0 -> Ranged HasEta0
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) (() -> HasEta0
    forall a. a -> HasEta' a
    NoEta ())
    	)}

    happyReduce_529 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_529 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_529 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    176# HappyAbsSyn -> HappyAbsSyn
    happyReduction_529
    happyReduction_529 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_529 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwPatternSyn Interval
    happy_var_1) ->
    	Range -> HappyAbsSyn
    happyIn186
    		 (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1
    	)}

    happyReduce_530 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_530 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_530 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    177# HappyAbsSyn -> HappyAbsSyn
    happyReduction_530
    happyReduction_530 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_530 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwInductive Interval
    happy_var_1) ->
    	Ranged Induction -> HappyAbsSyn
    happyIn187
    		 (Range -> Induction -> Ranged Induction
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) Induction
    Inductive
    	)}

    happyReduce_531 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_531 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_531 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    177# HappyAbsSyn -> HappyAbsSyn
    happyReduction_531
    happyReduction_531 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_531 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> Token
    happyOutTok HappyAbsSyn
    happy_x_1 of { (TokKeyword Keyword
    KwCoInductive Interval
    happy_var_1) ->
    	Ranged Induction -> HappyAbsSyn
    happyIn187
    		 (Range -> Induction -> Ranged Induction
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    happy_var_1) Induction
    CoInductive
    	)}

    happyReduce_532 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_532 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_532 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    178# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_532
    happyReduction_532 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
    happyReduction_532 p
    happy_x_3
    	HappyAbsSyn
    happy_x_2
    	p
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    happy_x_2 of { (HappyWrap190 List1 Declaration
    happy_var_2) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn188
    		 (List1 Declaration
    happy_var_2
    	)}

    happyReduce_533 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_533 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_533 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    179# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p} {p}. p -> p -> HappyAbsSyn
    happyReduction_533
    happyReduction_533 :: p -> p -> HappyAbsSyn
    happyReduction_533 p
    happy_x_2
    	p
    happy_x_1
    	 =  [Declaration] -> HappyAbsSyn
    happyIn189
    		 ([]
    	)

    happyReduce_534 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_534 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_534 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    179# HappyAbsSyn -> HappyAbsSyn
    happyReduction_534
    happyReduction_534 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_534 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap188
    happyOut188 HappyAbsSyn
    happy_x_1 of { (HappyWrap188 List1 Declaration
    happy_var_1) ->
    	[Declaration] -> HappyAbsSyn
    happyIn189
    		 (List1 Declaration -> [Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Declaration
    happy_var_1
    	)}

    happyReduce_535 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_535 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_535 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_3  Int#
    180# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_535
    happyReduction_535 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_535 HappyAbsSyn
    happy_x_3
    	p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap108
    happyOut108 HappyAbsSyn
    happy_x_1 of { (HappyWrap108 List1 Declaration
    happy_var_1) ->
    	case HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    happy_x_3 of { (HappyWrap190 List1 Declaration
    happy_var_3) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn190
    		 (List1 Declaration
    happy_var_1 List1 Declaration -> List1 Declaration -> List1 Declaration
    forall a. Semigroup a => a -> a -> a
    <> List1 Declaration
    happy_var_3
    	)}}

    happyReduce_536 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_536 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_536 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_2  Int#
    180# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
    forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_536
    happyReduction_536 :: p -> HappyAbsSyn -> HappyAbsSyn
    happyReduction_536 p
    happy_x_2
    	HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap108
    happyOut108 HappyAbsSyn
    happy_x_1 of { (HappyWrap108 List1 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn190
    		 (List1 Declaration
    happy_var_1
    	)}

    happyReduce_537 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_537 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_537 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    180# HappyAbsSyn -> HappyAbsSyn
    happyReduction_537
    happyReduction_537 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_537 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap108
    happyOut108 HappyAbsSyn
    happy_x_1 of { (HappyWrap108 List1 Declaration
    happy_var_1) ->
    	List1 Declaration -> HappyAbsSyn
    happyIn190
    		 (List1 Declaration
    happy_var_1
    	)}

    happyReduce_538 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_538 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_538 = Int#
    -> HappyAbsSyn
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_0  Int#
    181# HappyAbsSyn
    happyReduction_538
    happyReduction_538 :: HappyAbsSyn
    happyReduction_538  =  [Declaration] -> HappyAbsSyn
    happyIn191
    		 ([]
    	)

    happyReduce_539 :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )
    happyReduce_539 :: Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyReduce_539 = Int#
    -> (HappyAbsSyn -> HappyAbsSyn)
    -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happySpecReduce_1  Int#
    181# HappyAbsSyn -> HappyAbsSyn
    happyReduction_539
    happyReduction_539 :: HappyAbsSyn -> HappyAbsSyn
    happyReduction_539 HappyAbsSyn
    happy_x_1
    	 =  case HappyAbsSyn -> HappyWrap190
    happyOut190 HappyAbsSyn
    happy_x_1 of { (HappyWrap190 List1 Declaration
    happy_var_1) ->
    	[Declaration] -> HappyAbsSyn
    happyIn191
    		 (List1 Declaration -> [Declaration]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Declaration
    happy_var_1
    	)}

    happyNewToken :: Int# -> Happy_IntList -> HappyStk HappyAbsSyn -> Parser HappyAbsSyn
    happyNewToken Int#
    action Happy_IntList
    sts HappyStk HappyAbsSyn
    stk
    	= (Token -> Parser HappyAbsSyn) -> Parser HappyAbsSyn
    forall a. (Token -> Parser a) -> Parser a
    lexer(\Token
    tk ->
    	let cont :: Int# -> Parser HappyAbsSyn
    cont Int#
    i = Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyDoAction Int#
    i Token
    tk Int#
    action Happy_IntList
    sts HappyStk HappyAbsSyn
    stk in
    	case Token
    tk of {
    	TokEOF{} -> Int#
    -> Token
    -> Int#
    -> Happy_IntList
    -> HappyStk HappyAbsSyn
    -> Parser HappyAbsSyn
    happyDoAction Int#
    101# Token
    tk Int#
    action Happy_IntList
    sts HappyStk HappyAbsSyn
    stk;
    	TokKeyword Keyword
    KwAbstract Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    1#;
    	TokKeyword Keyword
    KwCoData Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    2#;
    	TokKeyword Keyword
    KwCoInductive Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    3#;
    	TokKeyword Keyword
    KwConstructor Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    4#;
    	TokKeyword Keyword
    KwData Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    5#;
    	TokKeyword Keyword
    KwEta Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    6#;
    	TokKeyword Keyword
    KwField Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    7#;
    	TokKeyword Keyword
    KwForall Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    8#;
    	TokKeyword Keyword
    KwVariable Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    9#;
    	TokKeyword Keyword
    KwHiding Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    10#;
    	TokKeyword Keyword
    KwImport Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    11#;
    	TokKeyword Keyword
    KwIn Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    12#;
    	TokKeyword Keyword
    KwInductive Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    13#;
    	TokKeyword Keyword
    KwInfix Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    14#;
    	TokKeyword Keyword
    KwInfixL Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    15#;
    	TokKeyword Keyword
    KwInfixR Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    16#;
    	TokKeyword Keyword
    KwInstance Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    17#;
    	TokKeyword Keyword
    KwOverlap Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    18#;
    	TokKeyword Keyword
    KwLet Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    19#;
    	TokKeyword Keyword
    KwMacro Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    20#;
    	TokKeyword Keyword
    KwModule Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    21#;
    	TokKeyword Keyword
    KwInterleaved Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    22#;
    	TokKeyword Keyword
    KwMutual Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    23#;
    	TokKeyword Keyword
    KwNoEta Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    24#;
    	TokKeyword Keyword
    KwOpen Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    25#;
    	TokKeyword Keyword
    KwPatternSyn Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    26#;
    	TokKeyword Keyword
    KwPostulate Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    27#;
    	TokKeyword Keyword
    KwPrimitive Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    28#;
    	TokKeyword Keyword
    KwPrivate Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    29#;
    	TokKeyword Keyword
    KwPublic Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    30#;
    	TokKeyword Keyword
    KwQuote Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    31#;
    	TokKeyword Keyword
    KwQuoteTerm Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    32#;
    	TokKeyword Keyword
    KwRecord Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    33#;
    	TokKeyword Keyword
    KwRenaming Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    34#;
    	TokKeyword Keyword
    KwRewrite Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    35#;
    	TokKeyword Keyword
    KwSyntax Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    36#;
    	TokKeyword Keyword
    KwTactic Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    37#;
    	TokKeyword Keyword
    KwTo Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    38#;
    	TokKeyword Keyword
    KwUnquote Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    39#;
    	TokKeyword Keyword
    KwUnquoteDecl Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    40#;
    	TokKeyword Keyword
    KwUnquoteDef Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    41#;
    	TokKeyword Keyword
    KwUsing Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    42#;
    	TokKeyword Keyword
    KwWhere Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    43#;
    	TokKeyword Keyword
    KwDo Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    44#;
    	TokKeyword Keyword
    KwWith Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    45#;
    	TokKeyword Keyword
    KwBUILTIN Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    46#;
    	TokKeyword Keyword
    KwCATCHALL Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    47#;
    	TokKeyword Keyword
    KwDISPLAY Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    48#;
    	TokKeyword Keyword
    KwETA Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    49#;
    	TokKeyword Keyword
    KwFOREIGN Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    50#;
    	TokKeyword Keyword
    KwCOMPILE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    51#;
    	TokKeyword Keyword
    KwIMPOSSIBLE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    52#;
    	TokKeyword Keyword
    KwINJECTIVE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    53#;
    	TokKeyword Keyword
    KwINLINE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    54#;
    	TokKeyword Keyword
    KwNOINLINE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    55#;
    	TokKeyword Keyword
    KwMEASURE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    56#;
    	TokKeyword Keyword
    KwNO_TERMINATION_CHECK Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    57#;
    	TokKeyword Keyword
    KwNO_POSITIVITY_CHECK Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    58#;
    	TokKeyword Keyword
    KwNO_UNIVERSE_CHECK Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    59#;
    	TokKeyword Keyword
    KwNON_TERMINATING Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    60#;
    	TokKeyword Keyword
    KwNON_COVERING Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    61#;
    	TokKeyword Keyword
    KwOPTIONS Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    62#;
    	TokKeyword Keyword
    KwPOLARITY Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    63#;
    	TokKeyword Keyword
    KwWARNING_ON_USAGE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    64#;
    	TokKeyword Keyword
    KwWARNING_ON_IMPORT Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    65#;
    	TokKeyword Keyword
    KwREWRITE Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    66#;
    	TokKeyword Keyword
    KwSTATIC Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    67#;
    	TokKeyword Keyword
    KwTERMINATING Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    68#;
    	TokTeX (Interval, [Char])
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    69#;
    	TokComment (Interval, [Char])
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    70#;
    	TokSymbol Symbol
    SymEllipsis Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    71#;
    	TokSymbol Symbol
    SymDotDot Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    72#;
    	TokSymbol Symbol
    SymDot Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    73#;
    	TokSymbol Symbol
    SymSemi Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    74#;
    	TokSymbol Symbol
    SymColon Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    75#;
    	TokSymbol Symbol
    SymEqual Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    76#;
    	TokSymbol Symbol
    SymUnderscore Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    77#;
    	TokSymbol Symbol
    SymQuestionMark Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    78#;
    	TokSymbol Symbol
    SymArrow Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    79#;
    	TokSymbol Symbol
    SymLambda Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    80#;
    	TokSymbol Symbol
    SymAs Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    81#;
    	TokSymbol Symbol
    SymBar Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    82#;
    	TokSymbol Symbol
    SymOpenParen Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    83#;
    	TokSymbol Symbol
    SymCloseParen Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    84#;
    	TokSymbol Symbol
    SymOpenIdiomBracket Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    85#;
    	TokSymbol Symbol
    SymCloseIdiomBracket Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    86#;
    	TokSymbol Symbol
    SymEmptyIdiomBracket Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    87#;
    	TokSymbol Symbol
    SymDoubleOpenBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    88#;
    	TokSymbol Symbol
    SymDoubleCloseBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    89#;
    	TokSymbol Symbol
    SymOpenBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    90#;
    	TokSymbol Symbol
    SymCloseBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    91#;
    	TokSymbol Symbol
    SymOpenVirtualBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    92#;
    	TokSymbol Symbol
    SymCloseVirtualBrace Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    93#;
    	TokSymbol Symbol
    SymVirtualSemi Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    94#;
    	TokSymbol Symbol
    SymOpenPragma Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    95#;
    	TokSymbol Symbol
    SymClosePragma Interval
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    96#;
    	TokId (Interval, [Char])
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    97#;
    	TokQId [(Interval, [Char])]
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    98#;
    	TokString (Interval, [Char])
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    99#;
    	TokLiteral RLiteral
    happy_dollar_dollar -> Int# -> Parser HappyAbsSyn
    cont Int#
    100#;
    	Token
    _ -> (Token, [[Char]]) -> Parser HappyAbsSyn
    forall a. (Token, [[Char]]) -> Parser a
    happyError' (Token
    tk, [])
    	})

    happyError_ :: [[Char]] -> Int# -> Token -> Parser a
    happyError_ [[Char]]
    explist Int#
    101# Token
    tk = (Token, [[Char]]) -> Parser a
    forall a. (Token, [[Char]]) -> Parser a
    happyError' (Token
    tk, [[Char]]
    explist)
    happyError_ [[Char]]
    explist Int#
    _ Token
    tk = (Token, [[Char]]) -> Parser a
    forall a. (Token, [[Char]]) -> Parser a
    happyError' (Token
    tk, [[Char]]
    explist)

    happyThen :: () => Parser a -> (a -> Parser b) -> Parser b
    happyThen :: forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen = Parser a -> (a -> Parser b) -> Parser b
    forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
    (Prelude.>>=)
    happyReturn :: () => a -> Parser a
    happyReturn :: forall a. a -> Parser a
    happyReturn = (a -> Parser a
    forall (m :: * -> *) a. Monad m => a -> m a
    Prelude.return)
    happyParse :: () => Happy_GHC_Exts.Int# -> Parser (HappyAbsSyn )

    happyNewToken :: () => Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )

    happyDoAction :: () => Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn )

    happyReduceArr :: () => Happy_Data_Array.Array Prelude.Int (Happy_GHC_Exts.Int# -> Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> Parser (HappyAbsSyn ))

    happyThen1 :: () => Parser a -> (a -> Parser b) -> Parser b
    happyThen1 :: forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen1 = Parser a -> (a -> Parser b) -> Parser b
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen
    happyReturn1 :: () => a -> Parser a
    happyReturn1 :: forall a. a -> Parser a
    happyReturn1 = a -> Parser a
    forall a. a -> Parser a
    happyReturn
    happyError' :: () => ((Token), [Prelude.String]) -> Parser a
    happyError' :: forall a. (Token, [[Char]]) -> Parser a
    happyError' (Token, [[Char]])
    tk = (\(Token
    tokens, [[Char]]
    explist) -> Parser a
    forall a. Parser a
    happyError) (Token, [[Char]])
    tk
    tokensParser :: Parser [Token]
    tokensParser = Parser [Token]
    happySomeParser where
     happySomeParser :: Parser [Token]
    happySomeParser = Parser HappyAbsSyn
    -> (HappyAbsSyn -> Parser [Token]) -> Parser [Token]
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    0#) (\HappyAbsSyn
    x -> [Token] -> Parser [Token]
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap10 [Token]
    x') = HappyAbsSyn -> HappyWrap10
    happyOut10 HappyAbsSyn
    x} in [Token]
    x'))

    exprParser :: Parser Expr
    exprParser = Parser Expr
    happySomeParser where
     happySomeParser :: Parser Expr
    happySomeParser = Parser HappyAbsSyn -> (HappyAbsSyn -> Parser Expr) -> Parser Expr
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    1#) (\HappyAbsSyn
    x -> Expr -> Parser Expr
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap42 Expr
    x') = HappyAbsSyn -> HappyWrap42
    happyOut42 HappyAbsSyn
    x} in Expr
    x'))

    exprWhereParser :: Parser ExprWhere
    exprWhereParser = Parser ExprWhere
    happySomeParser where
     happySomeParser :: Parser ExprWhere
    happySomeParser = Parser HappyAbsSyn
    -> (HappyAbsSyn -> Parser ExprWhere) -> Parser ExprWhere
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    2#) (\HappyAbsSyn
    x -> ExprWhere -> Parser ExprWhere
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap107 ExprWhere
    x') = HappyAbsSyn -> HappyWrap107
    happyOut107 HappyAbsSyn
    x} in ExprWhere
    x'))

    moduleParser :: Parser Module
    moduleParser = Parser Module
    happySomeParser where
     happySomeParser :: Parser Module
    happySomeParser = Parser HappyAbsSyn
    -> (HappyAbsSyn -> Parser Module) -> Parser Module
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    3#) (\HappyAbsSyn
    x -> Module -> Parser Module
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap13 Module
    x') = HappyAbsSyn -> HappyWrap13
    happyOut13 HappyAbsSyn
    x} in Module
    x'))

    moduleNameParser :: Parser QName
    moduleNameParser = Parser QName
    happySomeParser where
     happySomeParser :: Parser QName
    happySomeParser = Parser HappyAbsSyn -> (HappyAbsSyn -> Parser QName) -> Parser QName
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    4#) (\HappyAbsSyn
    x -> QName -> Parser QName
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap30 QName
    x') = HappyAbsSyn -> HappyWrap30
    happyOut30 HappyAbsSyn
    x} in QName
    x'))

    funclauseParser :: Parser (List1 Declaration)
    funclauseParser = Parser (List1 Declaration)
    happySomeParser where
     happySomeParser :: Parser (List1 Declaration)
    happySomeParser = Parser HappyAbsSyn
    -> (HappyAbsSyn -> Parser (List1 Declaration))
    -> Parser (List1 Declaration)
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    5#) (\HappyAbsSyn
    x -> List1 Declaration -> Parser (List1 Declaration)
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap111 List1 Declaration
    x') = HappyAbsSyn -> HappyWrap111
    happyOut111 HappyAbsSyn
    x} in List1 Declaration
    x'))

    holeContentParser :: Parser HoleContent
    holeContentParser = Parser HoleContent
    happySomeParser where
     happySomeParser :: Parser HoleContent
    happySomeParser = Parser HappyAbsSyn
    -> (HappyAbsSyn -> Parser HoleContent) -> Parser HoleContent
    forall a b. Parser a -> (a -> Parser b) -> Parser b
    happyThen (Int# -> Parser HappyAbsSyn
    happyParse Int#
    6#) (\HappyAbsSyn
    x -> HoleContent -> Parser HoleContent
    forall a. a -> Parser a
    happyReturn (let {(HappyWrap105 HoleContent
    x') = HappyAbsSyn -> HappyWrap105
    happyOut105 HappyAbsSyn
    x} in HoleContent
    x'))

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

    {--------------------------------------------------------------------------
        Parsers
     --------------------------------------------------------------------------}

    -- | Parse the token stream. Used by the TeX compiler.
    tokensParser :: Parser [Token]

    -- | Parse an expression. Could be used in interactions.
    exprParser :: Parser Expr

    -- | Parse an expression followed by a where clause. Could be used in interactions.
    exprWhereParser :: Parser ExprWhere

    -- | Parse a module.
    moduleParser :: Parser Module

    {--------------------------------------------------------------------------
        Happy stuff
     --------------------------------------------------------------------------}

    -- | Required by Happy.
    happyError :: Parser a
    happyError :: forall a. Parser a
    happyError = [Char] -> Parser a
    forall a. [Char] -> Parser a
    parseError [Char]
    "Parse error"

    {--------------------------------------------------------------------------
        Utility functions
     --------------------------------------------------------------------------}

    -- | Grab leading OPTIONS pragmas.
    takeOptionsPragmas :: [Declaration] -> Module
    takeOptionsPragmas :: [Declaration] -> Module
    takeOptionsPragmas = ([Pragma] -> [Declaration] -> Module)
    -> ([Pragma], [Declaration]) -> Module
    forall a b c. (a -> b -> c) -> (a, b) -> c
    uncurry [Pragma] -> [Declaration] -> Module
    Mod (([Pragma], [Declaration]) -> Module)
    -> ([Declaration] -> ([Pragma], [Declaration]))
    -> [Declaration]
    -> Module
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Declaration -> Maybe Pragma)
    -> [Declaration] -> ([Pragma], [Declaration])
    forall a b. (a -> Maybe b) -> [a] -> (Prefix b, [a])
    spanJust (\ Declaration
    d -> case Declaration
    d of
      Pragma p :: Pragma
    p@OptionsPragma{} -> Pragma -> Maybe Pragma
    forall a. a -> Maybe a
    Just Pragma
    p
      Declaration
    _                        -> Maybe Pragma
    forall a. Maybe a
    Nothing)

    -- | Insert a top-level module if there is none.
    --   Also fix-up for the case the declarations in the top-level module
    --   are not indented (this is allowed as a special case).
    figureOutTopLevelModule :: [Declaration] -> [Declaration]
    figureOutTopLevelModule :: [Declaration] -> [Declaration]
    figureOutTopLevelModule [Declaration]
    ds =
      case [Declaration] -> ([Declaration], [Declaration])
    spanAllowedBeforeModule [Declaration]
    ds of
        -- Andreas 2016-02-01, issue #1388.
        -- We need to distinguish two additional cases.

        -- Case 1: Regular file layout: imports followed by one module. Nothing to do.
        ([Declaration]
    ds0, [ Module{} ]) -> [Declaration]
    ds

        -- Case 2: The declarations in the module are not indented.
        -- This is allowed for the top level module, and thus rectified here.
        ([Declaration]
    ds0, Module Range
    r QName
    m Telescope
    tel [] : [Declaration]
    ds2) -> [Declaration]
    ds0 [Declaration] -> [Declaration] -> [Declaration]
    forall a. [a] -> [a] -> [a]
    ++ [Range -> QName -> Telescope -> [Declaration] -> Declaration
    Module Range
    r QName
    m Telescope
    tel [Declaration]
    ds2]

        -- Case 3: There is a module with indented declarations,
        -- followed by non-indented declarations.  This should be a
        -- parse error and be reported later (see @toAbstract TopLevel{}@),
        -- thus, we do not do anything here.
        ([Declaration]
    ds0, Module Range
    r QName
    m Telescope
    tel [Declaration]
    ds1 : [Declaration]
    ds2) -> [Declaration]
    ds  -- Gives parse error in scope checker.
        -- OLD code causing issue 1388:
        -- (ds0, Module r m tel ds1 : ds2) -> ds0 ++ [Module r m tel $ ds1 ++ ds2]

        -- Case 4: a top-level module declaration is missing.
        -- Andreas, 2017-01-01, issue #2229:
        -- Put everything (except OPTIONS pragmas) into an anonymous module.
        ([Declaration], [Declaration])
    _ -> [Declaration]
    ds0 [Declaration] -> [Declaration] -> [Declaration]
    forall a. [a] -> [a] -> [a]
    ++ [Range -> QName -> Telescope -> [Declaration] -> Declaration
    Module Range
    r (Name -> QName
    QName (Name -> QName) -> Name -> QName
    forall a b. (a -> b) -> a -> b
    $ Range -> Name
    noName Range
    r) [] [Declaration]
    ds1]
          where
          ([Declaration]
    ds0, [Declaration]
    ds1) = ((Declaration -> Bool)
    -> [Declaration] -> ([Declaration], [Declaration])
    forall a. (a -> Bool) -> [a] -> ([a], [a])
    `span` [Declaration]
    ds) ((Declaration -> Bool) -> ([Declaration], [Declaration]))
    -> (Declaration -> Bool) -> ([Declaration], [Declaration])
    forall a b. (a -> b) -> a -> b
    $ \case
            Pragma OptionsPragma{} -> Bool
    True
            Declaration
    _ -> Bool
    False
          -- Andreas, 2017-05-17, issue #2574.
          -- Since the module noName will act as jump target, it needs a range.
          -- We use the beginning of the file as beginning of the top level module.
          r :: Range
    r = Range -> Range
    beginningOfFile (Range -> Range) -> Range -> Range
    forall a b. (a -> b) -> a -> b
    $ [Declaration] -> Range
    forall a. HasRange a => a -> Range
    getRange [Declaration]
    ds1

    -- | Create a name from a string.

    mkName :: (Interval, String) -> Parser Name
    mkName :: (Interval, [Char]) -> Parser Name
    mkName (Interval
    i, [Char]
    s) = do
        let xs :: NonEmpty NamePart
    xs = [Char] -> NonEmpty NamePart
    C.stringNameParts [Char]
    s
        (NamePart -> Parser ()) -> NonEmpty NamePart -> Parser ()
    forall (t :: * -> *) (m :: * -> *) a b.
    (Foldable t, Monad m) =>
    (a -> m b) -> t a -> m ()
    mapM_ NamePart -> Parser ()
    isValidId NonEmpty NamePart
    xs
        Bool -> Parser () -> Parser ()
    forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
    unless (NonEmpty NamePart -> Bool
    alternating NonEmpty NamePart
    xs) (Parser () -> Parser ()) -> Parser () -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ [Char] -> Parser ()
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser ()) -> [Char] -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "a name cannot contain two consecutive underscores"
        Name -> Parser Name
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Name -> Parser Name) -> Name -> Parser Name
    forall a b. (a -> b) -> a -> b
    $ Range -> NameInScope -> NonEmpty NamePart -> Name
    Name (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    i) NameInScope
    InScope NonEmpty NamePart
    xs
        where
            isValidId :: NamePart -> Parser ()
    isValidId NamePart
    Hole   = () -> Parser ()
    forall (m :: * -> *) a. Monad m => a -> m a
    return ()
            isValidId (Id [Char]
    y) = do
              let x :: [Char]
    x = [Char] -> [Char]
    rawNameToString [Char]
    y
                  err :: [Char]
    err = [Char]
    "in the name " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    ", the part " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    x [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    " is not valid"
              case ParseFlags -> [Int] -> Parser Token -> [Char] -> ParseResult Token
    forall a.
    ParseFlags -> [Int] -> Parser a -> [Char] -> ParseResult a
    parse ParseFlags
    defaultParseFlags [Int
    0] ((Token -> Parser Token) -> Parser Token
    forall a. (Token -> Parser a) -> Parser a
    lexer Token -> Parser Token
    forall (m :: * -> *) a. Monad m => a -> m a
    return) [Char]
    x of
                ParseOk ParseState
    _ TokId{}  -> () -> Parser ()
    forall (m :: * -> *) a. Monad m => a -> m a
    return ()
                ParseFailed{}      -> [Char] -> Parser ()
    forall a. [Char] -> Parser a
    parseError [Char]
    err
                ParseOk ParseState
    _ TokEOF{} -> [Char] -> Parser ()
    forall a. [Char] -> Parser a
    parseError [Char]
    err
                ParseOk ParseState
    _ Token
    t   -> [Char] -> Parser ()
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser ()) -> ([Char] -> [Char]) -> [Char] -> Parser ()
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (([Char]
    err [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    " because it is ") [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++) ([Char] -> Parser ()) -> [Char] -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ case Token
    t of
                  TokId{}       -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                  TokQId{}      -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__ -- "qualified"
                  TokKeyword{}  -> [Char]
    "a keyword"
                  TokLiteral{}  -> [Char]
    "a literal"
                  TokSymbol Symbol
    s Interval
    _ -> case Symbol
    s of
                    Symbol
    SymDot               -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__ -- "reserved"
                    Symbol
    SymSemi              -> [Char]
    "used to separate declarations"
                    Symbol
    SymVirtualSemi       -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                    Symbol
    SymBar               -> [Char]
    "used for with-arguments"
                    Symbol
    SymColon             -> [Char]
    "part of declaration syntax"
                    Symbol
    SymArrow             -> [Char]
    "the function arrow"
                    Symbol
    SymEqual             -> [Char]
    "part of declaration syntax"
                    Symbol
    SymLambda            -> [Char]
    "used for lambda-abstraction"
                    Symbol
    SymUnderscore        -> [Char]
    "used for anonymous identifiers"
                    Symbol
    SymQuestionMark      -> [Char]
    "a meta variable"
                    Symbol
    SymAs                -> [Char]
    "used for as-patterns"
                    Symbol
    SymOpenParen         -> [Char]
    "used to parenthesize expressions"
                    Symbol
    SymCloseParen        -> [Char]
    "used to parenthesize expressions"
                    Symbol
    SymOpenIdiomBracket  -> [Char]
    "an idiom bracket"
                    Symbol
    SymCloseIdiomBracket -> [Char]
    "an idiom bracket"
                    Symbol
    SymDoubleOpenBrace   -> [Char]
    "used for instance arguments"
                    Symbol
    SymDoubleCloseBrace  -> [Char]
    "used for instance arguments"
                    Symbol
    SymOpenBrace         -> [Char]
    "used for hidden arguments"
                    Symbol
    SymCloseBrace        -> [Char]
    "used for hidden arguments"
                    Symbol
    SymOpenVirtualBrace  -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                    Symbol
    SymCloseVirtualBrace -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                    Symbol
    SymOpenPragma        -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__ -- "used for pragmas"
                    Symbol
    SymClosePragma       -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__ -- "used for pragmas"
                    Symbol
    SymEllipsis          -> [Char]
    "used for function clauses"
                    Symbol
    SymDotDot            -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__ -- "a modality"
                    Symbol
    SymEndComment        -> [Char]
    "the end-of-comment brace"
                  TokString{}   -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                  TokTeX{}      -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__  -- used by the LaTeX backend only
                  TokMarkup{}   -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__  -- ditto
                  TokComment{}  -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                  TokDummy{}    -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__
                  TokEOF{}      -> [Char]
    forall a. HasCallStack => a
    __IMPOSSIBLE__

            -- we know that there are no two Ids in a row
            alternating :: NonEmpty NamePart -> Bool
    alternating (NamePart
    Hole :| NamePart
    Hole : [NamePart]
    _) = Bool
    False
            alternating (NamePart
    _    :| NamePart
    x   : [NamePart]
    xs) = NonEmpty NamePart -> Bool
    alternating (NonEmpty NamePart -> Bool) -> NonEmpty NamePart -> Bool
    forall a b. (a -> b) -> a -> b
    $ NamePart
    x NamePart -> [NamePart] -> NonEmpty NamePart
    forall a. a -> [a] -> NonEmpty a
    :| [NamePart]
    xs
            alternating (NamePart
    _    :|       []) = Bool
    True

    -- | Create a qualified name from a list of strings
    mkQName :: [(Interval, String)] -> Parser QName
    mkQName :: [(Interval, [Char])] -> Parser QName
    mkQName [(Interval, [Char])]
    ss = do
        [Name]
    xs <- ((Interval, [Char]) -> Parser Name)
    -> [(Interval, [Char])] -> Parser [Name]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM (Interval, [Char]) -> Parser Name
    mkName [(Interval, [Char])]
    ss
        QName -> Parser QName
    forall (m :: * -> *) a. Monad m => a -> m a
    return (QName -> Parser QName) -> QName -> Parser QName
    forall a b. (a -> b) -> a -> b
    $ (Name -> QName -> QName) -> QName -> [Name] -> QName
    forall (t :: * -> *) a b.
    Foldable t =>
    (a -> b -> b) -> b -> t a -> b
    foldr Name -> QName -> QName
    Qual (Name -> QName
    QName (Name -> QName) -> Name -> QName
    forall a b. (a -> b) -> a -> b
    $ [Name] -> Name
    forall a. [a] -> a
    last [Name]
    xs) ([Name] -> [Name]
    forall a. [a] -> [a]
    init [Name]
    xs)

    mkDomainFree_ :: (NamedArg Binder -> NamedArg Binder) -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ :: (NamedArg Binder -> NamedArg Binder)
    -> Maybe Pattern -> Name -> NamedArg Binder
    mkDomainFree_ NamedArg Binder -> NamedArg Binder
    f Maybe Pattern
    p Name
    n = NamedArg Binder -> NamedArg Binder
    f (NamedArg Binder -> NamedArg Binder)
    -> NamedArg Binder -> NamedArg Binder
    forall a b. (a -> b) -> a -> b
    $ Binder -> NamedArg Binder
    forall a. a -> NamedArg a
    defaultNamedArg (Binder -> NamedArg Binder) -> Binder -> NamedArg Binder
    forall a b. (a -> b) -> a -> b
    $ Maybe Pattern -> BoundName -> Binder
    forall a. Maybe Pattern -> a -> Binder' a
    Binder Maybe Pattern
    p (BoundName -> Binder) -> BoundName -> Binder
    forall a b. (a -> b) -> a -> b
    $ Name -> BoundName
    mkBoundName_ Name
    n

    mkRString :: (Interval, String) -> RString
    mkRString :: (Interval, [Char]) -> RString
    mkRString (Interval
    i, [Char]
    s) = Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    i) [Char]
    s

    -- | Create a qualified name from a string (used in pragmas).
    --   Range of each name component is range of whole string.
    --   TODO: precise ranges!

    pragmaQName :: (Interval, String) -> Parser QName
    pragmaQName :: (Interval, [Char]) -> Parser QName
    pragmaQName (Interval
    r, [Char]
    s) = do
      let ss :: [[Char]]
    ss = (Char -> Bool) -> [Char] -> [[Char]]
    forall a. (a -> Bool) -> [a] -> [[a]]
    chopWhen (Char -> Char -> Bool
    forall a. Eq a => a -> a -> Bool
    == Char
    '.') [Char]
    s
      [(Interval, [Char])] -> Parser QName
    mkQName ([(Interval, [Char])] -> Parser QName)
    -> [(Interval, [Char])] -> Parser QName
    forall a b. (a -> b) -> a -> b
    $ ([Char] -> (Interval, [Char])) -> [[Char]] -> [(Interval, [Char])]
    forall a b. (a -> b) -> [a] -> [b]
    map (Interval
    r,) [[Char]]
    ss

    mkNamedArg :: Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg :: Maybe QName -> Either QName Range -> Parser (NamedArg BoundName)
    mkNamedArg Maybe QName
    x Either QName Range
    y = do
      Maybe NamedName
    lbl <- case Maybe QName
    x of
               Maybe QName
    Nothing        -> Maybe NamedName -> Parser (Maybe NamedName)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Maybe NamedName -> Parser (Maybe NamedName))
    -> Maybe NamedName -> Parser (Maybe NamedName)
    forall a b. (a -> b) -> a -> b
    $ NamedName -> Maybe NamedName
    forall a. a -> Maybe a
    Just (NamedName -> Maybe NamedName) -> NamedName -> Maybe NamedName
    forall a b. (a -> b) -> a -> b
    $ Origin -> RString -> NamedName
    forall a. Origin -> a -> WithOrigin a
    WithOrigin Origin
    UserWritten (RString -> NamedName) -> RString -> NamedName
    forall a b. (a -> b) -> a -> b
    $ [Char] -> RString
    forall a. a -> Ranged a
    unranged [Char]
    "_"
               Just (QName Name
    x) -> Maybe NamedName -> Parser (Maybe NamedName)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Maybe NamedName -> Parser (Maybe NamedName))
    -> Maybe NamedName -> Parser (Maybe NamedName)
    forall a b. (a -> b) -> a -> b
    $ NamedName -> Maybe NamedName
    forall a. a -> Maybe a
    Just (NamedName -> Maybe NamedName) -> NamedName -> Maybe NamedName
    forall a b. (a -> b) -> a -> b
    $ Origin -> RString -> NamedName
    forall a. Origin -> a -> WithOrigin a
    WithOrigin Origin
    UserWritten (RString -> NamedName) -> RString -> NamedName
    forall a b. (a -> b) -> a -> b
    $ Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Name -> Range
    forall a. HasRange a => a -> Range
    getRange Name
    x) ([Char] -> RString) -> [Char] -> RString
    forall a b. (a -> b) -> a -> b
    $ Name -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Name
    x
               Maybe QName
    _              -> [Char] -> Parser (Maybe NamedName)
    forall a. [Char] -> Parser a
    parseError [Char]
    "expected unqualified variable name"
      BoundName
    var <- case Either QName Range
    y of
               Left (QName Name
    y) -> BoundName -> Parser BoundName
    forall (m :: * -> *) a. Monad m => a -> m a
    return (BoundName -> Parser BoundName) -> BoundName -> Parser BoundName
    forall a b. (a -> b) -> a -> b
    $ Name -> Fixity' -> BoundName
    mkBoundName Name
    y Fixity'
    noFixity'
               Right Range
    r        -> BoundName -> Parser BoundName
    forall (m :: * -> *) a. Monad m => a -> m a
    return (BoundName -> Parser BoundName) -> BoundName -> Parser BoundName
    forall a b. (a -> b) -> a -> b
    $ Name -> Fixity' -> BoundName
    mkBoundName (Range -> Name
    noName Range
    r) Fixity'
    noFixity'
               Either QName Range
    _              -> [Char] -> Parser BoundName
    forall a. [Char] -> Parser a
    parseError [Char]
    "expected unqualified variable name"
      NamedArg BoundName -> Parser (NamedArg BoundName)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (NamedArg BoundName -> Parser (NamedArg BoundName))
    -> NamedArg BoundName -> Parser (NamedArg BoundName)
    forall a b. (a -> b) -> a -> b
    $ Named NamedName BoundName -> NamedArg BoundName
    forall a. a -> Arg a
    defaultArg (Named NamedName BoundName -> NamedArg BoundName)
    -> Named NamedName BoundName -> NamedArg BoundName
    forall a b. (a -> b) -> a -> b
    $ Maybe NamedName -> BoundName -> Named NamedName BoundName
    forall name a. Maybe name -> a -> Named name a
    Named Maybe NamedName
    lbl BoundName
    var

    -- | Polarity parser.

    polarity :: (Interval, String) -> Parser (Range, Occurrence)
    polarity :: (Interval, [Char]) -> Parser (Range, Occurrence)
    polarity (Interval
    i, [Char]
    s) =
      case [Char]
    s of
        [Char]
    "_"  -> Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    Unused
        [Char]
    "++" -> Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    StrictPos
        [Char]
    "+"  -> Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    JustPos
        [Char]
    "-"  -> Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    JustNeg
        [Char]
    "*"  -> Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    Mixed
        [Char]
    _    -> [Char] -> Parser (Range, Occurrence)
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser (Range, Occurrence))
    -> [Char] -> Parser (Range, Occurrence)
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Not a valid polarity: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s
      where
      ret :: Occurrence -> Parser (Range, Occurrence)
    ret Occurrence
    x = (Range, Occurrence) -> Parser (Range, Occurrence)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Interval -> Range
    forall a. HasRange a => a -> Range
    getRange Interval
    i, Occurrence
    x)

    recoverLayout :: [(Interval, String)] -> String
    recoverLayout :: [(Interval, [Char])] -> [Char]
    recoverLayout [] = [Char]
    ""
    recoverLayout xs :: [(Interval, [Char])]
    xs@((Interval
    i, [Char]
    _) : [(Interval, [Char])]
    _) = Position -> [(Interval, [Char])] -> [Char]
    go (Interval -> Position
    forall a. Interval' a -> Position' a
    iStart Interval
    i) [(Interval, [Char])]
    xs
      where
        c0 :: Int32
    c0 = Position -> Int32
    forall a. Position' a -> Int32
    posCol (Interval -> Position
    forall a. Interval' a -> Position' a
    iStart Interval
    i)

        go :: Position -> [(Interval, [Char])] -> [Char]
    go Position
    cur [] = [Char]
    ""
        go Position
    cur ((Interval
    i, [Char]
    s) : [(Interval, [Char])]
    xs) = Position -> Position -> [Char]
    padding Position
    cur (Interval -> Position
    forall a. Interval' a -> Position' a
    iStart Interval
    i) [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Position -> [(Interval, [Char])] -> [Char]
    go (Interval -> Position
    forall a. Interval' a -> Position' a
    iEnd Interval
    i) [(Interval, [Char])]
    xs

        padding :: Position -> Position -> [Char]
    padding Pn{ posLine :: forall a. Position' a -> Int32
    posLine = Int32
    l1, posCol :: forall a. Position' a -> Int32
    posCol = Int32
    c1 } Pn{ posLine :: forall a. Position' a -> Int32
    posLine = Int32
    l2, posCol :: forall a. Position' a -> Int32
    posCol = Int32
    c2 }
          | Int32
    l1 Int32 -> Int32 -> Bool
    forall a. Ord a => a -> a -> Bool
    < Int32
    l2  = Int32 -> Char -> [Char]
    forall i a. Integral i => i -> a -> [a]
    List.genericReplicate (Int32
    l2 Int32 -> Int32 -> Int32
    forall a. Num a => a -> a -> a
    - Int32
    l1) Char
    '\n' [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Int32 -> Char -> [Char]
    forall i a. Integral i => i -> a -> [a]
    List.genericReplicate (Int32 -> Int32 -> Int32
    forall a. Ord a => a -> a -> a
    max Int32
    0 (Int32
    c2 Int32 -> Int32 -> Int32
    forall a. Num a => a -> a -> a
    - Int32
    c0)) Char
    ' '
          | Int32
    l1 Int32 -> Int32 -> Bool
    forall a. Eq a => a -> a -> Bool
    == Int32
    l2 = Int32 -> Char -> [Char]
    forall i a. Integral i => i -> a -> [a]
    List.genericReplicate (Int32
    c2 Int32 -> Int32 -> Int32
    forall a. Num a => a -> a -> a
    - Int32
    c1) Char
    ' '

    ensureUnqual :: QName -> Parser Name
    ensureUnqual :: QName -> Parser Name
    ensureUnqual (QName Name
    x) = Name -> Parser Name
    forall (m :: * -> *) a. Monad m => a -> m a
    return Name
    x
    ensureUnqual q :: QName
    q@Qual{}  = Maybe (Position' ()) -> [Char] -> Parser Name
    forall a. Maybe (Position' ()) -> [Char] -> Parser a
    parseError' (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Range -> Maybe (Position' ())) -> Range -> Maybe (Position' ())
    forall a b. (a -> b) -> a -> b
    $ QName -> Range
    forall a. HasRange a => a -> Range
    getRange QName
    q) [Char]
    "Qualified name not allowed here"

    -- | Match a particular name.
    isName :: String -> (Interval, String) -> Parser ()
    isName :: [Char] -> (Interval, [Char]) -> Parser ()
    isName [Char]
    s (Interval
    _,[Char]
    s')
        | [Char]
    s [Char] -> [Char] -> Bool
    forall a. Eq a => a -> a -> Bool
    == [Char]
    s'   = () -> Parser ()
    forall (m :: * -> *) a. Monad m => a -> m a
    return ()
        | Bool
    otherwise = [Char] -> Parser ()
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser ()) -> [Char] -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "expected " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    ", found " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s'

    -- Lambinds

    -- | Result of parsing @LamBinds@.
    data LamBinds' a = LamBinds
      { forall a. LamBinds' a -> a
    lamBindings   :: a             -- ^ A number of domain-free or typed bindings or record patterns.
      , forall a. LamBinds' a -> Maybe Hiding
    absurdBinding :: Maybe Hiding  -- ^ Followed by possibly a final absurd pattern.
      } deriving ((forall a b. (a -> b) -> LamBinds' a -> LamBinds' b)
    -> (forall a b. a -> LamBinds' b -> LamBinds' a)
    -> Functor LamBinds'
    forall a b. a -> LamBinds' b -> LamBinds' a
    forall a b. (a -> b) -> LamBinds' a -> LamBinds' b
    forall (f :: * -> *).
    (forall a b. (a -> b) -> f a -> f b)
    -> (forall a b. a -> f b -> f a) -> Functor f
    <$ :: forall a b. a -> LamBinds' b -> LamBinds' a
    $c<$ :: forall a b. a -> LamBinds' b -> LamBinds' a
    fmap :: forall a b. (a -> b) -> LamBinds' a -> LamBinds' b
    $cfmap :: forall a b. (a -> b) -> LamBinds' a -> LamBinds' b
    Functor)
    type LamBinds = LamBinds' [LamBinding]

    mkAbsurdBinding :: Hiding -> LamBinds
    mkAbsurdBinding :: Hiding -> LamBinds
    mkAbsurdBinding = [LamBinding] -> Maybe Hiding -> LamBinds
    forall a. a -> Maybe Hiding -> LamBinds' a
    LamBinds [] (Maybe Hiding -> LamBinds)
    -> (Hiding -> Maybe Hiding) -> Hiding -> LamBinds
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Hiding -> Maybe Hiding
    forall a. a -> Maybe a
    Just

    mkLamBinds :: a -> LamBinds' a
    mkLamBinds :: forall a. a -> LamBinds' a
    mkLamBinds a
    bs = a -> Maybe Hiding -> LamBinds' a
    forall a. a -> Maybe Hiding -> LamBinds' a
    LamBinds a
    bs Maybe Hiding
    forall a. Maybe a
    Nothing

    -- | Build a forall pi (forall x y z -> ...)
    forallPi :: List1 LamBinding -> Expr -> Expr
    forallPi :: List1 LamBinding -> Expr -> Expr
    forallPi List1 LamBinding
    bs Expr
    e = Telescope1 -> Expr -> Expr
    Pi ((LamBinding -> TypedBinding) -> List1 LamBinding -> Telescope1
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap LamBinding -> TypedBinding
    addType List1 LamBinding
    bs) Expr
    e

    -- | Converts lambda bindings to typed bindings.
    addType :: LamBinding -> TypedBinding
    addType :: LamBinding -> TypedBinding
    addType (DomainFull TypedBinding
    b) = TypedBinding
    b
    addType (DomainFree NamedArg Binder
    x) = Range -> List1 (NamedArg Binder) -> Expr -> TypedBinding
    forall e. Range -> List1 (NamedArg Binder) -> e -> TypedBinding' e
    TBind Range
    r (NamedArg Binder -> List1 (NamedArg Binder)
    forall el coll. Singleton el coll => el -> coll
    singleton NamedArg Binder
    x) (Expr -> TypedBinding) -> Expr -> TypedBinding
    forall a b. (a -> b) -> a -> b
    $ Range -> Maybe [Char] -> Expr
    Underscore Range
    r Maybe [Char]
    forall a. Maybe a
    Nothing
      where r :: Range
    r = NamedArg Binder -> Range
    forall a. HasRange a => a -> Range
    getRange NamedArg Binder
    x

    -- | Returns the value of the first erasure attribute, if any, or else
    -- the default value of type 'Erased'.
    --
    -- Raises warnings for all attributes except for erasure attributes,
    -- and for multiple erasure attributes.

    onlyErased
      :: [Attr]  -- ^ The attributes, in reverse order.
      -> Parser Erased
    onlyErased :: [Attr] -> Parser Erased
    onlyErased [Attr]
    as = do
      [Erased]
    es <- [Maybe Erased] -> [Erased]
    forall a. [Maybe a] -> [a]
    catMaybes ([Maybe Erased] -> [Erased])
    -> Parser [Maybe Erased] -> Parser [Erased]
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> (Attr -> Parser (Maybe Erased)) -> [Attr] -> Parser [Maybe Erased]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Attr -> Parser (Maybe Erased)
    onlyErased' ([Attr] -> [Attr]
    forall a. [a] -> [a]
    reverse [Attr]
    as)
      case [Erased]
    es of
        []     -> Erased -> Parser Erased
    forall (m :: * -> *) a. Monad m => a -> m a
    return Erased
    defaultErased
        [Erased
    e]    -> Erased -> Parser Erased
    forall (m :: * -> *) a. Monad m => a -> m a
    return Erased
    e
        Erased
    e : [Erased]
    es -> do
          ParseWarning -> Parser ()
    parseWarning (ParseWarning -> Parser ()) -> ParseWarning -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ Range -> Maybe [Char] -> ParseWarning
    MultipleAttributes ([Erased] -> Range
    forall a. HasRange a => a -> Range
    getRange [Erased]
    es) ([Char] -> Maybe [Char]
    forall a. a -> Maybe a
    Just [Char]
    "erasure")
          Erased -> Parser Erased
    forall (m :: * -> *) a. Monad m => a -> m a
    return Erased
    e
      where
      onlyErased' :: Attr -> Parser (Maybe Erased)
    onlyErased' Attr
    a = case Attr -> Attribute
    theAttr Attr
    a of
        RelevanceAttribute{} -> [Char] -> Parser (Maybe Erased)
    unsup [Char]
    "Relevance"
        CohesionAttribute{}  -> [Char] -> Parser (Maybe Erased)
    unsup [Char]
    "Cohesion"
        LockAttribute{}      -> [Char] -> Parser (Maybe Erased)
    unsup [Char]
    "Lock"
        TacticAttribute{}    -> [Char] -> Parser (Maybe Erased)
    unsup [Char]
    "Tactic"
        QuantityAttribute Quantity
    q  -> Parser (Maybe Erased)
    -> (Erased -> Parser (Maybe Erased))
    -> Maybe Erased
    -> Parser (Maybe Erased)
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe ([Char] -> Parser (Maybe Erased)
    unsup [Char]
    "Linearity") (Maybe Erased -> Parser (Maybe Erased)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Maybe Erased -> Parser (Maybe Erased))
    -> (Erased -> Maybe Erased) -> Erased -> Parser (Maybe Erased)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Erased -> Maybe Erased
    forall a. a -> Maybe a
    Just) (Maybe Erased -> Parser (Maybe Erased))
    -> Maybe Erased -> Parser (Maybe Erased)
    forall a b. (a -> b) -> a -> b
    $ Quantity -> Maybe Erased
    erasedFromQuantity Quantity
    q
        where
        unsup :: [Char] -> Parser (Maybe Erased)
    unsup [Char]
    s = do
          ParseWarning -> Parser ()
    parseWarning (ParseWarning -> Parser ()) -> ParseWarning -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ Range -> Maybe [Char] -> ParseWarning
    UnsupportedAttribute (Attr -> Range
    attrRange Attr
    a) ([Char] -> Maybe [Char]
    forall a. a -> Maybe a
    Just [Char]
    s)
          Maybe Erased -> Parser (Maybe Erased)
    forall (m :: * -> *) a. Monad m => a -> m a
    return Maybe Erased
    forall a. Maybe a
    Nothing

    -- | Constructs extended lambdas.

    extLam
      :: Range            -- ^ The range of the lambda symbol and @where@ or
                          --   the braces.
      -> [Attr]           -- ^ The attributes in reverse order.
      -> List1 LamClause  -- ^ The clauses in reverse order.
      -> Parser Expr
    extLam :: Range -> [Attr] -> NonEmpty LamClause -> Parser Expr
    extLam Range
    symbolRange [Attr]
    attrs NonEmpty LamClause
    cs = do
      Erased
    e <- [Attr] -> Parser Erased
    onlyErased [Attr]
    attrs
      let cs' :: NonEmpty LamClause
    cs' = NonEmpty LamClause -> NonEmpty LamClause
    forall a. NonEmpty a -> NonEmpty a
    List1.reverse NonEmpty LamClause
    cs
      Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Expr -> Parser Expr) -> Expr -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Erased -> NonEmpty LamClause -> Expr
    ExtendedLam ((Range, Erased, NonEmpty LamClause) -> Range
    forall a. HasRange a => a -> Range
    getRange (Range
    symbolRange, Erased
    e, NonEmpty LamClause
    cs')) Erased
    e NonEmpty LamClause
    cs'

    -- | Constructs extended or absurd lambdas.

    extOrAbsLam
      :: Range   -- ^ The range of the lambda symbol.
      -> [Attr]  -- ^ The attributes, in reverse order.
      -> Either ([LamBinding], Hiding) (List1 Expr)
      -> Parser Expr
    extOrAbsLam :: Range
    -> [Attr]
    -> Either ([LamBinding], Hiding) (List1 Expr)
    -> Parser Expr
    extOrAbsLam Range
    lambdaRange [Attr]
    attrs Either ([LamBinding], Hiding) (List1 Expr)
    cs = case Either ([LamBinding], Hiding) (List1 Expr)
    cs of
      Right List1 Expr
    es -> do
        -- It is of the form @\ { p1 ... () }@.
        Erased
    e  <- [Attr] -> Parser Erased
    onlyErased [Attr]
    attrs
        LamClause
    cl <- Bool -> List1 Expr -> Parser LamClause
    mkAbsurdLamClause Bool
    False List1 Expr
    es
        Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Expr -> Parser Expr) -> Expr -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Erased -> NonEmpty LamClause -> Expr
    ExtendedLam ((Range, Erased, List1 Expr) -> Range
    forall a. HasRange a => a -> Range
    getRange (Range
    lambdaRange, Erased
    e, List1 Expr
    es)) Erased
    e (NonEmpty LamClause -> Expr) -> NonEmpty LamClause -> Expr
    forall a b. (a -> b) -> a -> b
    $ LamClause -> NonEmpty LamClause
    forall el coll. Singleton el coll => el -> coll
    singleton LamClause
    cl
      Left ([LamBinding]
    bs, Hiding
    h) -> do
        (Attr -> Parser ()) -> [Attr] -> Parser ()
    forall (t :: * -> *) (m :: * -> *) a b.
    (Foldable t, Monad m) =>
    (a -> m b) -> t a -> m ()
    mapM_ (\Attr
    a -> ParseWarning -> Parser ()
    parseWarning (ParseWarning -> Parser ()) -> ParseWarning -> Parser ()
    forall a b. (a -> b) -> a -> b
    $
                       Range -> Maybe [Char] -> ParseWarning
    UnsupportedAttribute (Attr -> Range
    attrRange Attr
    a) Maybe [Char]
    forall a. Maybe a
    Nothing)
              ([Attr] -> [Attr]
    forall a. [a] -> [a]
    reverse [Attr]
    attrs)
        [LamBinding]
    -> Parser Expr -> (List1 LamBinding -> Parser Expr) -> Parser Expr
    forall a b. [a] -> b -> (List1 a -> b) -> b
    List1.ifNull [LamBinding]
    bs
          {-then-} (Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Expr -> Parser Expr) -> Expr -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> Hiding -> Expr
    AbsurdLam Range
    r Hiding
    h)
          {-else-} ((List1 LamBinding -> Parser Expr) -> Parser Expr)
    -> (List1 LamBinding -> Parser Expr) -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ \ List1 LamBinding
    bs -> Expr -> Parser Expr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Expr -> Parser Expr) -> Expr -> Parser Expr
    forall a b. (a -> b) -> a -> b
    $ Range -> List1 LamBinding -> Expr -> Expr
    Lam Range
    r List1 LamBinding
    bs (Range -> Hiding -> Expr
    AbsurdLam Range
    r Hiding
    h)
        where
        r :: Range
    r = Range -> [LamBinding] -> Range
    forall u t. (HasRange u, HasRange t) => u -> t -> Range
    fuseRange Range
    lambdaRange [LamBinding]
    bs

    -- | Interpret an expression as a list of names and (not parsed yet) as-patterns

    exprAsTele :: Expr -> List1 Expr
    exprAsTele :: Expr -> List1 Expr
    exprAsTele (RawApp Range
    _ List2 Expr
    es) = List2 Expr -> List1 Expr
    forall a. List2 a -> List1 a
    List2.toList1 List2 Expr
    es
    exprAsTele Expr
    e             = Expr -> List1 Expr
    forall el coll. Singleton el coll => el -> coll
    singleton Expr
    e

    exprAsNamesAndPatterns :: Expr -> Maybe (List1 (Name, Maybe Expr))
    exprAsNamesAndPatterns :: Expr -> Maybe (List1 (Name, Maybe Expr))
    exprAsNamesAndPatterns = (Expr -> Maybe (Name, Maybe Expr))
    -> List1 Expr -> Maybe (List1 (Name, Maybe Expr))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Expr -> Maybe (Name, Maybe Expr)
    exprAsNameAndPattern (List1 Expr -> Maybe (List1 (Name, Maybe Expr)))
    -> (Expr -> List1 Expr) -> Expr -> Maybe (List1 (Name, Maybe Expr))
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Expr -> List1 Expr
    exprAsTele

    exprAsNameAndPattern :: Expr -> Maybe (Name, Maybe Expr)
    exprAsNameAndPattern :: Expr -> Maybe (Name, Maybe Expr)
    exprAsNameAndPattern (Ident (QName Name
    x)) = (Name, Maybe Expr) -> Maybe (Name, Maybe Expr)
    forall a. a -> Maybe a
    Just (Name
    x, Maybe Expr
    forall a. Maybe a
    Nothing)
    exprAsNameAndPattern (Underscore Range
    r Maybe [Char]
    _)  = (Name, Maybe Expr) -> Maybe (Name, Maybe Expr)
    forall a. a -> Maybe a
    Just (Range -> Name -> Name
    forall a. SetRange a => Range -> a -> a
    setRange Range
    r Name
    simpleHole, Maybe Expr
    forall a. Maybe a
    Nothing)
    exprAsNameAndPattern (As Range
    _ Name
    n Expr
    e)        = (Name, Maybe Expr) -> Maybe (Name, Maybe Expr)
    forall a. a -> Maybe a
    Just (Name
    n, Expr -> Maybe Expr
    forall a. a -> Maybe a
    Just Expr
    e)
    exprAsNameAndPattern (Paren Range
    r Expr
    e)       = (Name, Maybe Expr) -> Maybe (Name, Maybe Expr)
    forall a. a -> Maybe a
    Just (Range -> Name -> Name
    forall a. SetRange a => Range -> a -> a
    setRange Range
    r Name
    simpleHole, Expr -> Maybe Expr
    forall a. a -> Maybe a
    Just Expr
    e)
    exprAsNameAndPattern Expr
    _                 = Maybe (Name, Maybe Expr)
    forall a. Maybe a
    Nothing

    -- interpret an expression as name or list of hidden / instance names
    exprAsNameOrHiddenNames :: Expr -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    exprAsNameOrHiddenNames :: Expr -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    exprAsNameOrHiddenNames = \case
      HiddenArg Range
    _ (Named Maybe NamedName
    Nothing Expr
    e) ->
        ((Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> List1 (Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr)
    forall a. LensHiding a => a -> a
    hide (NamedArg (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> ((Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> (Name, Maybe Expr)
    -> NamedArg (Name, Maybe Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr)
    forall a. a -> NamedArg a
    defaultNamedArg) (List1 (Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr)))
    -> Maybe (List1 (Name, Maybe Expr))
    -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> Expr -> Maybe (List1 (Name, Maybe Expr))
    exprAsNamesAndPatterns Expr
    e
      InstanceArg Range
    _ (Named Maybe NamedName
    Nothing Expr
    e) ->
        ((Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> List1 (Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (NamedArg (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr)
    forall a. LensHiding a => a -> a
    makeInstance (NamedArg (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> ((Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> (Name, Maybe Expr)
    -> NamedArg (Name, Maybe Expr)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr)
    forall a. a -> NamedArg a
    defaultNamedArg) (List1 (Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr)))
    -> Maybe (List1 (Name, Maybe Expr))
    -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> Expr -> Maybe (List1 (Name, Maybe Expr))
    exprAsNamesAndPatterns Expr
    e
      Expr
    e ->
        NamedArg (Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr))
    forall el coll. Singleton el coll => el -> coll
    singleton (NamedArg (Name, Maybe Expr)
     -> List1 (NamedArg (Name, Maybe Expr)))
    -> ((Name, Maybe Expr) -> NamedArg (Name, Maybe Expr))
    -> (Name, Maybe Expr)
    -> List1 (NamedArg (Name, Maybe Expr))
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . (Name, Maybe Expr) -> NamedArg (Name, Maybe Expr)
    forall a. a -> NamedArg a
    defaultNamedArg ((Name, Maybe Expr) -> List1 (NamedArg (Name, Maybe Expr)))
    -> Maybe (Name, Maybe Expr)
    -> Maybe (List1 (NamedArg (Name, Maybe Expr)))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> Expr -> Maybe (Name, Maybe Expr)
    exprAsNameAndPattern Expr
    e

    boundNamesOrAbsurd :: List1 Expr -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    boundNamesOrAbsurd :: List1 Expr
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    boundNamesOrAbsurd List1 Expr
    es
      | (Expr -> Bool) -> List1 Expr -> Bool
    forall (t :: * -> *) a. Foldable t => (a -> Bool) -> t a -> Bool
    any Expr -> Bool
    isAbsurd List1 Expr
    es = Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Either (List1 (NamedArg Binder)) (List1 Expr)
     -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ List1 Expr -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. b -> Either a b
    Right List1 Expr
    es
      | Bool
    otherwise       =
        case (Expr -> Maybe (Name, Maybe Expr))
    -> List1 Expr -> Maybe (List1 (Name, Maybe Expr))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Expr -> Maybe (Name, Maybe Expr)
    exprAsNameAndPattern List1 Expr
    es of
            Maybe (List1 (Name, Maybe Expr))
    Nothing   -> [Char] -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> [Char] -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "expected sequence of bound identifiers"
            Just List1 (Name, Maybe Expr)
    good -> (List1 (NamedArg Binder)
     -> Either (List1 (NamedArg Binder)) (List1 Expr))
    -> Parser (List1 (NamedArg Binder))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap List1 (NamedArg Binder)
    -> Either (List1 (NamedArg Binder)) (List1 Expr)
    forall a b. a -> Either a b
    Left (Parser (List1 (NamedArg Binder))
     -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr)))
    -> Parser (List1 (NamedArg Binder))
    -> Parser (Either (List1 (NamedArg Binder)) (List1 Expr))
    forall a b. (a -> b) -> a -> b
    $ List1 (Name, Maybe Expr)
    -> ((Name, Maybe Expr) -> Parser (NamedArg Binder))
    -> Parser (List1 (NamedArg Binder))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    t a -> (a -> m b) -> m (t b)
    forM List1 (Name, Maybe Expr)
    good (((Name, Maybe Expr) -> Parser (NamedArg Binder))
     -> Parser (List1 (NamedArg Binder)))
    -> ((Name, Maybe Expr) -> Parser (NamedArg Binder))
    -> Parser (List1 (NamedArg Binder))
    forall a b. (a -> b) -> a -> b
    $ \ (Name
    n, Maybe Expr
    me) -> do
                           Maybe Pattern
    p <- (Expr -> Parser Pattern) -> Maybe Expr -> Parser (Maybe Pattern)
    forall (t :: * -> *) (f :: * -> *) a b.
    (Traversable t, Applicative f) =>
    (a -> f b) -> t a -> f (t b)
    traverse Expr -> Parser Pattern
    exprToPattern Maybe Expr
    me
                           NamedArg Binder -> Parser (NamedArg Binder)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Binder -> NamedArg Binder
    forall a. a -> NamedArg a
    defaultNamedArg (Maybe Pattern -> BoundName -> Binder
    forall a. Maybe Pattern -> a -> Binder' a
    Binder Maybe Pattern
    p (Name -> BoundName
    mkBoundName_ Name
    n)))

      where

        isAbsurd :: Expr -> Bool
        isAbsurd :: Expr -> Bool
    isAbsurd (Absurd Range
    _)                  = Bool
    True
        isAbsurd (HiddenArg Range
    _ (Named Maybe NamedName
    _ Expr
    e))   = Expr -> Bool
    isAbsurd Expr
    e
        isAbsurd (InstanceArg Range
    _ (Named Maybe NamedName
    _ Expr
    e)) = Expr -> Bool
    isAbsurd Expr
    e
        isAbsurd (Paren Range
    _ Expr
    e)                 = Expr -> Bool
    isAbsurd Expr
    e
        isAbsurd (As Range
    _ Name
    _ Expr
    e)                  = Expr -> Bool
    isAbsurd Expr
    e
        isAbsurd (RawApp Range
    _ List2 Expr
    es)               = (Expr -> Bool) -> List2 Expr -> Bool
    forall (t :: * -> *) a. Foldable t => (a -> Bool) -> t a -> Bool
    any Expr -> Bool
    isAbsurd List2 Expr
    es
        isAbsurd Expr
    _                           = Bool
    False

    -- | Match a pattern-matching "assignment" statement @p <- e@
    exprToAssignment :: Expr -> Parser (Maybe (Pattern, Range, Expr))
    exprToAssignment :: Expr -> Parser (Maybe (Pattern, Range, Expr))
    exprToAssignment e :: Expr
    e@(RawApp Range
    r List2 Expr
    es)
      | ([Expr]
    es1, Expr
    arr : [Expr]
    es2) <- (Expr -> Bool) -> List2 Expr -> ([Expr], [Expr])
    forall a. (a -> Bool) -> List2 a -> ([a], [a])
    List2.break Expr -> Bool
    isLeftArrow List2 Expr
    es =
        case (Expr -> Bool) -> [Expr] -> [Expr]
    forall a. (a -> Bool) -> [a] -> [a]
    filter Expr -> Bool
    isLeftArrow [Expr]
    es2 of
          Expr
    arr : [Expr]
    _ -> Maybe (Position' ())
    -> [Char] -> Parser (Maybe (Pattern, Range, Expr))
    forall a. Maybe (Position' ()) -> [Char] -> Parser a
    parseError' (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Range -> Maybe (Position' ())) -> Range -> Maybe (Position' ())
    forall a b. (a -> b) -> a -> b
    $ Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    arr) ([Char] -> Parser (Maybe (Pattern, Range, Expr)))
    -> [Char] -> Parser (Maybe (Pattern, Range, Expr))
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Unexpected " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    arr
          [] ->
            -- Andreas, 2021-05-06, issue #5365
            -- Handle pathological cases like @do <-@ and @do x <-@.
            case ([Expr]
    es1, [Expr]
    es2) of
              (Expr
    e1:[Expr]
    rest1, Expr
    e2:[Expr]
    rest2) -> do
                Pattern
    p <- Expr -> Parser Pattern
    exprToPattern (Expr -> Parser Pattern) -> Expr -> Parser Pattern
    forall a b. (a -> b) -> a -> b
    $ List1 Expr -> Expr
    rawApp (List1 Expr -> Expr) -> List1 Expr -> Expr
    forall a b. (a -> b) -> a -> b
    $ Expr
    e1 Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    rest1
                Maybe (Pattern, Range, Expr)
    -> Parser (Maybe (Pattern, Range, Expr))
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (Maybe (Pattern, Range, Expr)
     -> Parser (Maybe (Pattern, Range, Expr)))
    -> Maybe (Pattern, Range, Expr)
    -> Parser (Maybe (Pattern, Range, Expr))
    forall a b. (a -> b) -> a -> b
    $ (Pattern, Range, Expr) -> Maybe (Pattern, Range, Expr)
    forall a. a -> Maybe a
    Just (Pattern
    p, Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    arr, List1 Expr -> Expr
    rawApp (Expr
    e2 Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    rest2))
              ([Expr], [Expr])
    _ -> Maybe (Position' ())
    -> [Char] -> Parser (Maybe (Pattern, Range, Expr))
    forall a. Maybe (Position' ()) -> [Char] -> Parser a
    parseError' (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Range -> Maybe (Position' ())) -> Range -> Maybe (Position' ())
    forall a b. (a -> b) -> a -> b
    $ Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    e) ([Char] -> Parser (Maybe (Pattern, Range, Expr)))
    -> [Char] -> Parser (Maybe (Pattern, Range, Expr))
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Incomplete binding " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    e
      where
        isLeftArrow :: Expr -> Bool
    isLeftArrow (Ident (QName (Name Range
    _ NameInScope
    _ (Id [Char]
    arr :| [])))) =
          [Char]
    arr [Char] -> [[Char]] -> Bool
    forall (t :: * -> *) a. (Foldable t, Eq a) => a -> t a -> Bool
    `elem` [[Char]
    "<-", [Char]
    "\x2190"]  -- \leftarrow [issue #5465, unicode might crash happy]
        isLeftArrow Expr
    _ = Bool
    False
    exprToAssignment Expr
    _ = Maybe (Pattern, Range, Expr)
    -> Parser (Maybe (Pattern, Range, Expr))
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure Maybe (Pattern, Range, Expr)
    forall a. Maybe a
    Nothing

    -- | Build a with-block
    buildWithBlock ::
      [Either RewriteEqn (List1 (Named Name Expr))] ->
      Parser ([RewriteEqn], [Named Name Expr])
    buildWithBlock :: [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser ([RewriteEqn], [Named Name Expr])
    buildWithBlock [Either RewriteEqn (List1 (Named Name Expr))]
    rees = case [Either RewriteEqn (List1 (Named Name Expr))]
    -> [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    forall a b. [Either a b] -> [Either (List1 a) (List1 b)]
    groupByEither [Either RewriteEqn (List1 (Named Name Expr))]
    rees of
      (Left List1 RewriteEqn
    rs : [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    rest) -> (List1 RewriteEqn -> [RewriteEqn]
    forall a. NonEmpty a -> [a]
    List1.toList List1 RewriteEqn
    rs,) ([Named Name Expr] -> ([RewriteEqn], [Named Name Expr]))
    -> Parser [Named Name Expr]
    -> Parser ([RewriteEqn], [Named Name Expr])
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    -> Parser [Named Name Expr]
    forall a b.
    (HasRange a, HasRange b) =>
    [Either (List1 a) (List1 (List1 b))] -> Parser [b]
    finalWith [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    rest
      [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    rest             -> ([],) ([Named Name Expr] -> ([RewriteEqn], [Named Name Expr]))
    -> Parser [Named Name Expr]
    -> Parser ([RewriteEqn], [Named Name Expr])
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    -> Parser [Named Name Expr]
    forall a b.
    (HasRange a, HasRange b) =>
    [Either (List1 a) (List1 (List1 b))] -> Parser [b]
    finalWith [Either (List1 RewriteEqn) (List1 (List1 (Named Name Expr)))]
    rest

      where

        finalWith :: (HasRange a, HasRange b) =>
                     [Either (List1 a) (List1 (List1 b))] -> Parser [b]
        finalWith :: forall a b.
    (HasRange a, HasRange b) =>
    [Either (List1 a) (List1 (List1 b))] -> Parser [b]
    finalWith []             = [b] -> Parser [b]
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure ([b] -> Parser [b]) -> [b] -> Parser [b]
    forall a b. (a -> b) -> a -> b
    $ []
        finalWith [Right List1 (List1 b)
    ees]    = [b] -> Parser [b]
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure ([b] -> Parser [b]) -> [b] -> Parser [b]
    forall a b. (a -> b) -> a -> b
    $ List1 b -> [b]
    forall a. NonEmpty a -> [a]
    List1.toList (List1 b -> [b]) -> List1 b -> [b]
    forall a b. (a -> b) -> a -> b
    $ List1 (List1 b) -> List1 b
    forall a. Semigroup a => NonEmpty a -> a
    sconcat List1 (List1 b)
    ees
        finalWith (Right{} : [Either (List1 a) (List1 (List1 b))]
    tl) = Maybe (Position' ()) -> [Char] -> Parser [b]
    forall a. Maybe (Position' ()) -> [Char] -> Parser a
    parseError' (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Range -> Maybe (Position' ())) -> Range -> Maybe (Position' ())
    forall a b. (a -> b) -> a -> b
    $ [Either (List1 a) (List1 (List1 b))] -> Range
    forall a. HasRange a => a -> Range
    getRange [Either (List1 a) (List1 (List1 b))]
    tl)
          [Char]
    "Cannot use rewrite / pattern-matching with after a with-abstraction."

    -- | Build a with-statement
    buildWithStmt :: List1 (Named Name Expr) ->
                     Parser [Either RewriteEqn (List1 (Named Name Expr))]
    buildWithStmt :: List1 (Named Name Expr)
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    buildWithStmt List1 (Named Name Expr)
    nes = do
      [Either (Named Name (Pattern, Expr)) (Named Name Expr)]
    ws <- (Named Name Expr
     -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr)))
    -> [Named Name Expr]
    -> Parser [Either (Named Name (Pattern, Expr)) (Named Name Expr)]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Named Name Expr
    -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr))
    buildSingleWithStmt (List1 (Named Name Expr) -> [Named Name Expr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 (Named Name Expr)
    nes)
      let rws :: [Either
       (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))]
    rws = [Either (Named Name (Pattern, Expr)) (Named Name Expr)]
    -> [Either
          (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))]
    forall a b. [Either a b] -> [Either (List1 a) (List1 b)]
    groupByEither [Either (Named Name (Pattern, Expr)) (Named Name Expr)]
    ws
      [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure ([Either RewriteEqn (List1 (Named Name Expr))]
     -> Parser [Either RewriteEqn (List1 (Named Name Expr))])
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser [Either RewriteEqn (List1 (Named Name Expr))]
    forall a b. (a -> b) -> a -> b
    $ (Either
       (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))
     -> Either RewriteEqn (List1 (Named Name Expr)))
    -> [Either
          (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))]
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    forall a b. (a -> b) -> [a] -> [b]
    map ((List1 (Named Name (Pattern, Expr)) -> RewriteEqn)
    -> Either
         (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))
    -> Either RewriteEqn (List1 (Named Name Expr))
    forall (p :: * -> * -> *) a b c.
    Bifunctor p =>
    (a -> b) -> p a c -> p b c
    first (() -> List1 (Named Name (Pattern, Expr)) -> RewriteEqn
    forall qn nm p e.
    qn -> List1 (Named nm (p, e)) -> RewriteEqn' qn nm p e
    Invert ())) [Either
       (List1 (Named Name (Pattern, Expr))) (List1 (Named Name Expr))]
    rws

    buildSingleWithStmt ::
      Named Name Expr ->
      Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr))
    buildSingleWithStmt :: Named Name Expr
    -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr))
    buildSingleWithStmt Named Name Expr
    e = do
      Maybe (Pattern, Range, Expr)
    mpatexpr <- Expr -> Parser (Maybe (Pattern, Range, Expr))
    exprToAssignment (Named Name Expr -> Expr
    forall name a. Named name a -> a
    namedThing Named Name Expr
    e)
      Either (Named Name (Pattern, Expr)) (Named Name Expr)
    -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr))
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (Either (Named Name (Pattern, Expr)) (Named Name Expr)
     -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr)))
    -> Either (Named Name (Pattern, Expr)) (Named Name Expr)
    -> Parser (Either (Named Name (Pattern, Expr)) (Named Name Expr))
    forall a b. (a -> b) -> a -> b
    $ case Maybe (Pattern, Range, Expr)
    mpatexpr of
        Just (Pattern
    pat, Range
    _, Expr
    expr) -> Named Name (Pattern, Expr)
    -> Either (Named Name (Pattern, Expr)) (Named Name Expr)
    forall a b. a -> Either a b
    Left ((Pattern
    pat, Expr
    expr) (Pattern, Expr) -> Named Name Expr -> Named Name (Pattern, Expr)
    forall (f :: * -> *) a b. Functor f => a -> f b -> f a
    <$ Named Name Expr
    e)
        Maybe (Pattern, Range, Expr)
    Nothing             -> Named Name Expr
    -> Either (Named Name (Pattern, Expr)) (Named Name Expr)
    forall a b. b -> Either a b
    Right Named Name Expr
    e

    fromWithApp :: Expr -> List1 Expr
    fromWithApp :: Expr -> List1 Expr
    fromWithApp = \case
      WithApp Range
    _ Expr
    e [Expr]
    es -> Expr
    e Expr -> [Expr] -> List1 Expr
    forall a. a -> [a] -> NonEmpty a
    :| [Expr]
    es
      Expr
    e              -> Expr -> List1 Expr
    forall el coll. Singleton el coll => el -> coll
    singleton Expr
    e

    -- | Build a do-statement
    defaultBuildDoStmt :: Expr -> [LamClause] -> Parser DoStmt
    defaultBuildDoStmt :: Expr -> [LamClause] -> Parser DoStmt
    defaultBuildDoStmt Expr
    e (LamClause
    _ : [LamClause]
    _) = Maybe (Position' ()) -> [Char] -> Parser DoStmt
    forall a. Maybe (Position' ()) -> [Char] -> Parser a
    parseError' (Range -> Maybe (Position' ())
    forall a. Range' a -> Maybe (Position' ())
    rStart' (Range -> Maybe (Position' ())) -> Range -> Maybe (Position' ())
    forall a b. (a -> b) -> a -> b
    $ Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    e) [Char]
    "Only pattern matching do-statements can have where clauses."
    defaultBuildDoStmt Expr
    e []      = DoStmt -> Parser DoStmt
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (DoStmt -> Parser DoStmt) -> DoStmt -> Parser DoStmt
    forall a b. (a -> b) -> a -> b
    $ Expr -> DoStmt
    DoThen Expr
    e

    buildDoStmt :: Expr -> [LamClause] -> Parser DoStmt
    buildDoStmt :: Expr -> [LamClause] -> Parser DoStmt
    buildDoStmt (Let Range
    r List1 Declaration
    ds Maybe Expr
    Nothing) [] = DoStmt -> Parser DoStmt
    forall (m :: * -> *) a. Monad m => a -> m a
    return (DoStmt -> Parser DoStmt) -> DoStmt -> Parser DoStmt
    forall a b. (a -> b) -> a -> b
    $ Range -> List1 Declaration -> DoStmt
    DoLet Range
    r List1 Declaration
    ds
    buildDoStmt e :: Expr
    e@(RawApp Range
    r List2 Expr
    _)    [LamClause]
    cs = do
      Maybe (Pattern, Range, Expr)
    mpatexpr <- Expr -> Parser (Maybe (Pattern, Range, Expr))
    exprToAssignment Expr
    e
      case Maybe (Pattern, Range, Expr)
    mpatexpr of
        Just (Pattern
    pat, Range
    r, Expr
    expr) -> DoStmt -> Parser DoStmt
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (DoStmt -> Parser DoStmt) -> DoStmt -> Parser DoStmt
    forall a b. (a -> b) -> a -> b
    $ Range -> Pattern -> Expr -> [LamClause] -> DoStmt
    DoBind Range
    r Pattern
    pat Expr
    expr [LamClause]
    cs
        Maybe (Pattern, Range, Expr)
    Nothing -> Expr -> [LamClause] -> Parser DoStmt
    defaultBuildDoStmt Expr
    e [LamClause]
    cs
    buildDoStmt Expr
    e [LamClause]
    cs = Expr -> [LamClause] -> Parser DoStmt
    defaultBuildDoStmt Expr
    e [LamClause]
    cs

    -- | Extract record directives
    extractRecordDirectives :: [Declaration] -> Parser (RecordDirectives, [Declaration])
    extractRecordDirectives :: [Declaration] -> Parser (RecordDirectives, [Declaration])
    extractRecordDirectives [Declaration]
    ds = do
      let ([RecordDirective]
    dirs, [Declaration]
    rest) = (Declaration -> Maybe RecordDirective)
    -> [Declaration] -> ([RecordDirective], [Declaration])
    forall a b. (a -> Maybe b) -> [a] -> (Prefix b, [a])
    spanJust Declaration -> Maybe RecordDirective
    isRecordDirective [Declaration]
    ds
      RecordDirectives
    dir <- [RecordDirective] -> Parser RecordDirectives
    verifyRecordDirectives [RecordDirective]
    dirs
      (RecordDirectives, [Declaration])
    -> Parser (RecordDirectives, [Declaration])
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure (RecordDirectives
    dir, [Declaration]
    rest)

    -- | Check for duplicate record directives.
    verifyRecordDirectives :: [RecordDirective] -> Parser RecordDirectives
    verifyRecordDirectives :: [RecordDirective] -> Parser RecordDirectives
    verifyRecordDirectives [RecordDirective]
    ds
      | [Range] -> Bool
    forall a. Null a => a -> Bool
    null [Range]
    rs   = RecordDirectives -> Parser RecordDirectives
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Maybe (Ranged Induction)
    -> Maybe HasEta0
    -> Maybe Range
    -> Maybe (Name, IsInstance)
    -> RecordDirectives
    forall a.
    Maybe (Ranged Induction)
    -> Maybe HasEta0 -> Maybe Range -> Maybe a -> RecordDirectives' a
    RecordDirectives ([Ranged Induction] -> Maybe (Ranged Induction)
    forall a. [a] -> Maybe a
    listToMaybe [Ranged Induction]
    is) ([HasEta0] -> Maybe HasEta0
    forall a. [a] -> Maybe a
    listToMaybe [HasEta0]
    es) ([Range] -> Maybe Range
    forall a. [a] -> Maybe a
    listToMaybe [Range]
    ps) ([(Name, IsInstance)] -> Maybe (Name, IsInstance)
    forall a. [a] -> Maybe a
    listToMaybe [(Name, IsInstance)]
    cs))
          -- Here, all the lists is, es, cs, ps are at most singletons.
      | Bool
    otherwise = Range -> [Char] -> Parser RecordDirectives
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange ([Range] -> Range
    forall a. [a] -> a
    head [Range]
    rs) ([Char] -> Parser RecordDirectives)
    -> [Char] -> Parser RecordDirectives
    forall a b. (a -> b) -> a -> b
    $ [[Char]] -> [Char]
    unlines ([[Char]] -> [Char]) -> [[Char]] -> [Char]
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Repeated record directives at:" [Char] -> [[Char]] -> [[Char]]
    forall a. a -> [a] -> [a]
    : (Range -> [Char]) -> [Range] -> [[Char]]
    forall a b. (a -> b) -> [a] -> [b]
    map Range -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow [Range]
    rs
      where
      errorFromList :: [a] -> [Range]
    errorFromList []  = []
      errorFromList [a
    x] = []
      errorFromList [a]
    xs  = (a -> Range) -> [a] -> [Range]
    forall a b. (a -> b) -> [a] -> [b]
    map a -> Range
    forall a. HasRange a => a -> Range
    getRange [a]
    xs
      rs :: [Range]
    rs  = [Range] -> [Range]
    forall a. Ord a => [a] -> [a]
    List.sort ([Range] -> [Range]) -> [Range] -> [Range]
    forall a b. (a -> b) -> a -> b
    $ [[Range]] -> [Range]
    forall (t :: * -> *) a. Foldable t => t [a] -> [a]
    concat [ [Ranged Induction] -> [Range]
    forall {a}. HasRange a => [a] -> [Range]
    errorFromList [Ranged Induction]
    is, [Ranged HasEta0] -> [Range]
    forall {a}. HasRange a => [a] -> [Range]
    errorFromList [Ranged HasEta0]
    es', [(Name, IsInstance)] -> [Range]
    forall {a}. HasRange a => [a] -> [Range]
    errorFromList [(Name, IsInstance)]
    cs, [Range] -> [Range]
    forall {a}. HasRange a => [a] -> [Range]
    errorFromList [Range]
    ps ]
      es :: [HasEta0]
    es  = (Ranged HasEta0 -> HasEta0) -> [Ranged HasEta0] -> [HasEta0]
    forall a b. (a -> b) -> [a] -> [b]
    map Ranged HasEta0 -> HasEta0
    forall a. Ranged a -> a
    rangedThing [Ranged HasEta0]
    es'
      is :: [Ranged Induction]
    is  = [ Ranged Induction
    i      | Induction Ranged Induction
    i          <- [RecordDirective]
    ds ]
      es' :: [Ranged HasEta0]
    es' = [ Ranged HasEta0
    e      | Eta Ranged HasEta0
    e                <- [RecordDirective]
    ds ]
      cs :: [(Name, IsInstance)]
    cs  = [ (Name
    c, IsInstance
    i) | Constructor Name
    c IsInstance
    i      <- [RecordDirective]
    ds ]
      ps :: [Range]
    ps  = [ Range
    r      | PatternOrCopattern Range
    r <- [RecordDirective]
    ds ]

    -- | Breaks up a string into substrings. Returns every maximal
    -- subsequence of zero or more characters distinct from @'.'@.
    --
    -- > splitOnDots ""         == [""]
    -- > splitOnDots "foo.bar"  == ["foo", "bar"]
    -- > splitOnDots ".foo.bar" == ["", "foo", "bar"]
    -- > splitOnDots "foo.bar." == ["foo", "bar", ""]
    -- > splitOnDots "foo..bar" == ["foo", "", "bar"]
    splitOnDots :: String -> [String]
    splitOnDots :: [Char] -> [[Char]]
    splitOnDots [Char]
    ""        = [[Char]
    ""]
    splitOnDots (Char
    '.' : [Char]
    s) = [] [Char] -> [[Char]] -> [[Char]]
    forall a. a -> [a] -> [a]
    : [Char] -> [[Char]]
    splitOnDots [Char]
    s
    splitOnDots (Char
    c   : [Char]
    s) = case [Char] -> [[Char]]
    splitOnDots [Char]
    s of
      [Char]
    p : [[Char]]
    ps -> (Char
    c Char -> [Char] -> [Char]
    forall a. a -> [a] -> [a]
    : [Char]
    p) [Char] -> [[Char]] -> [[Char]]
    forall a. a -> [a] -> [a]
    : [[Char]]
    ps

    -- | Returns 'True' iff the name is a valid Haskell (hierarchical)
    -- module name.
    validHaskellModuleName :: String -> Bool
    validHaskellModuleName :: [Char] -> Bool
    validHaskellModuleName = ([Char] -> Bool) -> [[Char]] -> Bool
    forall (t :: * -> *) a. Foldable t => (a -> Bool) -> t a -> Bool
    all [Char] -> Bool
    ok ([[Char]] -> Bool) -> ([Char] -> [[Char]]) -> [Char] -> Bool
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . [Char] -> [[Char]]
    splitOnDots
      where
      -- Checks if a dot-less module name is well-formed.
      ok :: String -> Bool
      ok :: [Char] -> Bool
    ok []      = Bool
    False
      ok (Char
    c : [Char]
    s) =
        Char -> Bool
    isUpper Char
    c Bool -> Bool -> Bool
    &&
        (Char -> Bool) -> [Char] -> Bool
    forall (t :: * -> *) a. Foldable t => (a -> Bool) -> t a -> Bool
    all (\Char
    c -> Char -> Bool
    isLower Char
    c Bool -> Bool -> Bool
    || Char
    c Char -> Char -> Bool
    forall a. Eq a => a -> a -> Bool
    == Char
    '_' Bool -> Bool -> Bool
    ||
                   Char -> Bool
    isUpper Char
    c Bool -> Bool -> Bool
    ||
                   Char -> GeneralCategory
    generalCategory Char
    c GeneralCategory -> GeneralCategory -> Bool
    forall a. Eq a => a -> a -> Bool
    == GeneralCategory
    DecimalNumber Bool -> Bool -> Bool
    ||
                   Char
    c Char -> Char -> Bool
    forall a. Eq a => a -> a -> Bool
    == Char
    '\'')
            [Char]
    s

    {--------------------------------------------------------------------------
        Patterns
     --------------------------------------------------------------------------}

    -- | Turn an expression into a left hand side.
    exprToLHS :: Expr -> Parser ([RewriteEqn] -> [WithExpr] -> LHS)
    exprToLHS :: Expr -> Parser ([RewriteEqn] -> [WithExpr] -> LHS)
    exprToLHS Expr
    e = Pattern -> [RewriteEqn] -> [WithExpr] -> LHS
    LHS (Pattern -> [RewriteEqn] -> [WithExpr] -> LHS)
    -> Parser Pattern -> Parser ([RewriteEqn] -> [WithExpr] -> LHS)
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> Expr -> Parser Pattern
    exprToPattern Expr
    e

    -- | Turn an expression into a pattern. Fails if the expression is not a
    --   valid pattern.
    exprToPattern :: Expr -> Parser Pattern
    exprToPattern :: Expr -> Parser Pattern
    exprToPattern Expr
    e = case Expr -> Maybe Pattern
    C.isPattern Expr
    e of
      Maybe Pattern
    Nothing -> Expr -> [Char] -> Parser Pattern
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Expr
    e ([Char] -> Parser Pattern) -> [Char] -> Parser Pattern
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Not a valid pattern: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    e
      Just Pattern
    p  -> Pattern -> Parser Pattern
    forall (f :: * -> *) a. Applicative f => a -> f a
    pure Pattern
    p

    opAppExprToPattern :: OpApp Expr -> Parser Pattern
    opAppExprToPattern :: OpApp Expr -> Parser Pattern
    opAppExprToPattern (SyntaxBindingLambda Range
    _ List1 LamBinding
    _ Expr
    _) = [Char] -> Parser Pattern
    forall a. [Char] -> Parser a
    parseError [Char]
    "Syntax binding lambda cannot appear in a pattern"
    opAppExprToPattern (Ordinary Expr
    e) = Expr -> Parser Pattern
    exprToPattern Expr
    e

    -- | Turn an expression into a name. Fails if the expression is not a
    --   valid identifier.
    exprToName :: Expr -> Parser Name
    exprToName :: Expr -> Parser Name
    exprToName (Ident (QName Name
    x)) = Name -> Parser Name
    forall (m :: * -> *) a. Monad m => a -> m a
    return Name
    x
    exprToName Expr
    e = Expr -> [Char] -> Parser Name
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Expr
    e ([Char] -> Parser Name) -> [Char] -> Parser Name
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Not a valid identifier: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    e

    isEqual :: Expr -> Maybe (Expr, Expr)
    isEqual :: Expr -> Maybe (Expr, Expr)
    isEqual = \case
        Equal Range
    _ Expr
    a Expr
    b -> (Expr, Expr) -> Maybe (Expr, Expr)
    forall a. a -> Maybe a
    Just (Expr
    a, Expr
    b)
        Expr
    _           -> Maybe (Expr, Expr)
    forall a. Maybe a
    Nothing

    -- | When given expression is @e1 = e2@, turn it into a named expression.
    --   Call this inside an implicit argument @{e}@ or @{{e}}@, where
    --   an equality must be a named argument (rather than a cubical partial match).
    maybeNamed :: Expr -> Parser (Named_ Expr)
    maybeNamed :: Expr -> Parser (Named_ Expr)
    maybeNamed Expr
    e =
      case Expr -> Maybe (Expr, Expr)
    isEqual Expr
    e of
        Maybe (Expr, Expr)
    Nothing       -> Named_ Expr -> Parser (Named_ Expr)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Named_ Expr -> Parser (Named_ Expr))
    -> Named_ Expr -> Parser (Named_ Expr)
    forall a b. (a -> b) -> a -> b
    $ Expr -> Named_ Expr
    forall a name. a -> Named name a
    unnamed Expr
    e
        Just (Expr
    e1, Expr
    e2) -> do
          let succeed :: [Char] -> Parser (Named_ Expr)
    succeed [Char]
    x = Named_ Expr -> Parser (Named_ Expr)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Named_ Expr -> Parser (Named_ Expr))
    -> Named_ Expr -> Parser (Named_ Expr)
    forall a b. (a -> b) -> a -> b
    $ NamedName -> Expr -> Named_ Expr
    forall name a. name -> a -> Named name a
    named (Origin -> RString -> NamedName
    forall a. Origin -> a -> WithOrigin a
    WithOrigin Origin
    UserWritten (RString -> NamedName) -> RString -> NamedName
    forall a b. (a -> b) -> a -> b
    $ Range -> [Char] -> RString
    forall a. Range -> a -> Ranged a
    Ranged (Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    e1) [Char]
    x) Expr
    e2
          case Expr
    e1 of
            Ident (QName Name
    x) -> [Char] -> Parser (Named_ Expr)
    succeed ([Char] -> Parser (Named_ Expr)) -> [Char] -> Parser (Named_ Expr)
    forall a b. (a -> b) -> a -> b
    $ Name -> [Char]
    nameToRawName Name
    x
            -- We could have the following, but names of arguments cannot be _.
            -- Underscore{}    -> succeed $ "_"
            Expr
    _ -> Expr -> [Char] -> Parser (Named_ Expr)
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Expr
    e ([Char] -> Parser (Named_ Expr)) -> [Char] -> Parser (Named_ Expr)
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Not a valid named argument: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    e

    patternSynArgs :: [NamedArg Binder] -> Parser [Arg Name]
    patternSynArgs :: [NamedArg Binder] -> Parser [Arg Name]
    patternSynArgs = (NamedArg Binder -> Parser (Arg Name))
    -> [NamedArg Binder] -> Parser [Arg Name]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM NamedArg Binder -> Parser (Arg Name)
    pSynArg
      where
        pSynArg :: NamedArg Binder -> Parser (Arg Name)
    pSynArg NamedArg Binder
    x
          | let h :: Hiding
    h = NamedArg Binder -> Hiding
    forall a. LensHiding a => a -> Hiding
    getHiding NamedArg Binder
    x, Hiding
    h Hiding -> [Hiding] -> Bool
    forall (t :: * -> *) a. (Foldable t, Eq a) => a -> t a -> Bool
    `notElem` [Hiding
    Hidden, Hiding
    NotHidden] =
              [Char] -> Parser (Arg Name)
    abort ([Char] -> Parser (Arg Name)) -> [Char] -> Parser (Arg Name)
    forall a b. (a -> b) -> a -> b
    $ Hiding -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Hiding
    h [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    " arguments not allowed to pattern synonyms"
          | Bool -> Bool
    not (NamedArg Binder -> Bool
    forall a. LensRelevance a => a -> Bool
    isRelevant NamedArg Binder
    x) =
              [Char] -> Parser (Arg Name)
    abort [Char]
    "Arguments to pattern synonyms must be relevant"
          | Just Pattern
    p <- Binder -> Maybe Pattern
    forall a. Binder' a -> Maybe Pattern
    binderPattern (NamedArg Binder -> Binder
    forall a. NamedArg a -> a
    namedArg NamedArg Binder
    x) =
              [Char] -> Parser (Arg Name)
    abort [Char]
    "Arguments to pattern synonyms cannot be patterns themselves"
          | Bool
    otherwise = Arg Name -> Parser (Arg Name)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Arg Name -> Parser (Arg Name)) -> Arg Name -> Parser (Arg Name)
    forall a b. (a -> b) -> a -> b
    $ (Named NamedName Binder -> Name) -> NamedArg Binder -> Arg Name
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap (BoundName -> Name
    boundName (BoundName -> Name)
    -> (Named NamedName Binder -> BoundName)
    -> Named NamedName Binder
    -> Name
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Binder -> BoundName
    forall a. Binder' a -> a
    binderName (Binder -> BoundName)
    -> (Named NamedName Binder -> Binder)
    -> Named NamedName Binder
    -> BoundName
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Named NamedName Binder -> Binder
    forall name a. Named name a -> a
    namedThing) NamedArg Binder
    x
          where
          abort :: [Char] -> Parser (Arg Name)
    abort [Char]
    s = [Char] -> Parser (Arg Name)
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser (Arg Name)) -> [Char] -> Parser (Arg Name)
    forall a b. (a -> b) -> a -> b
    $
            [Char]
    "Illegal pattern synonym argument  " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ NamedArg Binder -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow NamedArg Binder
    x [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    "\n" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++
            [Char]
    "(" [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    ".)"

    mkLamClause
      :: Bool   -- ^ Catch-all?
      -> [Expr] -- ^ Possibly empty list of patterns.
      -> RHS
      -> Parser LamClause
    mkLamClause :: Bool -> [Expr] -> RHS -> Parser LamClause
    mkLamClause Bool
    catchAll [Expr]
    es RHS
    rhs = (Expr -> Parser Pattern) -> [Expr] -> Parser [Pattern]
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Expr -> Parser Pattern
    exprToPattern [Expr]
    es Parser [Pattern] -> ([Pattern] -> LamClause) -> Parser LamClause
    forall (m :: * -> *) a b. Functor m => m a -> (a -> b) -> m b
    <&> \ [Pattern]
    ps ->
      LamClause :: [Pattern] -> RHS -> Bool -> LamClause
    LamClause{ lamLHS :: [Pattern]
    lamLHS = [Pattern]
    ps, lamRHS :: RHS
    lamRHS = RHS
    rhs, lamCatchAll :: Bool
    lamCatchAll = Bool
    catchAll }

    mkAbsurdLamClause :: Bool -> List1 Expr -> Parser LamClause
    mkAbsurdLamClause :: Bool -> List1 Expr -> Parser LamClause
    mkAbsurdLamClause Bool
    catchAll List1 Expr
    es = Bool -> [Expr] -> RHS -> Parser LamClause
    mkLamClause Bool
    catchAll (List1 Expr -> [Expr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Expr
    es) RHS
    forall e. RHS' e
    AbsurdRHS

    parsePanic :: [Char] -> Parser a
    parsePanic [Char]
    s = [Char] -> Parser a
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser a) -> [Char] -> Parser a
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Internal parser error: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    s [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    ". Please report this as a bug."

    {- RHS or type signature -}

    data RHSOrTypeSigs
     = JustRHS RHS
     | TypeSigsRHS Expr
     deriving Int -> RHSOrTypeSigs -> [Char] -> [Char]
    [RHSOrTypeSigs] -> [Char] -> [Char]
    RHSOrTypeSigs -> [Char]
    (Int -> RHSOrTypeSigs -> [Char] -> [Char])
    -> (RHSOrTypeSigs -> [Char])
    -> ([RHSOrTypeSigs] -> [Char] -> [Char])
    -> Show RHSOrTypeSigs
    forall a.
    (Int -> a -> [Char] -> [Char])
    -> (a -> [Char]) -> ([a] -> [Char] -> [Char]) -> Show a
    showList :: [RHSOrTypeSigs] -> [Char] -> [Char]
    $cshowList :: [RHSOrTypeSigs] -> [Char] -> [Char]
    show :: RHSOrTypeSigs -> [Char]
    $cshow :: RHSOrTypeSigs -> [Char]
    showsPrec :: Int -> RHSOrTypeSigs -> [Char] -> [Char]
    $cshowsPrec :: Int -> RHSOrTypeSigs -> [Char] -> [Char]
    Show

    patternToNames :: Pattern -> Parser (List1 (ArgInfo, Name))
    patternToNames :: Pattern -> Parser (List1 (ArgInfo, Name))
    patternToNames = \case
        IdentP (QName Name
    i)         -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name)))
    -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall a b. (a -> b) -> a -> b
    $ (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall el coll. Singleton el coll => el -> coll
    singleton ((ArgInfo, Name) -> List1 (ArgInfo, Name))
    -> (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall a b. (a -> b) -> a -> b
    $ (ArgInfo
    defaultArgInfo, Name
    i)
        WildP Range
    r                  -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name)))
    -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall a b. (a -> b) -> a -> b
    $ (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall el coll. Singleton el coll => el -> coll
    singleton ((ArgInfo, Name) -> List1 (ArgInfo, Name))
    -> (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall a b. (a -> b) -> a -> b
    $ (ArgInfo
    defaultArgInfo, Range -> Name
    C.noName Range
    r)
        DotP Range
    _ (Ident (QName Name
    i)) -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name)))
    -> List1 (ArgInfo, Name) -> Parser (List1 (ArgInfo, Name))
    forall a b. (a -> b) -> a -> b
    $ (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall el coll. Singleton el coll => el -> coll
    singleton ((ArgInfo, Name) -> List1 (ArgInfo, Name))
    -> (ArgInfo, Name) -> List1 (ArgInfo, Name)
    forall a b. (a -> b) -> a -> b
    $ (Relevance -> ArgInfo -> ArgInfo
    forall a. LensRelevance a => Relevance -> a -> a
    setRelevance Relevance
    Irrelevant ArgInfo
    defaultArgInfo, Name
    i)
        RawAppP Range
    _ List2 Pattern
    ps             -> NonEmpty (List1 (ArgInfo, Name)) -> List1 (ArgInfo, Name)
    forall a. Semigroup a => NonEmpty a -> a
    sconcat (NonEmpty (List1 (ArgInfo, Name)) -> List1 (ArgInfo, Name))
    -> (List2 (List1 (ArgInfo, Name))
        -> NonEmpty (List1 (ArgInfo, Name)))
    -> List2 (List1 (ArgInfo, Name))
    -> List1 (ArgInfo, Name)
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List2 (List1 (ArgInfo, Name)) -> NonEmpty (List1 (ArgInfo, Name))
    forall a. List2 a -> List1 a
    List2.toList1 (List2 (List1 (ArgInfo, Name)) -> List1 (ArgInfo, Name))
    -> Parser (List2 (List1 (ArgInfo, Name)))
    -> Parser (List1 (ArgInfo, Name))
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    <$> (Pattern -> Parser (List1 (ArgInfo, Name)))
    -> List2 Pattern -> Parser (List2 (List1 (ArgInfo, Name)))
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    (a -> m b) -> t a -> m (t b)
    mapM Pattern -> Parser (List1 (ArgInfo, Name))
    patternToNames List2 Pattern
    ps
        Pattern
    p                        -> [Char] -> Parser (List1 (ArgInfo, Name))
    forall a. [Char] -> Parser a
    parseError ([Char] -> Parser (List1 (ArgInfo, Name)))
    -> [Char] -> Parser (List1 (ArgInfo, Name))
    forall a b. (a -> b) -> a -> b
    $
          [Char]
    "Illegal name in type signature: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Pattern -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Pattern
    p

    funClauseOrTypeSigs :: [Attr] -> ([RewriteEqn] -> [WithExpr] -> LHS)
                        -> [Either RewriteEqn (List1 (Named Name Expr))]
                        -> RHSOrTypeSigs
                        -> WhereClause -> Parser (List1 Declaration)
    funClauseOrTypeSigs :: [Attr]
    -> ([RewriteEqn] -> [WithExpr] -> LHS)
    -> [Either RewriteEqn (List1 (Named Name Expr))]
    -> RHSOrTypeSigs
    -> WhereClause
    -> Parser (List1 Declaration)
    funClauseOrTypeSigs [Attr]
    attrs [RewriteEqn] -> [WithExpr] -> LHS
    lhs' [Either RewriteEqn (List1 (Named Name Expr))]
    with RHSOrTypeSigs
    mrhs WhereClause
    wh = do
      ([RewriteEqn]
    rs , [Named Name Expr]
    es) <- [Either RewriteEqn (List1 (Named Name Expr))]
    -> Parser ([RewriteEqn], [Named Name Expr])
    buildWithBlock [Either RewriteEqn (List1 (Named Name Expr))]
    with
      let lhs :: LHS
    lhs = [RewriteEqn] -> [WithExpr] -> LHS
    lhs' [RewriteEqn]
    rs ((Named Name Expr -> WithExpr) -> [Named Name Expr] -> [WithExpr]
    forall a b. (a -> b) -> [a] -> [b]
    map ((Expr -> Arg Expr) -> Named Name Expr -> WithExpr
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap Expr -> Arg Expr
    observeModifiers) [Named Name Expr]
    es)
      -- traceShowM lhs
      case RHSOrTypeSigs
    mrhs of
        JustRHS RHS
    rhs   -> do
          Bool -> Parser () -> Parser ()
    forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
    unless ([Attr] -> Bool
    forall a. Null a => a -> Bool
    null [Attr]
    attrs) (Parser () -> Parser ()) -> Parser () -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ [Attr] -> [Char] -> Parser ()
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange [Attr]
    attrs ([Char] -> Parser ()) -> [Char] -> Parser ()
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "A function clause cannot have attributes"
          List1 Declaration -> Parser (List1 Declaration)
    forall (m :: * -> *) a. Monad m => a -> m a
    return (List1 Declaration -> Parser (List1 Declaration))
    -> List1 Declaration -> Parser (List1 Declaration)
    forall a b. (a -> b) -> a -> b
    $ Declaration -> List1 Declaration
    forall el coll. Singleton el coll => el -> coll
    singleton (Declaration -> List1 Declaration)
    -> Declaration -> List1 Declaration
    forall a b. (a -> b) -> a -> b
    $ LHS -> RHS -> WhereClause -> Bool -> Declaration
    FunClause LHS
    lhs RHS
    rhs WhereClause
    wh Bool
    False
        TypeSigsRHS Expr
    e -> case WhereClause
    wh of
          WhereClause
    NoWhere -> case LHS
    lhs of
            LHS Pattern
    p [RewriteEqn]
    _ [WithExpr]
    _ | Pattern -> Bool
    forall a. HasEllipsis a => a -> Bool
    hasEllipsis Pattern
    p -> [Char] -> Parser (List1 Declaration)
    forall a. [Char] -> Parser a
    parseError [Char]
    "The ellipsis ... cannot have a type signature"
            LHS Pattern
    _ [RewriteEqn]
    _ (WithExpr
    _:[WithExpr]
    _) -> [Char] -> Parser (List1 Declaration)
    forall a. [Char] -> Parser a
    parseError [Char]
    "Illegal: with in type signature"
            LHS Pattern
    _ (RewriteEqn
    _:[RewriteEqn]
    _) [WithExpr]
    _ -> [Char] -> Parser (List1 Declaration)
    forall a. [Char] -> Parser a
    parseError [Char]
    "Illegal: rewrite in type signature"
            LHS Pattern
    p [RewriteEqn]
    _ [WithExpr]
    _ | Pattern -> Bool
    forall p. CPatternLike p => p -> Bool
    hasWithPatterns Pattern
    p -> [Char] -> Parser (List1 Declaration)
    forall a. [Char] -> Parser a
    parseError [Char]
    "Illegal: with patterns in type signature"
            LHS Pattern
    p [] [] -> Parser (List1 (ArgInfo, Name))
    -> ((ArgInfo, Name) -> Parser Declaration)
    -> Parser (List1 Declaration)
    forall (t :: * -> *) (m :: * -> *) a b.
    (Traversable t, Monad m) =>
    m (t a) -> (a -> m b) -> m (t b)
    forMM (Pattern -> Parser (List1 (ArgInfo, Name))
    patternToNames Pattern
    p) (((ArgInfo, Name) -> Parser Declaration)
     -> Parser (List1 Declaration))
    -> ((ArgInfo, Name) -> Parser Declaration)
    -> Parser (List1 Declaration)
    forall a b. (a -> b) -> a -> b
    $ \ (ArgInfo
    info, Name
    x) -> do
              ArgInfo
    info <- [Attr] -> ArgInfo -> Parser ArgInfo
    forall a. LensAttribute a => [Attr] -> a -> Parser a
    applyAttrs [Attr]
    attrs ArgInfo
    info
              Declaration -> Parser Declaration
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Declaration -> Parser Declaration)
    -> Declaration -> Parser Declaration
    forall a b. (a -> b) -> a -> b
    $ ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    typeSig ArgInfo
    info ([Attr] -> Maybe Expr
    getTacticAttr [Attr]
    attrs) Name
    x Expr
    e
          WhereClause
    _ -> [Char] -> Parser (List1 Declaration)
    forall a. [Char] -> Parser a
    parseError [Char]
    "A type signature cannot have a where clause"

    parseDisplayPragma :: Range -> Position -> String -> Parser Pragma
    parseDisplayPragma :: Range -> Position -> [Char] -> Parser Pragma
    parseDisplayPragma Range
    r Position
    pos [Char]
    s =
      case Position
    -> ParseFlags
    -> [Int]
    -> Parser (List1 Declaration)
    -> [Char]
    -> ParseResult (List1 Declaration)
    forall a.
    Position
    -> ParseFlags -> [Int] -> Parser a -> [Char] -> ParseResult a
    parsePosString Position
    pos ParseFlags
    defaultParseFlags [Int
    normal] Parser (List1 Declaration)
    funclauseParser [Char]
    s of
        ParseOk ParseState
    s (FunClause (LHS Pattern
    lhs [] []) (RHS Expr
    rhs) WhereClause
    NoWhere Bool
    ca :| []) | [Char] -> Bool
    forall a. Null a => a -> Bool
    null (ParseState -> [Char]
    parseInp ParseState
    s) ->
          Pragma -> Parser Pragma
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Pragma -> Parser Pragma) -> Pragma -> Parser Pragma
    forall a b. (a -> b) -> a -> b
    $ Range -> Pattern -> Expr -> Pragma
    DisplayPragma Range
    r Pattern
    lhs Expr
    rhs
        ParseResult (List1 Declaration)
    _ -> [Char] -> Parser Pragma
    forall a. [Char] -> Parser a
    parseError [Char]
    "Invalid DISPLAY pragma. Should have form {-# DISPLAY LHS = RHS #-}."

    typeSig :: ArgInfo -> TacticAttribute -> Name -> Expr -> Declaration
    typeSig :: ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    typeSig ArgInfo
    i Maybe Expr
    tac Name
    n Expr
    e = ArgInfo -> Maybe Expr -> Name -> Expr -> Declaration
    TypeSig ArgInfo
    i Maybe Expr
    tac Name
    n (Expr -> Expr
    Generalized Expr
    e)

    -- * Attributes

    -- | Parsed attribute.

    data Attr = Attr
      { Attr -> Range
    attrRange :: Range       -- ^ Range includes the @.
      , Attr -> [Char]
    attrName  :: String      -- ^ Concrete, user written attribute for error reporting.
      , Attr -> Attribute
    theAttr   :: Attribute   -- ^ Parsed attribute.
      }

    instance HasRange Attr where
      getRange :: Attr -> Range
    getRange = Attr -> Range
    attrRange

    instance SetRange Attr where
      setRange :: Range -> Attr -> Attr
    setRange Range
    r (Attr Range
    _ [Char]
    x Attribute
    a) = Range -> [Char] -> Attribute -> Attr
    Attr Range
    r [Char]
    x Attribute
    a

    -- | Parse an attribute.
    toAttribute :: Expr -> Parser Attr
    toAttribute :: Expr -> Parser Attr
    toAttribute Expr
    x = Parser Attr
    -> (Attribute -> Parser Attr) -> Maybe Attribute -> Parser Attr
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe Parser Attr
    failure (Attr -> Parser Attr
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Attr -> Parser Attr)
    -> (Attribute -> Attr) -> Attribute -> Parser Attr
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Range -> [Char] -> Attribute -> Attr
    Attr (Expr -> Range
    forall a. HasRange a => a -> Range
    getRange Expr
    x) [Char]
    y) (Maybe Attribute -> Parser Attr) -> Maybe Attribute -> Parser Attr
    forall a b. (a -> b) -> a -> b
    $ Expr -> Maybe Attribute
    exprToAttribute Expr
    x
      where
      y :: [Char]
    y = Expr -> [Char]
    forall a. Pretty a => a -> [Char]
    prettyShow Expr
    x
      failure :: Parser Attr
    failure = Expr -> [Char] -> Parser Attr
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Expr
    x ([Char] -> Parser Attr) -> [Char] -> Parser Attr
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Unknown attribute: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [Char]
    y

    -- | Apply an attribute to thing (usually `Arg`).
    --   This will fail if one of the attributes is already set
    --   in the thing to something else than the default value.
    applyAttr :: (LensAttribute a) => Attr -> a -> Parser a
    applyAttr :: forall a. LensAttribute a => Attr -> a -> Parser a
    applyAttr attr :: Attr
    attr@(Attr Range
    r [Char]
    x Attribute
    a) = Parser a -> (a -> Parser a) -> Maybe a -> Parser a
    forall b a. b -> (a -> b) -> Maybe a -> b
    maybe Parser a
    failure a -> Parser a
    forall (m :: * -> *) a. Monad m => a -> m a
    return (Maybe a -> Parser a) -> (a -> Maybe a) -> a -> Parser a
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Attribute -> a -> Maybe a
    forall a. LensAttribute a => Attribute -> a -> Maybe a
    setPristineAttribute Attribute
    a
      where
      failure :: Parser a
    failure = Attr -> Parser a
    forall a. Attr -> Parser a
    errorConflictingAttribute Attr
    attr

    -- | Apply attributes to thing (usually `Arg`).
    --   Expects a reversed list of attributes.
    --   This will fail if one of the attributes is already set
    --   in the thing to something else than the default value.
    applyAttrs :: LensAttribute a => [Attr] -> a -> Parser a
    applyAttrs :: forall a. LensAttribute a => [Attr] -> a -> Parser a
    applyAttrs [Attr]
    rattrs a
    arg = do
      let attrs :: [Attr]
    attrs = [Attr] -> [Attr]
    forall a. [a] -> [a]
    reverse [Attr]
    rattrs
      (Attribute -> Bool) -> [Attr] -> Parser ()
    checkForUniqueAttribute (Maybe Quantity -> Bool
    forall a. Maybe a -> Bool
    isJust (Maybe Quantity -> Bool)
    -> (Attribute -> Maybe Quantity) -> Attribute -> Bool
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Attribute -> Maybe Quantity
    isQuantityAttribute ) [Attr]
    attrs
      (Attribute -> Bool) -> [Attr] -> Parser ()
    checkForUniqueAttribute (Maybe Relevance -> Bool
    forall a. Maybe a -> Bool
    isJust (Maybe Relevance -> Bool)
    -> (Attribute -> Maybe Relevance) -> Attribute -> Bool
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Attribute -> Maybe Relevance
    isRelevanceAttribute) [Attr]
    attrs
      (Attribute -> Bool) -> [Attr] -> Parser ()
    checkForUniqueAttribute (Maybe Expr -> Bool
    forall a. Maybe a -> Bool
    isJust (Maybe Expr -> Bool)
    -> (Attribute -> Maybe Expr) -> Attribute -> Bool
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Attribute -> Maybe Expr
    isTacticAttribute)    [Attr]
    attrs
      (a -> Attr -> Parser a) -> a -> [Attr] -> Parser a
    forall (t :: * -> *) (m :: * -> *) b a.
    (Foldable t, Monad m) =>
    (b -> a -> m b) -> b -> t a -> m b
    foldM ((Attr -> a -> Parser a) -> a -> Attr -> Parser a
    forall a b c. (a -> b -> c) -> b -> a -> c
    flip Attr -> a -> Parser a
    forall a. LensAttribute a => Attr -> a -> Parser a
    applyAttr) a
    arg [Attr]
    attrs

    applyAttrs1 :: LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 :: forall a. LensAttribute a => List1 Attr -> a -> Parser a
    applyAttrs1 = [Attr] -> a -> Parser a
    forall a. LensAttribute a => [Attr] -> a -> Parser a
    applyAttrs ([Attr] -> a -> Parser a)
    -> (List1 Attr -> [Attr]) -> List1 Attr -> a -> Parser a
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList

    -- | Set the tactic attribute of a binder
    setTacticAttr :: List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr :: List1 Attr -> NamedArg Binder -> NamedArg Binder
    setTacticAttr List1 Attr
    as = (Binder -> Binder) -> NamedArg Binder -> NamedArg Binder
    forall a b. (a -> b) -> NamedArg a -> NamedArg b
    updateNamedArg ((Binder -> Binder) -> NamedArg Binder -> NamedArg Binder)
    -> (Binder -> Binder) -> NamedArg Binder -> NamedArg Binder
    forall a b. (a -> b) -> a -> b
    $ (BoundName -> BoundName) -> Binder -> Binder
    forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
    fmap ((BoundName -> BoundName) -> Binder -> Binder)
    -> (BoundName -> BoundName) -> Binder -> Binder
    forall a b. (a -> b) -> a -> b
    $ \ BoundName
    b ->
      case [Attr] -> Maybe Expr
    getTacticAttr ([Attr] -> Maybe Expr) -> [Attr] -> Maybe Expr
    forall a b. (a -> b) -> a -> b
    $ List1 Attr -> [Attr]
    forall a. NonEmpty a -> [a]
    List1.toList List1 Attr
    as of
        Just Expr
    t  -> BoundName
    b { bnameTactic :: Maybe Expr
    bnameTactic = Expr -> Maybe Expr
    forall a. a -> Maybe a
    Just Expr
    t }
        Maybe Expr
    Nothing -> BoundName
    b

    -- | Get the tactic attribute if present.
    getTacticAttr :: [Attr] -> TacticAttribute
    getTacticAttr :: [Attr] -> Maybe Expr
    getTacticAttr [Attr]
    as =
      case [Attribute] -> [Attribute]
    tacticAttributes [ Attribute
    a | Attr Range
    _ [Char]
    _ Attribute
    a <- [Attr]
    as ] of
        [TacticAttribute Expr
    e] -> Expr -> Maybe Expr
    forall a. a -> Maybe a
    Just Expr
    e
        []                  -> Maybe Expr
    forall a. Maybe a
    Nothing
        [Attribute]
    _                   -> Maybe Expr
    forall a. HasCallStack => a
    __IMPOSSIBLE__

    -- | Report a parse error if two attributes in the list are of the same kind,
    --   thus, present conflicting information.
    checkForUniqueAttribute :: (Attribute -> Bool) -> [Attr] -> Parser ()
    checkForUniqueAttribute :: (Attribute -> Bool) -> [Attr] -> Parser ()
    checkForUniqueAttribute Attribute -> Bool
    p [Attr]
    attrs = do
      let pAttrs :: [Attr]
    pAttrs = (Attr -> Bool) -> [Attr] -> [Attr]
    forall a. (a -> Bool) -> [a] -> [a]
    filter (Attribute -> Bool
    p (Attribute -> Bool) -> (Attr -> Attribute) -> Attr -> Bool
    forall b c a. (b -> c) -> (a -> b) -> a -> c
    . Attr -> Attribute
    theAttr) [Attr]
    attrs
      Bool -> Parser () -> Parser ()
    forall (f :: * -> *). Applicative f => Bool -> f () -> f ()
    when ([Attr] -> Int
    forall (t :: * -> *) a. Foldable t => t a -> Int
    length [Attr]
    pAttrs Int -> Int -> Bool
    forall a. Ord a => a -> a -> Bool
    >= Int
    2) (Parser () -> Parser ()) -> Parser () -> Parser ()
    forall a b. (a -> b) -> a -> b
    $
        [Attr] -> Parser ()
    forall a. [Attr] -> Parser a
    errorConflictingAttributes [Attr]
    pAttrs

    -- | Report an attribute as conflicting (e.g., with an already set value).
    errorConflictingAttribute :: Attr -> Parser a
    errorConflictingAttribute :: forall a. Attr -> Parser a
    errorConflictingAttribute Attr
    a = Attr -> [Char] -> Parser a
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange Attr
    a ([Char] -> Parser a) -> [Char] -> Parser a
    forall a b. (a -> b) -> a -> b
    $ [Char]
    "Conflicting attribute: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ Attr -> [Char]
    attrName Attr
    a

    -- | Report attributes as conflicting (e.g., with each other).
    --   Precondition: List not emtpy.
    errorConflictingAttributes :: [Attr] -> Parser a
    errorConflictingAttributes :: forall a. [Attr] -> Parser a
    errorConflictingAttributes [Attr
    a] = Attr -> Parser a
    forall a. Attr -> Parser a
    errorConflictingAttribute Attr
    a
    errorConflictingAttributes [Attr]
    as  = [Attr] -> [Char] -> Parser a
    forall r a. HasRange r => r -> [Char] -> Parser a
    parseErrorRange [Attr]
    as ([Char] -> Parser a) -> [Char] -> Parser a
    forall a b. (a -> b) -> a -> b
    $
      [Char]
    "Conflicting attributes: " [Char] -> [Char] -> [Char]
    forall a. [a] -> [a] -> [a]
    ++ [[Char]] -> [Char]
    unwords ((Attr -> [Char]) -> [Attr] -> [[Char]]
    forall a b. (a -> b) -> [a] -> [b]
    map Attr -> [Char]
    attrName [Attr]
    as)
    {-# 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.