{-# OPTIONS_GHC -w #-}
{-# OPTIONS -XMagicHash -XBangPatterns -XTypeSynonymInstances -XFlexibleInstances -cpp #-}
#if __GLASGOW_HASKELL__ >= 710
{-# OPTIONS_GHC -XPartialTypeSignatures #-}
#endif
-- |
-- Module      :  Cryptol.Parser
-- Copyright   :  (c) 2013-2016 Galois, Inc.
-- License     :  BSD3
-- Maintainer  :  cryptol@galois.com
-- Stability   :  provisional
-- Portability :  portable

{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE Trustworthy #-}
module Cryptol.Parser
  ( parseModule
  , parseProgram, parseProgramWith
  , parseExpr, parseExprWith
  , parseDecl, parseDeclWith
  , parseDecls, parseDeclsWith
  , parseLetDecl, parseLetDeclWith
  , parseRepl, parseReplWith
  , parseSchema, parseSchemaWith
  , parseModName, parseHelpName
  , ParseError(..), ppError
  , Layout(..)
  , Config(..), defaultConfig
  , guessPreProc, PreProc(..)
  ) where

import           Control.Applicative as A
import           Data.Maybe(fromMaybe)
import           Data.List.NonEmpty ( NonEmpty(..), cons )
import           Data.Text(Text)
import qualified Data.Text as T
import           Control.Monad(liftM2,msum)

import Cryptol.Parser.AST
import Cryptol.Parser.Position
import Cryptol.Parser.LexerUtils hiding (mkIdent)
import Cryptol.Parser.Token
import Cryptol.Parser.ParserUtils
import Cryptol.Parser.Unlit(PreProc(..), guessPreProc)
import Cryptol.Utils.RecordMap(RecordMap)

import Paths_cryptol
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 HappyWrap15 = HappyWrap15 ([Module PName])
happyIn15 :: ([Module PName]) -> (HappyAbsSyn )
happyIn15 :: [Module PName] -> HappyAbsSyn
happyIn15 [Module PName]
x = HappyWrap15 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Module PName] -> HappyWrap15
HappyWrap15 [Module PName]
x)
{-# INLINE happyIn15 #-}
happyOut15 :: (HappyAbsSyn ) -> HappyWrap15
happyOut15 :: HappyAbsSyn -> HappyWrap15
happyOut15 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap15
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut15 #-}
newtype HappyWrap16 = HappyWrap16 (Module PName)
happyIn16 :: (Module PName) -> (HappyAbsSyn )
happyIn16 :: Module PName -> HappyAbsSyn
happyIn16 Module PName
x = HappyWrap16 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Module PName -> HappyWrap16
HappyWrap16 Module PName
x)
{-# INLINE happyIn16 #-}
happyOut16 :: (HappyAbsSyn ) -> HappyWrap16
happyOut16 :: HappyAbsSyn -> HappyWrap16
happyOut16 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap16
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut16 #-}
newtype HappyWrap17 = HappyWrap17 (ModuleInstanceArgs PName)
happyIn17 :: (ModuleInstanceArgs PName) -> (HappyAbsSyn )
happyIn17 :: ModuleInstanceArgs PName -> HappyAbsSyn
happyIn17 ModuleInstanceArgs PName
x = HappyWrap17 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (ModuleInstanceArgs PName -> HappyWrap17
HappyWrap17 ModuleInstanceArgs PName
x)
{-# INLINE happyIn17 #-}
happyOut17 :: (HappyAbsSyn ) -> HappyWrap17
happyOut17 :: HappyAbsSyn -> HappyWrap17
happyOut17 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap17
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut17 #-}
newtype HappyWrap18 = HappyWrap18 ([ ModuleInstanceNamedArg PName ])
happyIn18 :: ([ ModuleInstanceNamedArg PName ]) -> (HappyAbsSyn )
happyIn18 :: [ModuleInstanceNamedArg PName] -> HappyAbsSyn
happyIn18 [ModuleInstanceNamedArg PName]
x = HappyWrap18 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([ModuleInstanceNamedArg PName] -> HappyWrap18
HappyWrap18 [ModuleInstanceNamedArg PName]
x)
{-# INLINE happyIn18 #-}
happyOut18 :: (HappyAbsSyn ) -> HappyWrap18
happyOut18 :: HappyAbsSyn -> HappyWrap18
happyOut18 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap18
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut18 #-}
newtype HappyWrap19 = HappyWrap19 (ModuleInstanceNamedArg PName)
happyIn19 :: (ModuleInstanceNamedArg PName) -> (HappyAbsSyn )
happyIn19 :: ModuleInstanceNamedArg PName -> HappyAbsSyn
happyIn19 ModuleInstanceNamedArg PName
x = HappyWrap19 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (ModuleInstanceNamedArg PName -> HappyWrap19
HappyWrap19 ModuleInstanceNamedArg PName
x)
{-# INLINE happyIn19 #-}
happyOut19 :: (HappyAbsSyn ) -> HappyWrap19
happyOut19 :: HappyAbsSyn -> HappyWrap19
happyOut19 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap19
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut19 #-}
newtype HappyWrap20 = HappyWrap20 (Located (ModuleInstanceArg PName))
happyIn20 :: (Located (ModuleInstanceArg PName)) -> (HappyAbsSyn )
happyIn20 :: Located (ModuleInstanceArg PName) -> HappyAbsSyn
happyIn20 Located (ModuleInstanceArg PName)
x = HappyWrap20 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located (ModuleInstanceArg PName) -> HappyWrap20
HappyWrap20 Located (ModuleInstanceArg PName)
x)
{-# INLINE happyIn20 #-}
happyOut20 :: (HappyAbsSyn ) -> HappyWrap20
happyOut20 :: HappyAbsSyn -> HappyWrap20
happyOut20 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap20
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut20 #-}
newtype HappyWrap21 = HappyWrap21 ([TopDecl PName])
happyIn21 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn21 :: [TopDecl PName] -> HappyAbsSyn
happyIn21 [TopDecl PName]
x = HappyWrap21 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap21
HappyWrap21 [TopDecl PName]
x)
{-# INLINE happyIn21 #-}
happyOut21 :: (HappyAbsSyn ) -> HappyWrap21
happyOut21 :: HappyAbsSyn -> HappyWrap21
happyOut21 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap21
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut21 #-}
newtype HappyWrap22 = HappyWrap22 ([ Located (ImportG (ImpName PName)) ])
happyIn22 :: ([ Located (ImportG (ImpName PName)) ]) -> (HappyAbsSyn )
happyIn22 :: [Located (ImportG (ImpName PName))] -> HappyAbsSyn
happyIn22 [Located (ImportG (ImpName PName))]
x = HappyWrap22 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Located (ImportG (ImpName PName))] -> HappyWrap22
HappyWrap22 [Located (ImportG (ImpName PName))]
x)
{-# INLINE happyIn22 #-}
happyOut22 :: (HappyAbsSyn ) -> HappyWrap22
happyOut22 :: HappyAbsSyn -> HappyWrap22
happyOut22 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap22
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut22 #-}
newtype HappyWrap23 = HappyWrap23 (Located (ImportG (ImpName PName)))
happyIn23 :: (Located (ImportG (ImpName PName))) -> (HappyAbsSyn )
happyIn23 :: Located (ImportG (ImpName PName)) -> HappyAbsSyn
happyIn23 Located (ImportG (ImpName PName))
x = HappyWrap23 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located (ImportG (ImpName PName)) -> HappyWrap23
HappyWrap23 Located (ImportG (ImpName PName))
x)
{-# INLINE happyIn23 #-}
happyOut23 :: (HappyAbsSyn ) -> HappyWrap23
happyOut23 :: HappyAbsSyn -> HappyWrap23
happyOut23 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap23
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut23 #-}
newtype HappyWrap24 = HappyWrap24 (Maybe (Located [Decl PName]))
happyIn24 :: (Maybe (Located [Decl PName])) -> (HappyAbsSyn )
happyIn24 :: Maybe (Located [Decl PName]) -> HappyAbsSyn
happyIn24 Maybe (Located [Decl PName])
x = HappyWrap24 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Maybe (Located [Decl PName]) -> HappyWrap24
HappyWrap24 Maybe (Located [Decl PName])
x)
{-# INLINE happyIn24 #-}
happyOut24 :: (HappyAbsSyn ) -> HappyWrap24
happyOut24 :: HappyAbsSyn -> HappyWrap24
happyOut24 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap24
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut24 #-}
newtype HappyWrap25 = HappyWrap25 (Maybe (ModuleInstanceArgs PName))
happyIn25 :: (Maybe (ModuleInstanceArgs PName)) -> (HappyAbsSyn )
happyIn25 :: Maybe (ModuleInstanceArgs PName) -> HappyAbsSyn
happyIn25 Maybe (ModuleInstanceArgs PName)
x = HappyWrap25 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Maybe (ModuleInstanceArgs PName) -> HappyWrap25
HappyWrap25 Maybe (ModuleInstanceArgs PName)
x)
{-# INLINE happyIn25 #-}
happyOut25 :: (HappyAbsSyn ) -> HappyWrap25
happyOut25 :: HappyAbsSyn -> HappyWrap25
happyOut25 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap25
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut25 #-}
newtype HappyWrap26 = HappyWrap26 (Located (ImpName PName))
happyIn26 :: (Located (ImpName PName)) -> (HappyAbsSyn )
happyIn26 :: Located (ImpName PName) -> HappyAbsSyn
happyIn26 Located (ImpName PName)
x = HappyWrap26 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located (ImpName PName) -> HappyWrap26
HappyWrap26 Located (ImpName PName)
x)
{-# INLINE happyIn26 #-}
happyOut26 :: (HappyAbsSyn ) -> HappyWrap26
happyOut26 :: HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap26
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut26 #-}
newtype HappyWrap27 = HappyWrap27 (Located (ImpName PName))
happyIn27 :: (Located (ImpName PName)) -> (HappyAbsSyn )
happyIn27 :: Located (ImpName PName) -> HappyAbsSyn
happyIn27 Located (ImpName PName)
x = HappyWrap27 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located (ImpName PName) -> HappyWrap27
HappyWrap27 Located (ImpName PName)
x)
{-# INLINE happyIn27 #-}
happyOut27 :: (HappyAbsSyn ) -> HappyWrap27
happyOut27 :: HappyAbsSyn -> HappyWrap27
happyOut27 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap27
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut27 #-}
newtype HappyWrap28 = HappyWrap28 (Maybe (Located ModName))
happyIn28 :: (Maybe (Located ModName)) -> (HappyAbsSyn )
happyIn28 :: Maybe (Located ModName) -> HappyAbsSyn
happyIn28 Maybe (Located ModName)
x = HappyWrap28 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Maybe (Located ModName) -> HappyWrap28
HappyWrap28 Maybe (Located ModName)
x)
{-# INLINE happyIn28 #-}
happyOut28 :: (HappyAbsSyn ) -> HappyWrap28
happyOut28 :: HappyAbsSyn -> HappyWrap28
happyOut28 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap28
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut28 #-}
newtype HappyWrap29 = HappyWrap29 (Maybe (Located ImportSpec))
happyIn29 :: (Maybe (Located ImportSpec)) -> (HappyAbsSyn )
happyIn29 :: Maybe (Located ImportSpec) -> HappyAbsSyn
happyIn29 Maybe (Located ImportSpec)
x = HappyWrap29 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Maybe (Located ImportSpec) -> HappyWrap29
HappyWrap29 Maybe (Located ImportSpec)
x)
{-# INLINE happyIn29 #-}
happyOut29 :: (HappyAbsSyn ) -> HappyWrap29
happyOut29 :: HappyAbsSyn -> HappyWrap29
happyOut29 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap29
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut29 #-}
newtype HappyWrap30 = HappyWrap30 ([LIdent])
happyIn30 :: ([LIdent]) -> (HappyAbsSyn )
happyIn30 :: [LIdent] -> HappyAbsSyn
happyIn30 [LIdent]
x = HappyWrap30 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([LIdent] -> HappyWrap30
HappyWrap30 [LIdent]
x)
{-# INLINE happyIn30 #-}
happyOut30 :: (HappyAbsSyn ) -> HappyWrap30
happyOut30 :: HappyAbsSyn -> HappyWrap30
happyOut30 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap30
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut30 #-}
newtype HappyWrap31 = HappyWrap31 ([Ident] -> ImportSpec)
happyIn31 :: ([Ident] -> ImportSpec) -> (HappyAbsSyn )
happyIn31 :: ([Ident] -> ImportSpec) -> HappyAbsSyn
happyIn31 [Ident] -> ImportSpec
x = HappyWrap31 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (([Ident] -> ImportSpec) -> HappyWrap31
HappyWrap31 [Ident] -> ImportSpec
x)
{-# INLINE happyIn31 #-}
happyOut31 :: (HappyAbsSyn ) -> HappyWrap31
happyOut31 :: HappyAbsSyn -> HappyWrap31
happyOut31 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap31
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut31 #-}
newtype HappyWrap32 = HappyWrap32 (Program PName)
happyIn32 :: (Program PName) -> (HappyAbsSyn )
happyIn32 :: Program PName -> HappyAbsSyn
happyIn32 Program PName
x = HappyWrap32 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Program PName -> HappyWrap32
HappyWrap32 Program PName
x)
{-# INLINE happyIn32 #-}
happyOut32 :: (HappyAbsSyn ) -> HappyWrap32
happyOut32 :: HappyAbsSyn -> HappyWrap32
happyOut32 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap32
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut32 #-}
newtype HappyWrap33 = HappyWrap33 (Program PName)
happyIn33 :: (Program PName) -> (HappyAbsSyn )
happyIn33 :: Program PName -> HappyAbsSyn
happyIn33 Program PName
x = HappyWrap33 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Program PName -> HappyWrap33
HappyWrap33 Program PName
x)
{-# INLINE happyIn33 #-}
happyOut33 :: (HappyAbsSyn ) -> HappyWrap33
happyOut33 :: HappyAbsSyn -> HappyWrap33
happyOut33 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap33
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut33 #-}
newtype HappyWrap34 = HappyWrap34 ([TopDecl PName])
happyIn34 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn34 :: [TopDecl PName] -> HappyAbsSyn
happyIn34 [TopDecl PName]
x = HappyWrap34 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap34
HappyWrap34 [TopDecl PName]
x)
{-# INLINE happyIn34 #-}
happyOut34 :: (HappyAbsSyn ) -> HappyWrap34
happyOut34 :: HappyAbsSyn -> HappyWrap34
happyOut34 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap34
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut34 #-}
newtype HappyWrap35 = HappyWrap35 ([TopDecl PName])
happyIn35 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn35 :: [TopDecl PName] -> HappyAbsSyn
happyIn35 [TopDecl PName]
x = HappyWrap35 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap35
HappyWrap35 [TopDecl PName]
x)
{-# INLINE happyIn35 #-}
happyOut35 :: (HappyAbsSyn ) -> HappyWrap35
happyOut35 :: HappyAbsSyn -> HappyWrap35
happyOut35 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap35
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut35 #-}
newtype HappyWrap36 = HappyWrap36 ([TopDecl PName])
happyIn36 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn36 :: [TopDecl PName] -> HappyAbsSyn
happyIn36 [TopDecl PName]
x = HappyWrap36 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap36
HappyWrap36 [TopDecl PName]
x)
{-# INLINE happyIn36 #-}
happyOut36 :: (HappyAbsSyn ) -> HappyWrap36
happyOut36 :: HappyAbsSyn -> HappyWrap36
happyOut36 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap36
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut36 #-}
newtype HappyWrap37 = HappyWrap37 ((Located PName, Signature PName))
happyIn37 :: ((Located PName, Signature PName)) -> (HappyAbsSyn )
happyIn37 :: (Located PName, Signature PName) -> HappyAbsSyn
happyIn37 (Located PName, Signature PName)
x = HappyWrap37 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ((Located PName, Signature PName) -> HappyWrap37
HappyWrap37 (Located PName, Signature PName)
x)
{-# INLINE happyIn37 #-}
happyOut37 :: (HappyAbsSyn ) -> HappyWrap37
happyOut37 :: HappyAbsSyn -> HappyWrap37
happyOut37 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap37
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut37 #-}
newtype HappyWrap38 = HappyWrap38 (Signature PName)
happyIn38 :: (Signature PName) -> (HappyAbsSyn )
happyIn38 :: Signature PName -> HappyAbsSyn
happyIn38 Signature PName
x = HappyWrap38 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Signature PName -> HappyWrap38
HappyWrap38 Signature PName
x)
{-# INLINE happyIn38 #-}
happyOut38 :: (HappyAbsSyn ) -> HappyWrap38
happyOut38 :: HappyAbsSyn -> HappyWrap38
happyOut38 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap38
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut38 #-}
newtype HappyWrap39 = HappyWrap39 (ModParam PName)
happyIn39 :: (ModParam PName) -> (HappyAbsSyn )
happyIn39 :: ModParam PName -> HappyAbsSyn
happyIn39 ModParam PName
x = HappyWrap39 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (ModParam PName -> HappyWrap39
HappyWrap39 ModParam PName
x)
{-# INLINE happyIn39 #-}
happyOut39 :: (HappyAbsSyn ) -> HappyWrap39
happyOut39 :: HappyAbsSyn -> HappyWrap39
happyOut39 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap39
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut39 #-}
newtype HappyWrap40 = HappyWrap40 ([TopDecl PName])
happyIn40 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn40 :: [TopDecl PName] -> HappyAbsSyn
happyIn40 [TopDecl PName]
x = HappyWrap40 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap40
HappyWrap40 [TopDecl PName]
x)
{-# INLINE happyIn40 #-}
happyOut40 :: (HappyAbsSyn ) -> HappyWrap40
happyOut40 :: HappyAbsSyn -> HappyWrap40
happyOut40 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap40
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut40 #-}
newtype HappyWrap41 = HappyWrap41 ([TopDecl PName])
happyIn41 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn41 :: [TopDecl PName] -> HappyAbsSyn
happyIn41 [TopDecl PName]
x = HappyWrap41 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap41
HappyWrap41 [TopDecl PName]
x)
{-# INLINE happyIn41 #-}
happyOut41 :: (HappyAbsSyn ) -> HappyWrap41
happyOut41 :: HappyAbsSyn -> HappyWrap41
happyOut41 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap41
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut41 #-}
newtype HappyWrap42 = HappyWrap42 ([TopDecl PName])
happyIn42 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn42 :: [TopDecl PName] -> HappyAbsSyn
happyIn42 [TopDecl PName]
x = HappyWrap42 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap42
HappyWrap42 [TopDecl PName]
x)
{-# INLINE happyIn42 #-}
happyOut42 :: (HappyAbsSyn ) -> HappyWrap42
happyOut42 :: HappyAbsSyn -> HappyWrap42
happyOut42 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap42
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut42 #-}
newtype HappyWrap43 = HappyWrap43 ([TopDecl PName])
happyIn43 :: ([TopDecl PName]) -> (HappyAbsSyn )
happyIn43 :: [TopDecl PName] -> HappyAbsSyn
happyIn43 [TopDecl PName]
x = HappyWrap43 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopDecl PName] -> HappyWrap43
HappyWrap43 [TopDecl PName]
x)
{-# INLINE happyIn43 #-}
happyOut43 :: (HappyAbsSyn ) -> HappyWrap43
happyOut43 :: HappyAbsSyn -> HappyWrap43
happyOut43 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap43
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut43 #-}
newtype HappyWrap44 = HappyWrap44 (TopDecl PName)
happyIn44 :: (TopDecl PName) -> (HappyAbsSyn )
happyIn44 :: TopDecl PName -> HappyAbsSyn
happyIn44 TopDecl PName
x = HappyWrap44 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (TopDecl PName -> HappyWrap44
HappyWrap44 TopDecl PName
x)
{-# INLINE happyIn44 #-}
happyOut44 :: (HappyAbsSyn ) -> HappyWrap44
happyOut44 :: HappyAbsSyn -> HappyWrap44
happyOut44 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap44
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut44 #-}
newtype HappyWrap45 = HappyWrap45 ([ParamDecl PName])
happyIn45 :: ([ParamDecl PName]) -> (HappyAbsSyn )
happyIn45 :: [ParamDecl PName] -> HappyAbsSyn
happyIn45 [ParamDecl PName]
x = HappyWrap45 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([ParamDecl PName] -> HappyWrap45
HappyWrap45 [ParamDecl PName]
x)
{-# INLINE happyIn45 #-}
happyOut45 :: (HappyAbsSyn ) -> HappyWrap45
happyOut45 :: HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap45
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut45 #-}
newtype HappyWrap46 = HappyWrap46 (ParamDecl PName)
happyIn46 :: (ParamDecl PName) -> (HappyAbsSyn )
happyIn46 :: ParamDecl PName -> HappyAbsSyn
happyIn46 ParamDecl PName
x = HappyWrap46 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (ParamDecl PName -> HappyWrap46
HappyWrap46 ParamDecl PName
x)
{-# INLINE happyIn46 #-}
happyOut46 :: (HappyAbsSyn ) -> HappyWrap46
happyOut46 :: HappyAbsSyn -> HappyWrap46
happyOut46 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap46
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut46 #-}
newtype HappyWrap47 = HappyWrap47 (Located Text)
happyIn47 :: (Located Text) -> (HappyAbsSyn )
happyIn47 :: Located Text -> HappyAbsSyn
happyIn47 Located Text
x = HappyWrap47 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located Text -> HappyWrap47
HappyWrap47 Located Text
x)
{-# INLINE happyIn47 #-}
happyOut47 :: (HappyAbsSyn ) -> HappyWrap47
happyOut47 :: HappyAbsSyn -> HappyWrap47
happyOut47 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap47
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut47 #-}
newtype HappyWrap48 = HappyWrap48 (Maybe (Located Text))
happyIn48 :: (Maybe (Located Text)) -> (HappyAbsSyn )
happyIn48 :: Maybe (Located Text) -> HappyAbsSyn
happyIn48 Maybe (Located Text)
x = HappyWrap48 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Maybe (Located Text) -> HappyWrap48
HappyWrap48 Maybe (Located Text)
x)
{-# INLINE happyIn48 #-}
happyOut48 :: (HappyAbsSyn ) -> HappyWrap48
happyOut48 :: HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap48
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut48 #-}
newtype HappyWrap49 = HappyWrap49 (Decl PName)
happyIn49 :: (Decl PName) -> (HappyAbsSyn )
happyIn49 :: Decl PName -> HappyAbsSyn
happyIn49 Decl PName
x = HappyWrap49 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Decl PName -> HappyWrap49
HappyWrap49 Decl PName
x)
{-# INLINE happyIn49 #-}
happyOut49 :: (HappyAbsSyn ) -> HappyWrap49
happyOut49 :: HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap49
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut49 #-}
newtype HappyWrap50 = HappyWrap50 ([Decl PName])
happyIn50 :: ([Decl PName]) -> (HappyAbsSyn )
happyIn50 :: [Decl PName] -> HappyAbsSyn
happyIn50 [Decl PName]
x = HappyWrap50 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Decl PName] -> HappyWrap50
HappyWrap50 [Decl PName]
x)
{-# INLINE happyIn50 #-}
happyOut50 :: (HappyAbsSyn ) -> HappyWrap50
happyOut50 :: HappyAbsSyn -> HappyWrap50
happyOut50 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap50
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut50 #-}
newtype HappyWrap51 = HappyWrap51 (Decl PName)
happyIn51 :: (Decl PName) -> (HappyAbsSyn )
happyIn51 :: Decl PName -> HappyAbsSyn
happyIn51 Decl PName
x = HappyWrap51 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Decl PName -> HappyWrap51
HappyWrap51 Decl PName
x)
{-# INLINE happyIn51 #-}
happyOut51 :: (HappyAbsSyn ) -> HappyWrap51
happyOut51 :: HappyAbsSyn -> HappyWrap51
happyOut51 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap51
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut51 #-}
newtype HappyWrap52 = HappyWrap52 (Decl PName)
happyIn52 :: (Decl PName) -> (HappyAbsSyn )
happyIn52 :: Decl PName -> HappyAbsSyn
happyIn52 Decl PName
x = HappyWrap52 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Decl PName -> HappyWrap52
HappyWrap52 Decl PName
x)
{-# INLINE happyIn52 #-}
happyOut52 :: (HappyAbsSyn ) -> HappyWrap52
happyOut52 :: HappyAbsSyn -> HappyWrap52
happyOut52 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap52
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut52 #-}
newtype HappyWrap53 = HappyWrap53 (Located [Prop PName])
happyIn53 :: (Located [Prop PName]) -> (HappyAbsSyn )
happyIn53 :: Located [Prop PName] -> HappyAbsSyn
happyIn53 Located [Prop PName]
x = HappyWrap53 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [Prop PName] -> HappyWrap53
HappyWrap53 Located [Prop PName]
x)
{-# INLINE happyIn53 #-}
happyOut53 :: (HappyAbsSyn ) -> HappyWrap53
happyOut53 :: HappyAbsSyn -> HappyWrap53
happyOut53 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap53
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut53 #-}
newtype HappyWrap54 = HappyWrap54 ([PropGuardCase PName])
happyIn54 :: ([PropGuardCase PName]) -> (HappyAbsSyn )
happyIn54 :: [PropGuardCase PName] -> HappyAbsSyn
happyIn54 [PropGuardCase PName]
x = HappyWrap54 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([PropGuardCase PName] -> HappyWrap54
HappyWrap54 [PropGuardCase PName]
x)
{-# INLINE happyIn54 #-}
happyOut54 :: (HappyAbsSyn ) -> HappyWrap54
happyOut54 :: HappyAbsSyn -> HappyWrap54
happyOut54 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap54
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut54 #-}
newtype HappyWrap55 = HappyWrap55 (PropGuardCase PName)
happyIn55 :: (PropGuardCase PName) -> (HappyAbsSyn )
happyIn55 :: PropGuardCase PName -> HappyAbsSyn
happyIn55 PropGuardCase PName
x = HappyWrap55 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (PropGuardCase PName -> HappyWrap55
HappyWrap55 PropGuardCase PName
x)
{-# INLINE happyIn55 #-}
happyOut55 :: (HappyAbsSyn ) -> HappyWrap55
happyOut55 :: HappyAbsSyn -> HappyWrap55
happyOut55 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap55
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut55 #-}
newtype HappyWrap56 = HappyWrap56 ([Located (Prop PName)])
happyIn56 :: ([Located (Prop PName)]) -> (HappyAbsSyn )
happyIn56 :: [Located (Prop PName)] -> HappyAbsSyn
happyIn56 [Located (Prop PName)]
x = HappyWrap56 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Located (Prop PName)] -> HappyWrap56
HappyWrap56 [Located (Prop PName)]
x)
{-# INLINE happyIn56 #-}
happyOut56 :: (HappyAbsSyn ) -> HappyWrap56
happyOut56 :: HappyAbsSyn -> HappyWrap56
happyOut56 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap56
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut56 #-}
newtype HappyWrap57 = HappyWrap57 (Newtype PName)
happyIn57 :: (Newtype PName) -> (HappyAbsSyn )
happyIn57 :: Newtype PName -> HappyAbsSyn
happyIn57 Newtype PName
x = HappyWrap57 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Newtype PName -> HappyWrap57
HappyWrap57 Newtype PName
x)
{-# INLINE happyIn57 #-}
happyOut57 :: (HappyAbsSyn ) -> HappyWrap57
happyOut57 :: HappyAbsSyn -> HappyWrap57
happyOut57 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap57
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut57 #-}
newtype HappyWrap58 = HappyWrap58 (Located (RecordMap Ident (Range, Type PName)))
happyIn58 :: (Located (RecordMap Ident (Range, Type PName))) -> (HappyAbsSyn )
happyIn58 :: Located (RecordMap Ident (Range, Type PName)) -> HappyAbsSyn
happyIn58 Located (RecordMap Ident (Range, Type PName))
x = HappyWrap58 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located (RecordMap Ident (Range, Type PName)) -> HappyWrap58
HappyWrap58 Located (RecordMap Ident (Range, Type PName))
x)
{-# INLINE happyIn58 #-}
happyOut58 :: (HappyAbsSyn ) -> HappyWrap58
happyOut58 :: HappyAbsSyn -> HappyWrap58
happyOut58 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap58
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut58 #-}
newtype HappyWrap59 = HappyWrap59 (EnumDecl PName)
happyIn59 :: (EnumDecl PName) -> (HappyAbsSyn )
happyIn59 :: EnumDecl PName -> HappyAbsSyn
happyIn59 EnumDecl PName
x = HappyWrap59 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (EnumDecl PName -> HappyWrap59
HappyWrap59 EnumDecl PName
x)
{-# INLINE happyIn59 #-}
happyOut59 :: (HappyAbsSyn ) -> HappyWrap59
happyOut59 :: HappyAbsSyn -> HappyWrap59
happyOut59 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap59
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut59 #-}
newtype HappyWrap60 = HappyWrap60 ([TopLevel (EnumCon PName)])
happyIn60 :: ([TopLevel (EnumCon PName)]) -> (HappyAbsSyn )
happyIn60 :: [TopLevel (EnumCon PName)] -> HappyAbsSyn
happyIn60 [TopLevel (EnumCon PName)]
x = HappyWrap60 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TopLevel (EnumCon PName)] -> HappyWrap60
HappyWrap60 [TopLevel (EnumCon PName)]
x)
{-# INLINE happyIn60 #-}
happyOut60 :: (HappyAbsSyn ) -> HappyWrap60
happyOut60 :: HappyAbsSyn -> HappyWrap60
happyOut60 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap60
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut60 #-}
newtype HappyWrap61 = HappyWrap61 (TopLevel (EnumCon PName))
happyIn61 :: (TopLevel (EnumCon PName)) -> (HappyAbsSyn )
happyIn61 :: TopLevel (EnumCon PName) -> HappyAbsSyn
happyIn61 TopLevel (EnumCon PName)
x = HappyWrap61 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (TopLevel (EnumCon PName) -> HappyWrap61
HappyWrap61 TopLevel (EnumCon PName)
x)
{-# INLINE happyIn61 #-}
happyOut61 :: (HappyAbsSyn ) -> HappyWrap61
happyOut61 :: HappyAbsSyn -> HappyWrap61
happyOut61 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap61
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut61 #-}
newtype HappyWrap62 = HappyWrap62 ([ LPName ])
happyIn62 :: ([ LPName ]) -> (HappyAbsSyn )
happyIn62 :: [Located PName] -> HappyAbsSyn
happyIn62 [Located PName]
x = HappyWrap62 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Located PName] -> HappyWrap62
HappyWrap62 [Located PName]
x)
{-# INLINE happyIn62 #-}
happyOut62 :: (HappyAbsSyn ) -> HappyWrap62
happyOut62 :: HappyAbsSyn -> HappyWrap62
happyOut62 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap62
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut62 #-}
newtype HappyWrap63 = HappyWrap63 (LPName)
happyIn63 :: (LPName) -> (HappyAbsSyn )
happyIn63 :: Located PName -> HappyAbsSyn
happyIn63 Located PName
x = HappyWrap63 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap63
HappyWrap63 Located PName
x)
{-# INLINE happyIn63 #-}
happyOut63 :: (HappyAbsSyn ) -> HappyWrap63
happyOut63 :: HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap63
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut63 #-}
newtype HappyWrap64 = HappyWrap64 ([Decl PName])
happyIn64 :: ([Decl PName]) -> (HappyAbsSyn )
happyIn64 :: [Decl PName] -> HappyAbsSyn
happyIn64 [Decl PName]
x = HappyWrap64 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Decl PName] -> HappyWrap64
HappyWrap64 [Decl PName]
x)
{-# INLINE happyIn64 #-}
happyOut64 :: (HappyAbsSyn ) -> HappyWrap64
happyOut64 :: HappyAbsSyn -> HappyWrap64
happyOut64 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap64
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut64 #-}
newtype HappyWrap65 = HappyWrap65 ([Decl PName])
happyIn65 :: ([Decl PName]) -> (HappyAbsSyn )
happyIn65 :: [Decl PName] -> HappyAbsSyn
happyIn65 [Decl PName]
x = HappyWrap65 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Decl PName] -> HappyWrap65
HappyWrap65 [Decl PName]
x)
{-# INLINE happyIn65 #-}
happyOut65 :: (HappyAbsSyn ) -> HappyWrap65
happyOut65 :: HappyAbsSyn -> HappyWrap65
happyOut65 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap65
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut65 #-}
newtype HappyWrap66 = HappyWrap66 ([Decl PName])
happyIn66 :: ([Decl PName]) -> (HappyAbsSyn )
happyIn66 :: [Decl PName] -> HappyAbsSyn
happyIn66 [Decl PName]
x = HappyWrap66 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Decl PName] -> HappyWrap66
HappyWrap66 [Decl PName]
x)
{-# INLINE happyIn66 #-}
happyOut66 :: (HappyAbsSyn ) -> HappyWrap66
happyOut66 :: HappyAbsSyn -> HappyWrap66
happyOut66 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap66
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut66 #-}
newtype HappyWrap67 = HappyWrap67 (ReplInput PName)
happyIn67 :: (ReplInput PName) -> (HappyAbsSyn )
happyIn67 :: ReplInput PName -> HappyAbsSyn
happyIn67 ReplInput PName
x = HappyWrap67 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (ReplInput PName -> HappyWrap67
HappyWrap67 ReplInput PName
x)
{-# INLINE happyIn67 #-}
happyOut67 :: (HappyAbsSyn ) -> HappyWrap67
happyOut67 :: HappyAbsSyn -> HappyWrap67
happyOut67 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap67
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut67 #-}
newtype HappyWrap68 = HappyWrap68 (LPName)
happyIn68 :: (LPName) -> (HappyAbsSyn )
happyIn68 :: Located PName -> HappyAbsSyn
happyIn68 Located PName
x = HappyWrap68 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap68
HappyWrap68 Located PName
x)
{-# INLINE happyIn68 #-}
happyOut68 :: (HappyAbsSyn ) -> HappyWrap68
happyOut68 :: HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap68
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut68 #-}
newtype HappyWrap69 = HappyWrap69 (LPName)
happyIn69 :: (LPName) -> (HappyAbsSyn )
happyIn69 :: Located PName -> HappyAbsSyn
happyIn69 Located PName
x = HappyWrap69 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap69
HappyWrap69 Located PName
x)
{-# INLINE happyIn69 #-}
happyOut69 :: (HappyAbsSyn ) -> HappyWrap69
happyOut69 :: HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap69
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut69 #-}
newtype HappyWrap70 = HappyWrap70 (LPName)
happyIn70 :: (LPName) -> (HappyAbsSyn )
happyIn70 :: Located PName -> HappyAbsSyn
happyIn70 Located PName
x = HappyWrap70 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap70
HappyWrap70 Located PName
x)
{-# INLINE happyIn70 #-}
happyOut70 :: (HappyAbsSyn ) -> HappyWrap70
happyOut70 :: HappyAbsSyn -> HappyWrap70
happyOut70 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap70
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut70 #-}
newtype HappyWrap71 = HappyWrap71 (LPName)
happyIn71 :: (LPName) -> (HappyAbsSyn )
happyIn71 :: Located PName -> HappyAbsSyn
happyIn71 Located PName
x = HappyWrap71 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap71
HappyWrap71 Located PName
x)
{-# INLINE happyIn71 #-}
happyOut71 :: (HappyAbsSyn ) -> HappyWrap71
happyOut71 :: HappyAbsSyn -> HappyWrap71
happyOut71 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap71
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut71 #-}
newtype HappyWrap72 = HappyWrap72 ([LPName])
happyIn72 :: ([LPName]) -> (HappyAbsSyn )
happyIn72 :: [Located PName] -> HappyAbsSyn
happyIn72 [Located PName]
x = HappyWrap72 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Located PName] -> HappyWrap72
HappyWrap72 [Located PName]
x)
{-# INLINE happyIn72 #-}
happyOut72 :: (HappyAbsSyn ) -> HappyWrap72
happyOut72 :: HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap72
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut72 #-}
newtype HappyWrap73 = HappyWrap73 (Expr PName)
happyIn73 :: (Expr PName) -> (HappyAbsSyn )
happyIn73 :: Expr PName -> HappyAbsSyn
happyIn73 Expr PName
x = HappyWrap73 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap73
HappyWrap73 Expr PName
x)
{-# INLINE happyIn73 #-}
happyOut73 :: (HappyAbsSyn ) -> HappyWrap73
happyOut73 :: HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap73
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut73 #-}
newtype HappyWrap74 = HappyWrap74 (Expr PName)
happyIn74 :: (Expr PName) -> (HappyAbsSyn )
happyIn74 :: Expr PName -> HappyAbsSyn
happyIn74 Expr PName
x = HappyWrap74 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap74
HappyWrap74 Expr PName
x)
{-# INLINE happyIn74 #-}
happyOut74 :: (HappyAbsSyn ) -> HappyWrap74
happyOut74 :: HappyAbsSyn -> HappyWrap74
happyOut74 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap74
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut74 #-}
newtype HappyWrap75 = HappyWrap75 (Located [Decl PName])
happyIn75 :: (Located [Decl PName]) -> (HappyAbsSyn )
happyIn75 :: Located [Decl PName] -> HappyAbsSyn
happyIn75 Located [Decl PName]
x = HappyWrap75 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [Decl PName] -> HappyWrap75
HappyWrap75 Located [Decl PName]
x)
{-# INLINE happyIn75 #-}
happyOut75 :: (HappyAbsSyn ) -> HappyWrap75
happyOut75 :: HappyAbsSyn -> HappyWrap75
happyOut75 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap75
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut75 #-}
newtype HappyWrap76 = HappyWrap76 (Expr PName)
happyIn76 :: (Expr PName) -> (HappyAbsSyn )
happyIn76 :: Expr PName -> HappyAbsSyn
happyIn76 Expr PName
x = HappyWrap76 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap76
HappyWrap76 Expr PName
x)
{-# INLINE happyIn76 #-}
happyOut76 :: (HappyAbsSyn ) -> HappyWrap76
happyOut76 :: HappyAbsSyn -> HappyWrap76
happyOut76 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap76
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut76 #-}
newtype HappyWrap77 = HappyWrap77 (Expr PName)
happyIn77 :: (Expr PName) -> (HappyAbsSyn )
happyIn77 :: Expr PName -> HappyAbsSyn
happyIn77 Expr PName
x = HappyWrap77 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap77
HappyWrap77 Expr PName
x)
{-# INLINE happyIn77 #-}
happyOut77 :: (HappyAbsSyn ) -> HappyWrap77
happyOut77 :: HappyAbsSyn -> HappyWrap77
happyOut77 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap77
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut77 #-}
newtype HappyWrap78 = HappyWrap78 (Expr PName)
happyIn78 :: (Expr PName) -> (HappyAbsSyn )
happyIn78 :: Expr PName -> HappyAbsSyn
happyIn78 Expr PName
x = HappyWrap78 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap78
HappyWrap78 Expr PName
x)
{-# INLINE happyIn78 #-}
happyOut78 :: (HappyAbsSyn ) -> HappyWrap78
happyOut78 :: HappyAbsSyn -> HappyWrap78
happyOut78 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap78
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut78 #-}
newtype HappyWrap79 = HappyWrap79 ([(Expr PName, Expr PName)])
happyIn79 :: ([(Expr PName, Expr PName)]) -> (HappyAbsSyn )
happyIn79 :: [(Expr PName, Expr PName)] -> HappyAbsSyn
happyIn79 [(Expr PName, Expr PName)]
x = HappyWrap79 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([(Expr PName, Expr PName)] -> HappyWrap79
HappyWrap79 [(Expr PName, Expr PName)]
x)
{-# INLINE happyIn79 #-}
happyOut79 :: (HappyAbsSyn ) -> HappyWrap79
happyOut79 :: HappyAbsSyn -> HappyWrap79
happyOut79 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap79
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut79 #-}
newtype HappyWrap80 = HappyWrap80 ((Expr PName, Expr PName))
happyIn80 :: ((Expr PName, Expr PName)) -> (HappyAbsSyn )
happyIn80 :: (Expr PName, Expr PName) -> HappyAbsSyn
happyIn80 (Expr PName, Expr PName)
x = HappyWrap80 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ((Expr PName, Expr PName) -> HappyWrap80
HappyWrap80 (Expr PName, Expr PName)
x)
{-# INLINE happyIn80 #-}
happyOut80 :: (HappyAbsSyn ) -> HappyWrap80
happyOut80 :: HappyAbsSyn -> HappyWrap80
happyOut80 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap80
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut80 #-}
newtype HappyWrap81 = HappyWrap81 ([CaseAlt PName])
happyIn81 :: ([CaseAlt PName]) -> (HappyAbsSyn )
happyIn81 :: [CaseAlt PName] -> HappyAbsSyn
happyIn81 [CaseAlt PName]
x = HappyWrap81 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([CaseAlt PName] -> HappyWrap81
HappyWrap81 [CaseAlt PName]
x)
{-# INLINE happyIn81 #-}
happyOut81 :: (HappyAbsSyn ) -> HappyWrap81
happyOut81 :: HappyAbsSyn -> HappyWrap81
happyOut81 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap81
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut81 #-}
newtype HappyWrap82 = HappyWrap82 ([CaseAlt PName])
happyIn82 :: ([CaseAlt PName]) -> (HappyAbsSyn )
happyIn82 :: [CaseAlt PName] -> HappyAbsSyn
happyIn82 [CaseAlt PName]
x = HappyWrap82 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([CaseAlt PName] -> HappyWrap82
HappyWrap82 [CaseAlt PName]
x)
{-# INLINE happyIn82 #-}
happyOut82 :: (HappyAbsSyn ) -> HappyWrap82
happyOut82 :: HappyAbsSyn -> HappyWrap82
happyOut82 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap82
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut82 #-}
newtype HappyWrap83 = HappyWrap83 (CaseAlt PName)
happyIn83 :: (CaseAlt PName) -> (HappyAbsSyn )
happyIn83 :: CaseAlt PName -> HappyAbsSyn
happyIn83 CaseAlt PName
x = HappyWrap83 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (CaseAlt PName -> HappyWrap83
HappyWrap83 CaseAlt PName
x)
{-# INLINE happyIn83 #-}
happyOut83 :: (HappyAbsSyn ) -> HappyWrap83
happyOut83 :: HappyAbsSyn -> HappyWrap83
happyOut83 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap83
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut83 #-}
newtype HappyWrap84 = HappyWrap84 (Expr PName)
happyIn84 :: (Expr PName) -> (HappyAbsSyn )
happyIn84 :: Expr PName -> HappyAbsSyn
happyIn84 Expr PName
x = HappyWrap84 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap84
HappyWrap84 Expr PName
x)
{-# INLINE happyIn84 #-}
happyOut84 :: (HappyAbsSyn ) -> HappyWrap84
happyOut84 :: HappyAbsSyn -> HappyWrap84
happyOut84 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap84
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut84 #-}
newtype HappyWrap85 = HappyWrap85 (Expr PName)
happyIn85 :: (Expr PName) -> (HappyAbsSyn )
happyIn85 :: Expr PName -> HappyAbsSyn
happyIn85 Expr PName
x = HappyWrap85 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap85
HappyWrap85 Expr PName
x)
{-# INLINE happyIn85 #-}
happyOut85 :: (HappyAbsSyn ) -> HappyWrap85
happyOut85 :: HappyAbsSyn -> HappyWrap85
happyOut85 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap85
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut85 #-}
newtype HappyWrap86 = HappyWrap86 (Expr PName)
happyIn86 :: (Expr PName) -> (HappyAbsSyn )
happyIn86 :: Expr PName -> HappyAbsSyn
happyIn86 Expr PName
x = HappyWrap86 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap86
HappyWrap86 Expr PName
x)
{-# INLINE happyIn86 #-}
happyOut86 :: (HappyAbsSyn ) -> HappyWrap86
happyOut86 :: HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap86
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut86 #-}
newtype HappyWrap87 = HappyWrap87 (Expr PName)
happyIn87 :: (Expr PName) -> (HappyAbsSyn )
happyIn87 :: Expr PName -> HappyAbsSyn
happyIn87 Expr PName
x = HappyWrap87 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap87
HappyWrap87 Expr PName
x)
{-# INLINE happyIn87 #-}
happyOut87 :: (HappyAbsSyn ) -> HappyWrap87
happyOut87 :: HappyAbsSyn -> HappyWrap87
happyOut87 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap87
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut87 #-}
newtype HappyWrap88 = HappyWrap88 (NonEmpty (Expr PName))
happyIn88 :: (NonEmpty (Expr PName)) -> (HappyAbsSyn )
happyIn88 :: NonEmpty (Expr PName) -> HappyAbsSyn
happyIn88 NonEmpty (Expr PName)
x = HappyWrap88 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (NonEmpty (Expr PName) -> HappyWrap88
HappyWrap88 NonEmpty (Expr PName)
x)
{-# INLINE happyIn88 #-}
happyOut88 :: (HappyAbsSyn ) -> HappyWrap88
happyOut88 :: HappyAbsSyn -> HappyWrap88
happyOut88 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap88
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut88 #-}
newtype HappyWrap89 = HappyWrap89 (Expr PName)
happyIn89 :: (Expr PName) -> (HappyAbsSyn )
happyIn89 :: Expr PName -> HappyAbsSyn
happyIn89 Expr PName
x = HappyWrap89 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap89
HappyWrap89 Expr PName
x)
{-# INLINE happyIn89 #-}
happyOut89 :: (HappyAbsSyn ) -> HappyWrap89
happyOut89 :: HappyAbsSyn -> HappyWrap89
happyOut89 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap89
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut89 #-}
newtype HappyWrap90 = HappyWrap90 (Expr PName)
happyIn90 :: (Expr PName) -> (HappyAbsSyn )
happyIn90 :: Expr PName -> HappyAbsSyn
happyIn90 Expr PName
x = HappyWrap90 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap90
HappyWrap90 Expr PName
x)
{-# INLINE happyIn90 #-}
happyOut90 :: (HappyAbsSyn ) -> HappyWrap90
happyOut90 :: HappyAbsSyn -> HappyWrap90
happyOut90 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap90
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut90 #-}
newtype HappyWrap91 = HappyWrap91 (Expr PName)
happyIn91 :: (Expr PName) -> (HappyAbsSyn )
happyIn91 :: Expr PName -> HappyAbsSyn
happyIn91 Expr PName
x = HappyWrap91 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap91
HappyWrap91 Expr PName
x)
{-# INLINE happyIn91 #-}
happyOut91 :: (HappyAbsSyn ) -> HappyWrap91
happyOut91 :: HappyAbsSyn -> HappyWrap91
happyOut91 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap91
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut91 #-}
newtype HappyWrap92 = HappyWrap92 (Located Selector)
happyIn92 :: (Located Selector) -> (HappyAbsSyn )
happyIn92 :: Located Selector -> HappyAbsSyn
happyIn92 Located Selector
x = HappyWrap92 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located Selector -> HappyWrap92
HappyWrap92 Located Selector
x)
{-# INLINE happyIn92 #-}
happyOut92 :: (HappyAbsSyn ) -> HappyWrap92
happyOut92 :: HappyAbsSyn -> HappyWrap92
happyOut92 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap92
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut92 #-}
newtype HappyWrap93 = HappyWrap93 ([(Bool, Integer)])
happyIn93 :: ([(Bool, Integer)]) -> (HappyAbsSyn )
happyIn93 :: [(Bool, Integer)] -> HappyAbsSyn
happyIn93 [(Bool, Integer)]
x = HappyWrap93 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([(Bool, Integer)] -> HappyWrap93
HappyWrap93 [(Bool, Integer)]
x)
{-# INLINE happyIn93 #-}
happyOut93 :: (HappyAbsSyn ) -> HappyWrap93
happyOut93 :: HappyAbsSyn -> HappyWrap93
happyOut93 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap93
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut93 #-}
newtype HappyWrap94 = HappyWrap94 ((Bool, Integer))
happyIn94 :: ((Bool, Integer)) -> (HappyAbsSyn )
happyIn94 :: (Bool, Integer) -> HappyAbsSyn
happyIn94 (Bool, Integer)
x = HappyWrap94 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ((Bool, Integer) -> HappyWrap94
HappyWrap94 (Bool, Integer)
x)
{-# INLINE happyIn94 #-}
happyOut94 :: (HappyAbsSyn ) -> HappyWrap94
happyOut94 :: HappyAbsSyn -> HappyWrap94
happyOut94 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap94
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut94 #-}
newtype HappyWrap95 = HappyWrap95 ([Expr PName])
happyIn95 :: ([Expr PName]) -> (HappyAbsSyn )
happyIn95 :: [Expr PName] -> HappyAbsSyn
happyIn95 [Expr PName]
x = HappyWrap95 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Expr PName] -> HappyWrap95
HappyWrap95 [Expr PName]
x)
{-# INLINE happyIn95 #-}
happyOut95 :: (HappyAbsSyn ) -> HappyWrap95
happyOut95 :: HappyAbsSyn -> HappyWrap95
happyOut95 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap95
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut95 #-}
newtype HappyWrap96 = HappyWrap96 (Either (Expr PName) [Named (Expr PName)])
happyIn96 :: (Either (Expr PName) [Named (Expr PName)]) -> (HappyAbsSyn )
happyIn96 :: Either (Expr PName) [Named (Expr PName)] -> HappyAbsSyn
happyIn96 Either (Expr PName) [Named (Expr PName)]
x = HappyWrap96 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Either (Expr PName) [Named (Expr PName)] -> HappyWrap96
HappyWrap96 Either (Expr PName) [Named (Expr PName)]
x)
{-# INLINE happyIn96 #-}
happyOut96 :: (HappyAbsSyn ) -> HappyWrap96
happyOut96 :: HappyAbsSyn -> HappyWrap96
happyOut96 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap96
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut96 #-}
newtype HappyWrap97 = HappyWrap97 ([UpdField PName])
happyIn97 :: ([UpdField PName]) -> (HappyAbsSyn )
happyIn97 :: [UpdField PName] -> HappyAbsSyn
happyIn97 [UpdField PName]
x = HappyWrap97 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([UpdField PName] -> HappyWrap97
HappyWrap97 [UpdField PName]
x)
{-# INLINE happyIn97 #-}
happyOut97 :: (HappyAbsSyn ) -> HappyWrap97
happyOut97 :: HappyAbsSyn -> HappyWrap97
happyOut97 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap97
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut97 #-}
newtype HappyWrap98 = HappyWrap98 (UpdField PName)
happyIn98 :: (UpdField PName) -> (HappyAbsSyn )
happyIn98 :: UpdField PName -> HappyAbsSyn
happyIn98 UpdField PName
x = HappyWrap98 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (UpdField PName -> HappyWrap98
HappyWrap98 UpdField PName
x)
{-# INLINE happyIn98 #-}
happyOut98 :: (HappyAbsSyn ) -> HappyWrap98
happyOut98 :: HappyAbsSyn -> HappyWrap98
happyOut98 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap98
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut98 #-}
newtype HappyWrap99 = HappyWrap99 ([Located Selector])
happyIn99 :: ([Located Selector]) -> (HappyAbsSyn )
happyIn99 :: [Located Selector] -> HappyAbsSyn
happyIn99 [Located Selector]
x = HappyWrap99 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Located Selector] -> HappyWrap99
HappyWrap99 [Located Selector]
x)
{-# INLINE happyIn99 #-}
happyOut99 :: (HappyAbsSyn ) -> HappyWrap99
happyOut99 :: HappyAbsSyn -> HappyWrap99
happyOut99 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap99
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut99 #-}
newtype HappyWrap100 = HappyWrap100 (UpdHow)
happyIn100 :: (UpdHow) -> (HappyAbsSyn )
happyIn100 :: UpdHow -> HappyAbsSyn
happyIn100 UpdHow
x = HappyWrap100 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (UpdHow -> HappyWrap100
HappyWrap100 UpdHow
x)
{-# INLINE happyIn100 #-}
happyOut100 :: (HappyAbsSyn ) -> HappyWrap100
happyOut100 :: HappyAbsSyn -> HappyWrap100
happyOut100 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap100
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut100 #-}
newtype HappyWrap101 = HappyWrap101 (Expr PName)
happyIn101 :: (Expr PName) -> (HappyAbsSyn )
happyIn101 :: Expr PName -> HappyAbsSyn
happyIn101 Expr PName
x = HappyWrap101 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Expr PName -> HappyWrap101
HappyWrap101 Expr PName
x)
{-# INLINE happyIn101 #-}
happyOut101 :: (HappyAbsSyn ) -> HappyWrap101
happyOut101 :: HappyAbsSyn -> HappyWrap101
happyOut101 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap101
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut101 #-}
newtype HappyWrap102 = HappyWrap102 ([[Match PName]])
happyIn102 :: ([[Match PName]]) -> (HappyAbsSyn )
happyIn102 :: [[Match PName]] -> HappyAbsSyn
happyIn102 [[Match PName]]
x = HappyWrap102 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([[Match PName]] -> HappyWrap102
HappyWrap102 [[Match PName]]
x)
{-# INLINE happyIn102 #-}
happyOut102 :: (HappyAbsSyn ) -> HappyWrap102
happyOut102 :: HappyAbsSyn -> HappyWrap102
happyOut102 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap102
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut102 #-}
newtype HappyWrap103 = HappyWrap103 ([Match PName])
happyIn103 :: ([Match PName]) -> (HappyAbsSyn )
happyIn103 :: [Match PName] -> HappyAbsSyn
happyIn103 [Match PName]
x = HappyWrap103 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Match PName] -> HappyWrap103
HappyWrap103 [Match PName]
x)
{-# INLINE happyIn103 #-}
happyOut103 :: (HappyAbsSyn ) -> HappyWrap103
happyOut103 :: HappyAbsSyn -> HappyWrap103
happyOut103 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap103
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut103 #-}
newtype HappyWrap104 = HappyWrap104 (Match PName)
happyIn104 :: (Match PName) -> (HappyAbsSyn )
happyIn104 :: Match PName -> HappyAbsSyn
happyIn104 Match PName
x = HappyWrap104 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Match PName -> HappyWrap104
HappyWrap104 Match PName
x)
{-# INLINE happyIn104 #-}
happyOut104 :: (HappyAbsSyn ) -> HappyWrap104
happyOut104 :: HappyAbsSyn -> HappyWrap104
happyOut104 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap104
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut104 #-}
newtype HappyWrap105 = HappyWrap105 (Pattern PName)
happyIn105 :: (Pattern PName) -> (HappyAbsSyn )
happyIn105 :: Pattern PName -> HappyAbsSyn
happyIn105 Pattern PName
x = HappyWrap105 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap105
HappyWrap105 Pattern PName
x)
{-# INLINE happyIn105 #-}
happyOut105 :: (HappyAbsSyn ) -> HappyWrap105
happyOut105 :: HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap105
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut105 #-}
newtype HappyWrap106 = HappyWrap106 (Pattern PName)
happyIn106 :: (Pattern PName) -> (HappyAbsSyn )
happyIn106 :: Pattern PName -> HappyAbsSyn
happyIn106 Pattern PName
x = HappyWrap106 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap106
HappyWrap106 Pattern PName
x)
{-# INLINE happyIn106 #-}
happyOut106 :: (HappyAbsSyn ) -> HappyWrap106
happyOut106 :: HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap106
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut106 #-}
newtype HappyWrap107 = HappyWrap107 ([Pattern PName])
happyIn107 :: ([Pattern PName]) -> (HappyAbsSyn )
happyIn107 :: [Pattern PName] -> HappyAbsSyn
happyIn107 [Pattern PName]
x = HappyWrap107 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Pattern PName] -> HappyWrap107
HappyWrap107 [Pattern PName]
x)
{-# INLINE happyIn107 #-}
happyOut107 :: (HappyAbsSyn ) -> HappyWrap107
happyOut107 :: HappyAbsSyn -> HappyWrap107
happyOut107 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap107
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut107 #-}
newtype HappyWrap108 = HappyWrap108 (Pattern PName)
happyIn108 :: (Pattern PName) -> (HappyAbsSyn )
happyIn108 :: Pattern PName -> HappyAbsSyn
happyIn108 Pattern PName
x = HappyWrap108 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap108
HappyWrap108 Pattern PName
x)
{-# INLINE happyIn108 #-}
happyOut108 :: (HappyAbsSyn ) -> HappyWrap108
happyOut108 :: HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap108
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut108 #-}
newtype HappyWrap109 = HappyWrap109 ([Pattern PName])
happyIn109 :: ([Pattern PName]) -> (HappyAbsSyn )
happyIn109 :: [Pattern PName] -> HappyAbsSyn
happyIn109 [Pattern PName]
x = HappyWrap109 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Pattern PName] -> HappyWrap109
HappyWrap109 [Pattern PName]
x)
{-# INLINE happyIn109 #-}
happyOut109 :: (HappyAbsSyn ) -> HappyWrap109
happyOut109 :: HappyAbsSyn -> HappyWrap109
happyOut109 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap109
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut109 #-}
newtype HappyWrap110 = HappyWrap110 (Named (Pattern PName))
happyIn110 :: (Named (Pattern PName)) -> (HappyAbsSyn )
happyIn110 :: Named (Pattern PName) -> HappyAbsSyn
happyIn110 Named (Pattern PName)
x = HappyWrap110 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Named (Pattern PName) -> HappyWrap110
HappyWrap110 Named (Pattern PName)
x)
{-# INLINE happyIn110 #-}
happyOut110 :: (HappyAbsSyn ) -> HappyWrap110
happyOut110 :: HappyAbsSyn -> HappyWrap110
happyOut110 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap110
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut110 #-}
newtype HappyWrap111 = HappyWrap111 ([Named (Pattern PName)])
happyIn111 :: ([Named (Pattern PName)]) -> (HappyAbsSyn )
happyIn111 :: [Named (Pattern PName)] -> HappyAbsSyn
happyIn111 [Named (Pattern PName)]
x = HappyWrap111 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Named (Pattern PName)] -> HappyWrap111
HappyWrap111 [Named (Pattern PName)]
x)
{-# INLINE happyIn111 #-}
happyOut111 :: (HappyAbsSyn ) -> HappyWrap111
happyOut111 :: HappyAbsSyn -> HappyWrap111
happyOut111 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap111
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut111 #-}
newtype HappyWrap112 = HappyWrap112 (Pattern PName)
happyIn112 :: (Pattern PName) -> (HappyAbsSyn )
happyIn112 :: Pattern PName -> HappyAbsSyn
happyIn112 Pattern PName
x = HappyWrap112 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap112
HappyWrap112 Pattern PName
x)
{-# INLINE happyIn112 #-}
happyOut112 :: (HappyAbsSyn ) -> HappyWrap112
happyOut112 :: HappyAbsSyn -> HappyWrap112
happyOut112 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap112
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut112 #-}
newtype HappyWrap113 = HappyWrap113 (Pattern PName)
happyIn113 :: (Pattern PName) -> (HappyAbsSyn )
happyIn113 :: Pattern PName -> HappyAbsSyn
happyIn113 Pattern PName
x = HappyWrap113 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap113
HappyWrap113 Pattern PName
x)
{-# INLINE happyIn113 #-}
happyOut113 :: (HappyAbsSyn ) -> HappyWrap113
happyOut113 :: HappyAbsSyn -> HappyWrap113
happyOut113 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap113
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut113 #-}
newtype HappyWrap114 = HappyWrap114 (Pattern PName)
happyIn114 :: (Pattern PName) -> (HappyAbsSyn )
happyIn114 :: Pattern PName -> HappyAbsSyn
happyIn114 Pattern PName
x = HappyWrap114 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Pattern PName -> HappyWrap114
HappyWrap114 Pattern PName
x)
{-# INLINE happyIn114 #-}
happyOut114 :: (HappyAbsSyn ) -> HappyWrap114
happyOut114 :: HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap114
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut114 #-}
newtype HappyWrap115 = HappyWrap115 ([Pattern PName])
happyIn115 :: ([Pattern PName]) -> (HappyAbsSyn )
happyIn115 :: [Pattern PName] -> HappyAbsSyn
happyIn115 [Pattern PName]
x = HappyWrap115 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Pattern PName] -> HappyWrap115
HappyWrap115 [Pattern PName]
x)
{-# INLINE happyIn115 #-}
happyOut115 :: (HappyAbsSyn ) -> HappyWrap115
happyOut115 :: HappyAbsSyn -> HappyWrap115
happyOut115 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap115
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut115 #-}
newtype HappyWrap116 = HappyWrap116 ([Pattern PName])
happyIn116 :: ([Pattern PName]) -> (HappyAbsSyn )
happyIn116 :: [Pattern PName] -> HappyAbsSyn
happyIn116 [Pattern PName]
x = HappyWrap116 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Pattern PName] -> HappyWrap116
HappyWrap116 [Pattern PName]
x)
{-# INLINE happyIn116 #-}
happyOut116 :: (HappyAbsSyn ) -> HappyWrap116
happyOut116 :: HappyAbsSyn -> HappyWrap116
happyOut116 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap116
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut116 #-}
newtype HappyWrap117 = HappyWrap117 ([Pattern PName])
happyIn117 :: ([Pattern PName]) -> (HappyAbsSyn )
happyIn117 :: [Pattern PName] -> HappyAbsSyn
happyIn117 [Pattern PName]
x = HappyWrap117 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Pattern PName] -> HappyWrap117
HappyWrap117 [Pattern PName]
x)
{-# INLINE happyIn117 #-}
happyOut117 :: (HappyAbsSyn ) -> HappyWrap117
happyOut117 :: HappyAbsSyn -> HappyWrap117
happyOut117 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap117
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut117 #-}
newtype HappyWrap118 = HappyWrap118 (([Pattern PName], [Pattern PName]))
happyIn118 :: (([Pattern PName], [Pattern PName])) -> (HappyAbsSyn )
happyIn118 :: ([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn118 ([Pattern PName], [Pattern PName])
x = HappyWrap118 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (([Pattern PName], [Pattern PName]) -> HappyWrap118
HappyWrap118 ([Pattern PName], [Pattern PName])
x)
{-# INLINE happyIn118 #-}
happyOut118 :: (HappyAbsSyn ) -> HappyWrap118
happyOut118 :: HappyAbsSyn -> HappyWrap118
happyOut118 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap118
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut118 #-}
newtype HappyWrap119 = HappyWrap119 (([Pattern PName], [Pattern PName]))
happyIn119 :: (([Pattern PName], [Pattern PName])) -> (HappyAbsSyn )
happyIn119 :: ([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn119 ([Pattern PName], [Pattern PName])
x = HappyWrap119 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (([Pattern PName], [Pattern PName]) -> HappyWrap119
HappyWrap119 ([Pattern PName], [Pattern PName])
x)
{-# INLINE happyIn119 #-}
happyOut119 :: (HappyAbsSyn ) -> HappyWrap119
happyOut119 :: HappyAbsSyn -> HappyWrap119
happyOut119 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap119
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut119 #-}
newtype HappyWrap120 = HappyWrap120 (Schema PName)
happyIn120 :: (Schema PName) -> (HappyAbsSyn )
happyIn120 :: Schema PName -> HappyAbsSyn
happyIn120 Schema PName
x = HappyWrap120 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Schema PName -> HappyWrap120
HappyWrap120 Schema PName
x)
{-# INLINE happyIn120 #-}
happyOut120 :: (HappyAbsSyn ) -> HappyWrap120
happyOut120 :: HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap120
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut120 #-}
newtype HappyWrap121 = HappyWrap121 (Located [TParam PName])
happyIn121 :: (Located [TParam PName]) -> (HappyAbsSyn )
happyIn121 :: Located [TParam PName] -> HappyAbsSyn
happyIn121 Located [TParam PName]
x = HappyWrap121 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [TParam PName] -> HappyWrap121
HappyWrap121 Located [TParam PName]
x)
{-# INLINE happyIn121 #-}
happyOut121 :: (HappyAbsSyn ) -> HappyWrap121
happyOut121 :: HappyAbsSyn -> HappyWrap121
happyOut121 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap121
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut121 #-}
newtype HappyWrap122 = HappyWrap122 (Located [Prop PName])
happyIn122 :: (Located [Prop PName]) -> (HappyAbsSyn )
happyIn122 :: Located [Prop PName] -> HappyAbsSyn
happyIn122 Located [Prop PName]
x = HappyWrap122 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [Prop PName] -> HappyWrap122
HappyWrap122 Located [Prop PName]
x)
{-# INLINE happyIn122 #-}
happyOut122 :: (HappyAbsSyn ) -> HappyWrap122
happyOut122 :: HappyAbsSyn -> HappyWrap122
happyOut122 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap122
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut122 #-}
newtype HappyWrap123 = HappyWrap123 (Located [Prop PName])
happyIn123 :: (Located [Prop PName]) -> (HappyAbsSyn )
happyIn123 :: Located [Prop PName] -> HappyAbsSyn
happyIn123 Located [Prop PName]
x = HappyWrap123 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [Prop PName] -> HappyWrap123
HappyWrap123 Located [Prop PName]
x)
{-# INLINE happyIn123 #-}
happyOut123 :: (HappyAbsSyn ) -> HappyWrap123
happyOut123 :: HappyAbsSyn -> HappyWrap123
happyOut123 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap123
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut123 #-}
newtype HappyWrap124 = HappyWrap124 (Located Kind)
happyIn124 :: (Located Kind) -> (HappyAbsSyn )
happyIn124 :: Located Kind -> HappyAbsSyn
happyIn124 Located Kind
x = HappyWrap124 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located Kind -> HappyWrap124
HappyWrap124 Located Kind
x)
{-# INLINE happyIn124 #-}
happyOut124 :: (HappyAbsSyn ) -> HappyWrap124
happyOut124 :: HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap124
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut124 #-}
newtype HappyWrap125 = HappyWrap125 (TParam PName)
happyIn125 :: (TParam PName) -> (HappyAbsSyn )
happyIn125 :: TParam PName -> HappyAbsSyn
happyIn125 TParam PName
x = HappyWrap125 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (TParam PName -> HappyWrap125
HappyWrap125 TParam PName
x)
{-# INLINE happyIn125 #-}
happyOut125 :: (HappyAbsSyn ) -> HappyWrap125
happyOut125 :: HappyAbsSyn -> HappyWrap125
happyOut125 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap125
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut125 #-}
newtype HappyWrap126 = HappyWrap126 ([TParam PName])
happyIn126 :: ([TParam PName]) -> (HappyAbsSyn )
happyIn126 :: [TParam PName] -> HappyAbsSyn
happyIn126 [TParam PName]
x = HappyWrap126 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([TParam PName] -> HappyWrap126
HappyWrap126 [TParam PName]
x)
{-# INLINE happyIn126 #-}
happyOut126 :: (HappyAbsSyn ) -> HappyWrap126
happyOut126 :: HappyAbsSyn -> HappyWrap126
happyOut126 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap126
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut126 #-}
newtype HappyWrap127 = HappyWrap127 (Type PName)
happyIn127 :: (Type PName) -> (HappyAbsSyn )
happyIn127 :: Type PName -> HappyAbsSyn
happyIn127 Type PName
x = HappyWrap127 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap127
HappyWrap127 Type PName
x)
{-# INLINE happyIn127 #-}
happyOut127 :: (HappyAbsSyn ) -> HappyWrap127
happyOut127 :: HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap127
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut127 #-}
newtype HappyWrap128 = HappyWrap128 (Type PName)
happyIn128 :: (Type PName) -> (HappyAbsSyn )
happyIn128 :: Type PName -> HappyAbsSyn
happyIn128 Type PName
x = HappyWrap128 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap128
HappyWrap128 Type PName
x)
{-# INLINE happyIn128 #-}
happyOut128 :: (HappyAbsSyn ) -> HappyWrap128
happyOut128 :: HappyAbsSyn -> HappyWrap128
happyOut128 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap128
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut128 #-}
newtype HappyWrap129 = HappyWrap129 (Type PName)
happyIn129 :: (Type PName) -> (HappyAbsSyn )
happyIn129 :: Type PName -> HappyAbsSyn
happyIn129 Type PName
x = HappyWrap129 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap129
HappyWrap129 Type PName
x)
{-# INLINE happyIn129 #-}
happyOut129 :: (HappyAbsSyn ) -> HappyWrap129
happyOut129 :: HappyAbsSyn -> HappyWrap129
happyOut129 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap129
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut129 #-}
newtype HappyWrap130 = HappyWrap130 (Type PName)
happyIn130 :: (Type PName) -> (HappyAbsSyn )
happyIn130 :: Type PName -> HappyAbsSyn
happyIn130 Type PName
x = HappyWrap130 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap130
HappyWrap130 Type PName
x)
{-# INLINE happyIn130 #-}
happyOut130 :: (HappyAbsSyn ) -> HappyWrap130
happyOut130 :: HappyAbsSyn -> HappyWrap130
happyOut130 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap130
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut130 #-}
newtype HappyWrap131 = HappyWrap131 (Type PName)
happyIn131 :: (Type PName) -> (HappyAbsSyn )
happyIn131 :: Type PName -> HappyAbsSyn
happyIn131 Type PName
x = HappyWrap131 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap131
HappyWrap131 Type PName
x)
{-# INLINE happyIn131 #-}
happyOut131 :: (HappyAbsSyn ) -> HappyWrap131
happyOut131 :: HappyAbsSyn -> HappyWrap131
happyOut131 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap131
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut131 #-}
newtype HappyWrap132 = HappyWrap132 ([ Type PName ])
happyIn132 :: ([ Type PName ]) -> (HappyAbsSyn )
happyIn132 :: [Type PName] -> HappyAbsSyn
happyIn132 [Type PName]
x = HappyWrap132 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Type PName] -> HappyWrap132
HappyWrap132 [Type PName]
x)
{-# INLINE happyIn132 #-}
happyOut132 :: (HappyAbsSyn ) -> HappyWrap132
happyOut132 :: HappyAbsSyn -> HappyWrap132
happyOut132 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap132
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut132 #-}
newtype HappyWrap133 = HappyWrap133 (Located [Type PName])
happyIn133 :: (Located [Type PName]) -> (HappyAbsSyn )
happyIn133 :: Located [Type PName] -> HappyAbsSyn
happyIn133 Located [Type PName]
x = HappyWrap133 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located [Type PName] -> HappyWrap133
HappyWrap133 Located [Type PName]
x)
{-# INLINE happyIn133 #-}
happyOut133 :: (HappyAbsSyn ) -> HappyWrap133
happyOut133 :: HappyAbsSyn -> HappyWrap133
happyOut133 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap133
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut133 #-}
newtype HappyWrap134 = HappyWrap134 ([Type PName])
happyIn134 :: ([Type PName]) -> (HappyAbsSyn )
happyIn134 :: [Type PName] -> HappyAbsSyn
happyIn134 [Type PName]
x = HappyWrap134 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Type PName] -> HappyWrap134
HappyWrap134 [Type PName]
x)
{-# INLINE happyIn134 #-}
happyOut134 :: (HappyAbsSyn ) -> HappyWrap134
happyOut134 :: HappyAbsSyn -> HappyWrap134
happyOut134 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap134
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut134 #-}
newtype HappyWrap135 = HappyWrap135 (Named (Type PName))
happyIn135 :: (Named (Type PName)) -> (HappyAbsSyn )
happyIn135 :: Named (Type PName) -> HappyAbsSyn
happyIn135 Named (Type PName)
x = HappyWrap135 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Named (Type PName) -> HappyWrap135
HappyWrap135 Named (Type PName)
x)
{-# INLINE happyIn135 #-}
happyOut135 :: (HappyAbsSyn ) -> HappyWrap135
happyOut135 :: HappyAbsSyn -> HappyWrap135
happyOut135 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap135
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut135 #-}
newtype HappyWrap136 = HappyWrap136 ([Named (Type PName)])
happyIn136 :: ([Named (Type PName)]) -> (HappyAbsSyn )
happyIn136 :: [Named (Type PName)] -> HappyAbsSyn
happyIn136 [Named (Type PName)]
x = HappyWrap136 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Named (Type PName)] -> HappyWrap136
HappyWrap136 [Named (Type PName)]
x)
{-# INLINE happyIn136 #-}
happyOut136 :: (HappyAbsSyn ) -> HappyWrap136
happyOut136 :: HappyAbsSyn -> HappyWrap136
happyOut136 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap136
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut136 #-}
newtype HappyWrap137 = HappyWrap137 (Located Ident)
happyIn137 :: (Located Ident) -> (HappyAbsSyn )
happyIn137 :: LIdent -> HappyAbsSyn
happyIn137 LIdent
x = HappyWrap137 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (LIdent -> HappyWrap137
HappyWrap137 LIdent
x)
{-# INLINE happyIn137 #-}
happyOut137 :: (HappyAbsSyn ) -> HappyWrap137
happyOut137 :: HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap137
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut137 #-}
newtype HappyWrap138 = HappyWrap138 (LPName)
happyIn138 :: (LPName) -> (HappyAbsSyn )
happyIn138 :: Located PName -> HappyAbsSyn
happyIn138 Located PName
x = HappyWrap138 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap138
HappyWrap138 Located PName
x)
{-# INLINE happyIn138 #-}
happyOut138 :: (HappyAbsSyn ) -> HappyWrap138
happyOut138 :: HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap138
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut138 #-}
newtype HappyWrap139 = HappyWrap139 (Located ModName)
happyIn139 :: (Located ModName) -> (HappyAbsSyn )
happyIn139 :: Located ModName -> HappyAbsSyn
happyIn139 Located ModName
x = HappyWrap139 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located ModName -> HappyWrap139
HappyWrap139 Located ModName
x)
{-# INLINE happyIn139 #-}
happyOut139 :: (HappyAbsSyn ) -> HappyWrap139
happyOut139 :: HappyAbsSyn -> HappyWrap139
happyOut139 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap139
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut139 #-}
newtype HappyWrap140 = HappyWrap140 (Located ModName)
happyIn140 :: (Located ModName) -> (HappyAbsSyn )
happyIn140 :: Located ModName -> HappyAbsSyn
happyIn140 Located ModName
x = HappyWrap140 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located ModName -> HappyWrap140
HappyWrap140 Located ModName
x)
{-# INLINE happyIn140 #-}
happyOut140 :: (HappyAbsSyn ) -> HappyWrap140
happyOut140 :: HappyAbsSyn -> HappyWrap140
happyOut140 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap140
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut140 #-}
newtype HappyWrap141 = HappyWrap141 (Located PName)
happyIn141 :: (Located PName) -> (HappyAbsSyn )
happyIn141 :: Located PName -> HappyAbsSyn
happyIn141 Located PName
x = HappyWrap141 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap141
HappyWrap141 Located PName
x)
{-# INLINE happyIn141 #-}
happyOut141 :: (HappyAbsSyn ) -> HappyWrap141
happyOut141 :: HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap141
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut141 #-}
newtype HappyWrap142 = HappyWrap142 (Located PName)
happyIn142 :: (Located PName) -> (HappyAbsSyn )
happyIn142 :: Located PName -> HappyAbsSyn
happyIn142 Located PName
x = HappyWrap142 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Located PName -> HappyWrap142
HappyWrap142 Located PName
x)
{-# INLINE happyIn142 #-}
happyOut142 :: (HappyAbsSyn ) -> HappyWrap142
happyOut142 :: HappyAbsSyn -> HappyWrap142
happyOut142 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap142
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut142 #-}
newtype HappyWrap143 = HappyWrap143 (Type PName)
happyIn143 :: (Type PName) -> (HappyAbsSyn )
happyIn143 :: Type PName -> HappyAbsSyn
happyIn143 Type PName
x = HappyWrap143 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Type PName -> HappyWrap143
HappyWrap143 Type PName
x)
{-# INLINE happyIn143 #-}
happyOut143 :: (HappyAbsSyn ) -> HappyWrap143
happyOut143 :: HappyAbsSyn -> HappyWrap143
happyOut143 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap143
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut143 #-}
newtype HappyWrap144 = HappyWrap144 (Named (Type PName))
happyIn144 :: (Named (Type PName)) -> (HappyAbsSyn )
happyIn144 :: Named (Type PName) -> HappyAbsSyn
happyIn144 Named (Type PName)
x = HappyWrap144 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# (Named (Type PName) -> HappyWrap144
HappyWrap144 Named (Type PName)
x)
{-# INLINE happyIn144 #-}
happyOut144 :: (HappyAbsSyn ) -> HappyWrap144
happyOut144 :: HappyAbsSyn -> HappyWrap144
happyOut144 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap144
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut144 #-}
newtype HappyWrap145 = HappyWrap145 ([Named (Type PName)])
happyIn145 :: ([Named (Type PName)]) -> (HappyAbsSyn )
happyIn145 :: [Named (Type PName)] -> HappyAbsSyn
happyIn145 [Named (Type PName)]
x = HappyWrap145 -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# ([Named (Type PName)] -> HappyWrap145
HappyWrap145 [Named (Type PName)]
x)
{-# INLINE happyIn145 #-}
happyOut145 :: (HappyAbsSyn ) -> HappyWrap145
happyOut145 :: HappyAbsSyn -> HappyWrap145
happyOut145 HappyAbsSyn
x = HappyAbsSyn -> HappyWrap145
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# HappyAbsSyn
x
{-# INLINE happyOut145 #-}
happyInTok :: (Located Token) -> (HappyAbsSyn )
happyInTok :: Located Token -> HappyAbsSyn
happyInTok Located Token
x = Located Token -> HappyAbsSyn
forall a b. a -> b
Happy_GHC_Exts.unsafeCoerce# Located Token
x
{-# INLINE happyInTok #-}
happyOutTok :: (HappyAbsSyn ) -> (Located Token)
happyOutTok :: HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
x = HappyAbsSyn -> Located Token
forall a b. a -> b
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\x20\x40\x00\x00\x00\x80\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\xf3\x00\x10\x08\x20\x02\x08\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x79\x00\x08\x04\x10\x01\x04\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x0f\x00\x81\x00\x22\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\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3c\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\x7e\x9c\x07\x93\x40\x00\x51\x62\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x8e\x03\x00\x10\x08\x20\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x71\x80\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\x30\x0e\x00\x40\x00\xe0\x00\x00\xfe\x03\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\xc0\x38\x40\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\x30\x00\x00\xff\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\xc6\x01\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\x80\x1c\x07\x00\x20\x10\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xe3\x00\x00\x04\x02\x88\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\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\x03\x20\xf0\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\x38\x00\x00\x81\x00\x22\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1c\x07\x00\x20\x10\x40\x04\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\x40\x8e\x03\x00\x10\x08\x20\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x71\x00\x00\x02\x01\x4f\x00\xf1\x1f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0e\x00\x40\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x0c\x40\xc0\x7f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\xf8\x71\x00\x00\x02\x01\x44\x09\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\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\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\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\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\x00\x00\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\x1c\x07\x00\x20\x12\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x71\x00\x48\x02\x03\x44\x89\x81\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\xe0\x29\x31\xfe\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xc7\x01\x00\x08\x04\x10\x27\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x01\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x18\x07\x00\x20\x00\x40\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\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\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x71\x00\x48\x02\x01\x44\x89\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x0f\x00\x81\x00\x22\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\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\x04\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x03\x00\x10\x08\x24\x02\x08\x20\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x71\x1e\x00\x02\x01\x44\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\x10\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\x80\x01\x00\xf8\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\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\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\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\xc6\x01\x00\x08\x0c\x10\x01\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x00\x00\x81\x80\x27\x80\xf8\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x07\x00\x20\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\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\xde\x03\x40\x20\x80\x08\xa0\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x3a\x0f\x00\x81\x00\x22\x80\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\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\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\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\x08\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\xe3\x3d\x00\x04\x02\x88\x00\x02\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\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\x01\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\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\xbc\x07\x80\x40\x00\x11\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x08\x0b\x88\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\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x40\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\xe1\x20\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\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\x20\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x09\x00\x00\x00\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\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\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\x02\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\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x07\x00\x20\x10\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x98\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\x10\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\x02\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\x0c\x00\xc0\x3f\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\xf8\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x03\x00\x10\x08\x20\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\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\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\x18\x07\x00\x20\x10\x40\x04\x10\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\x01\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x72\x1c\x00\x80\x40\x00\x11\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x03\x00\x10\x08\x20\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x70\x00\x00\x02\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x0e\x00\x40\x20\x80\x08\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\x02\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x48\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\xc6\x01\x00\x08\x04\x10\x81\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\x72\x1c\x00\x80\x40\x00\x11\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x8e\x03\x00\x10\x08\x20\x06\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\x02\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\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\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\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\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\x30\x0e\x00\x40\x20\x80\x08\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x04\x00\x00\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x71\x00\x48\x02\x01\x44\x89\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x00\xe0\x43\x00\x00\x00\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\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\x80\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\x90\x00\x00\x00\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\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\x40\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x00\x00\x81\x00\x22\x80\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\x40\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\x06\x00\xe0\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x1c\x00\x80\x40\xc0\x13\x40\xfc\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x71\x00\x00\x02\x01\x44\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x10\x0e\x00\x40\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\x0c\x00\xc0\x3f\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\xf8\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xc7\x01\x20\x09\x04\x10\x25\x06\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\x38\x00\x00\x81\x00\x22\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\x00\x00\x00\x00\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\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\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\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\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x20\xc7\x01\x00\x08\x04\x10\x01\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\x80\x1c\x07\x00\x20\x10\x40\x04\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\x72\x1c\x00\x80\x40\x00\x11\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x8e\x03\x00\x10\x08\x20\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x71\x00\x00\x02\x01\x44\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\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1c\x07\x00\x20\x10\x40\x04\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\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\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\x40\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\xc0\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\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\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\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\x90\xe3\x00\x00\x04\x02\x88\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\x40\x8e\x03\x00\x10\x08\x20\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\x80\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xc7\x01\x00\x08\x06\x10\x01\x84\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x38\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\xe1\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\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\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\x00\x00\x00\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\xc7\x01\x00\x08\x04\x10\x01\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\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x07\x00\x20\x10\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf0\xe3\x00\x90\x04\x02\x88\x12\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x8e\x03\x00\x10\x08\x20\x02\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x71\x00\x48\x02\x01\x44\x89\x81\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xc7\x01\x20\x09\x04\x10\x25\x06\x06\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\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\xf0\xe3\x00\x90\x04\x02\x88\x12\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\xc0\x51\x62\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\xf8\x71\x00\x48\x02\x01\x44\x89\x81\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x08\x04\x10\x01\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x38\x00\x24\x81\x00\xa2\xc4\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\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\xf8\x71\x00\x00\x02\x01\x44\x09\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\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x38\x00\x00\x81\x00\xa2\x84\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\xe3\x00\x00\x04\x02\x88\x12\x02\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\x08\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\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\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\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\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\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\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x79\x00\x08\x04\x10\x01\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\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\xe7\x01\x20\x10\x40\x04\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\x03\x00\xf0\x0f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\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\x80\x71\x00\x00\x02\x01\x44\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\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\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\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\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\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\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\xc0\x38\x00\x00\x81\x00\x22\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\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x1c\x00\x80\x40\x00\x11\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\x39\x0e\x00\x40\x20\x80\x08\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x08\x04\x10\x01\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\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x1c\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\xce\x03\x40\x20\x80\x18\x20\x00\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x79\x00\x08\x04\x10\x01\x14\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x78\x0f\x00\x81\x00\x22\x80\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x3d\x00\x04\x02\x88\x00\x02\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x71\x00\x00\x02\x01\x44\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\x60\x00\x00\xfe\x01\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\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\xef\x01\x20\x10\x40\x04\x10\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\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\xc6\x01\x06\x0c\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x38\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\x1c\x07\x00\x20\x10\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x1c\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\x08\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\x70\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\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\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\x40\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\xbc\x07\x80\x40\x00\x11\x40\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x70\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\x39\x0e\x00\x40\x20\x80\x08\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\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\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\x08\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\x10\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\x30\x0e\x00\x40\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x06\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x38\x40\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\x40\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\x08\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x70\x10\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\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\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1c\x07\x00\x20\x10\x40\x04\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\x01\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\xce\x03\x40\x20\x80\x18\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\xf0\xe3\x00\x90\x04\x02\x88\x12\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\x01\x00\xf8\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1f\x07\x80\x24\x10\x40\x94\x18\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\x08\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\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x71\x00\x00\x02\x01\x44\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\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\x20\x1c\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\xc8\x71\x00\x00\x02\x01\x44\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\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\xf8\x71\x00\x48\x02\x01\x44\x89\x81\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\x08\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\x00\x30\x00\x00\x00\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\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\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\x40\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\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\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\x04\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x0c\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\x30\x0e\x00\x40\x20\x80\x08\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x08\x04\x10\x01\x04\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\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x0c\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\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\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\x80\x1c\x07\x00\x20\x10\x40\x04\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x90\xe3\x00\x00\x04\x02\x88\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\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\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\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\x01\x00\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x07\x00\x20\x00\x00\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x3d\x00\x04\x02\x88\x00\x02\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\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x0e\x30\x60\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\x02\x00\x00\x80\x08\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\x10\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\xf0\xe3\x00\x90\x04\x02\x88\x12\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x1c\x00\x92\x40\x00\x51\x62\x60\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\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x50\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x80\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\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x71\x00\x48\x02\x01\x44\x89\x81\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\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\xe4\x38\x00\x00\x81\x00\x22\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1f\x07\x80\x24\x10\x40\x94\x18\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x00\x00\x04\x02\x88\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x1c\x00\x80\x40\x00\x11\x40\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x8f\x03\x40\x12\x08\x20\x4a\x0c\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\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\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\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\x20\x00\x00\x00\x88\x00\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\x08\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\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x1c\x07\x00\x20\x12\x40\x04\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\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\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\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\xc0\x38\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\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\xe3\x00\x01\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\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\x8c\x03\x0c\x18\x00\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x80\x71\x00\x00\x02\x01\x44\x04\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x00\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\xe4\x38\x00\x00\x81\x40\x22\x80\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\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\x72\x1c\x00\x80\x40\x00\x11\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\x01\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\x20\x00\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x90\xe3\x00\x00\x04\x02\x88\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\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\x39\x0e\x00\x40\x20\x80\x08\x20\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\x40\x38\x00\x00\x01\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\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\xf0\xe3\x00\x90\x04\x02\x88\x12\x03\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x08\x07\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\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\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\x80\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc8\x71\x00\x00\x02\x01\x44\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x0e\x00\x40\x20\x80\x08\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\x80\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\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\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x60\x1c\x60\x80\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x8e\x03\x00\x10\x08\x20\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\x20\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\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\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\x7e\x1c\x00\x92\x40\x00\x51\x62\x60\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\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\x3f\x0e\x00\x49\x20\x80\x28\x31\x30\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\xc7\x01\x20\x09\x04\x10\x25\x06\x06\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\x18\x07\x00\x20\x10\x40\x04\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\x7e\x1c\x00\x92\x40\x00\x51\x62\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\x80\x71\x00\x00\x02\x01\x44\x00\x01\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\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\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\x08\x00\x00\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe3\x3d\x00\x04\x02\x88\x00\x02\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\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\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\x80\x1f\x07\x80\x24\x10\x40\x94\x18\x18\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\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\x80\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\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\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\x20\x00\x00\x00\x88\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x03\x00\x10\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\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\xc6\x01\x06\x0c\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x38\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\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\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x0e\x00\x40\x20\x80\x08\x20\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\x04\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\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\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\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\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\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\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\x20\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\x80\x00\x20\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\x20\x1c\x00\x80\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"#

{-# NOINLINE happyExpListPerState #-}
happyExpListPerState :: Int -> [a]
happyExpListPerState Int
st =
    [a]
token_strs_expected
  where token_strs :: [a]
token_strs = [a
"error",a
"%dummy",a
"%start_top_module",a
"%start_program",a
"%start_programLayout",a
"%start_expr",a
"%start_decl",a
"%start_decls",a
"%start_declsLayout",a
"%start_letDecl",a
"%start_repl",a
"%start_schema",a
"%start_modName",a
"%start_helpName",a
"top_module",a
"module_def",a
"modInstParams",a
"namedModInstParams",a
"namedModInstParam",a
"modInstParam",a
"vmod_body",a
"imports1",a
"import",a
"optImportWhere",a
"optInst",a
"impName",a
"impNameBT",a
"mbAs",a
"mbImportSpec",a
"name_list",a
"mbHiding",a
"program",a
"program_layout",a
"top_decls",a
"vtop_decls",a
"vtop_decl",a
"sig_def",a
"sig_body",a
"mod_param_decl",a
"top_decl",a
"private_decls",a
"prim_bind",a
"foreign_bind",a
"parameter_decls",a
"par_decls",a
"par_decl",a
"doc",a
"mbDoc",a
"decl",a
"let_decls",a
"let_decl",a
"typeOrPropSyn",a
"topTypeConstraint",a
"propguards_cases",a
"propguards_case",a
"propguards_quals",a
"newtype",a
"newtype_body",a
"enum",a
"enum_body",a
"enum_con",a
"vars_comma",a
"var",a
"decls",a
"vdecls",a
"decls_layout",a
"repl",a
"qop",a
"op",a
"pat_op",a
"other_op",a
"ops",a
"expr",a
"exprNoWhere",a
"whereClause",a
"typedExpr",a
"simpleExpr",a
"longExpr",a
"ifBranches",a
"ifBranch",a
"vcaseBranches",a
"caseBranches",a
"caseBranch",a
"simpleRHS",a
"longRHS",a
"simpleApp",a
"longApp",a
"aexprs",a
"aexpr",a
"no_sel_aexpr",a
"sel_expr",a
"selector",a
"poly_terms",a
"poly_term",a
"tuple_exprs",a
"rec_expr",a
"field_exprs",a
"field_expr",a
"field_path",a
"field_how",a
"list_expr",a
"list_alts",a
"matches",a
"match",a
"pat",a
"cpat",a
"apats",a
"apat",a
"tuple_pats",a
"field_pat",a
"field_pats",a
"itpat",a
"ipat",a
"iapat",a
"iapats",a
"indices",a
"indices1",a
"iapats_indices",a
"opt_iapats_indices",a
"schema",a
"schema_vars",a
"schema_quals",a
"schema_qual",a
"kind",a
"schema_param",a
"schema_params",a
"type",a
"infix_type",a
"app_type",a
"atype",a
"ktype",a
"atypes",a
"dimensions",a
"tuple_types",a
"field_type",a
"field_types",a
"ident",a
"name",a
"smodName",a
"modName",a
"qname",a
"help_name",a
"tick_ty",a
"field_ty_val",a
"field_ty_vals",a
"NUM",a
"FRAC",a
"STRLIT",a
"CHARLIT",a
"IDENT",a
"QIDENT",a
"SELECTOR",a
"'include'",a
"'import'",a
"'as'",a
"'hiding'",a
"'private'",a
"'parameter'",a
"'property'",a
"'infix'",a
"'infixl'",a
"'infixr'",a
"'type'",a
"'newtype'",a
"'enum'",a
"'module'",a
"'submodule'",a
"'where'",a
"'let'",a
"'if'",a
"'then'",a
"'else'",a
"'case'",a
"'of'",a
"'interface'",a
"'x'",a
"'down'",a
"'by'",a
"'primitive'",a
"'constraint'",a
"'foreign'",a
"'Prop'",a
"'['",a
"']'",a
"'<-'",a
"'..'",a
"'...'",a
"'..<'",a
"'..>'",a
"'|'",a
"'<'",a
"'>'",a
"'('",a
"')'",a
"','",a
"';'",a
"'{'",a
"'}'",a
"'<|'",a
"'|>'",a
"'='",a
"'`'",a
"':'",a
"'->'",a
"'=>'",a
"'\\\\'",a
"'_'",a
"'v{'",a
"'v}'",a
"'v;'",a
"'+'",a
"'*'",a
"'^^'",a
"'-'",a
"'~'",a
"'#'",a
"'@'",a
"OP",a
"QOP",a
"DOC",a
"%eof"]
        bit_start :: Int
bit_start = Int
st Int -> Int -> Int
forall a. Num a => a -> a -> a
Prelude.* Int
221
        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
221
        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
220]
        token_strs_expected :: [a]
token_strs_expected = ((Bool, Int) -> [a]) -> [(Bool, Int)] -> [a]
forall (t :: * -> *) a b. Foldable t => (a -> [b]) -> t a -> [b]
Prelude.concatMap (Bool, Int) -> [a]
f [(Bool, Int)]
bits_indexed
        f :: (Bool, Int) -> [a]
f (Bool
Prelude.False, Int
_) = []
        f (Bool
Prelude.True, Int
nr) = [[a]
token_strs [a] -> Int -> a
forall a. HasCallStack => [a] -> Int -> a
Prelude.!! Int
nr]

happyActOffsets :: HappyAddr
happyActOffsets :: HappyAddr
happyActOffsets = Addr# -> HappyAddr
HappyA# Addr#
"\x1b\x00\xe5\x02\xe5\xff\xfd\x05\x13\x0a\x13\x0a\x16\x00\x75\x03\x43\x05\xdb\x0a\x1c\x0b\x8d\x05\x5b\x00\x1c\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x0e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd4\xff\x00\x00\x3b\x09\xd4\xff\x0c\x0b\x0c\x0b\x00\x00\x79\x00\x31\x0e\x00\x00\x00\x00\x19\x0b\x29\x0b\x00\x00\x00\x00\x50\x0b\x99\x04\x38\x00\x00\x00\x00\x00\xbe\x00\x00\x00\xb7\x00\x31\x01\x00\x00\x00\x00\x12\x0e\x00\x00\x00\x00\x00\x00\xab\x0d\x00\x00\x88\x0a\x00\x00\x47\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x70\x01\x81\x01\x9a\x01\x97\x0a\xfd\x0c\xfd\x05\xfd\x05\xbf\x05\x4f\x04\x61\x0a\x04\x00\xb7\x0d\x1f\x0d\x00\x00\x3a\x0a\x3a\x0a\x53\x01\x53\x01\x59\x09\x7a\x01\x00\x00\xed\xff\x08\x06\x33\x03\x00\x00\x33\x00\x53\x03\x43\x0e\x00\x00\x00\x00\xb2\x01\xcd\x01\xdc\x01\xb2\x0c\x1a\x06\x9e\x01\x00\x00\x95\x01\xf2\xff\x95\x01\x6a\x03\x95\x01\x0c\x03\xb5\x01\x00\x00\x00\x00\xd3\x01\x00\x00\x4a\x02\x00\x00\xc1\x01\x32\x02\xae\x03\x18\x02\xc8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb2\x09\xd0\x0b\x00\x00\x1f\x02\x33\x02\x1c\x0b\x00\x00\x27\x02\x00\x00\x43\x02\x6d\x00\x00\x00\x7c\x00\x00\x00\x60\x00\x4c\x02\x00\x00\x59\x02\xf4\x00\xe3\xff\x00\x00\x88\x01\x1f\x0d\xc1\x0c\x00\x00\x45\x00\xa5\x00\x00\x00\xd5\x0d\xd5\x0d\xd5\x0d\x1f\x0d\xfd\x05\x1f\x0d\x5b\x02\x68\x02\x00\x00\x00\x00\xca\x00\x03\x01\x50\x0b\x1f\x0d\x40\x04\x5f\x0b\x00\x00\x00\x00\xa0\x00\x00\x00\xc8\x0d\x00\x00\xe5\x0d\x00\x00\xd0\x0c\x00\x00\x00\x00\x00\x00\x86\x0b\xbe\x0a\x30\x01\x00\x00\x00\x00\x5e\x02\x00\x00\x7c\x02\x88\x02\x9a\x02\x00\x00\x32\x09\x00\x00\xb9\x02\xa8\x02\xf0\x00\x90\x01\x00\x00\x3a\x0a\x3a\x0a\xb1\x00\xbc\x02\xde\x02\x00\x00\xb0\x00\xec\x01\x57\x00\x00\x00\x5e\x00\x32\x09\x61\x00\x53\x03\x1a\x06\xd6\x02\x86\x0b\xc6\x01\xd5\x0d\xd5\x0d\xd5\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfd\x05\x86\x0b\x75\x03\x00\x00\xe3\x01\x00\x00\xf5\x01\xe0\x02\x02\x0e\xfc\x02\x4c\x01\x0a\x03\xbd\x01\x00\x00\x1a\x03\x00\x00\x95\x0b\x00\x00\xbc\x0b\x00\x00\xbc\x0b\xbc\x0b\xbc\x0b\x00\x00\x00\x00\x0b\x03\xbc\x0b\x0b\x03\x00\x00\x22\x03\x00\x00\x18\x00\x27\x03\x09\x0c\x00\x00\x57\x03\x00\x00\x00\x00\xa0\x03\xb6\x03\x00\x00\x6e\x0d\x00\x00\xbc\x0b\x00\x00\xbc\x0b\x4a\x00\x00\x00\xfc\x04\x2a\x03\x00\x00\x2a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xad\x03\xad\x03\xad\x03\xa9\x03\x00\x00\xb2\x03\xbc\x0b\xbe\x03\x1f\x0d\xfd\x05\xbb\x03\xcb\x0b\xfd\x05\xfd\x05\xfd\x05\x3b\x01\x00\x00\xfd\x05\x81\x05\x00\x00\xfd\x05\xfd\x05\x1f\x0d\xfd\x05\x00\x00\x00\x00\xfd\x05\x00\x00\x88\x0a\x00\x00\x8a\x02\x88\x0a\x00\x00\x88\x0a\x06\x04\x00\x00\x15\x00\xd8\x02\x05\x03\xd1\x03\x00\x00\x2d\x03\x00\x00\xdb\x03\x00\x00\xfd\x05\x13\x0a\x00\x00\x13\x0a\x00\x00\x00\x00\x00\x00\xd5\x0d\x00\x00\xc5\x03\xd3\x03\x00\x00\xe5\x03\xfd\x05\x00\x00\x1f\x0d\x00\x00\x00\x00\xcc\x03\x00\x00\xfe\x03\xdf\x03\xe7\x03\xe7\x03\xe7\x03\x00\x00\x1f\x0d\x00\x00\x1f\x0d\x1f\x0d\x00\x00\x00\x00\xf2\x0b\x1f\x0d\x00\x00\xe4\x03\x1f\x0d\x2a\x03\x00\x00\x00\x00\xd9\x09\x76\x09\xf2\x03\x00\x00\xf2\x03\x00\x00\xe1\x03\x01\x0c\xd5\x0d\x09\x04\xd6\x03\xf2\x03\x00\x00\x00\x00\x00\x00\x00\x00\x25\x04\xb6\x04\x2a\x03\x28\x0c\x28\x0c\x1c\x0b\x94\x00\x2a\x03\x00\x00\xeb\x03\xec\x03\x00\x00\xe6\x03\xf2\x03\xf5\x03\x2a\x03\x28\x0c\x00\x00\x04\x04\x0c\x04\xdf\x0c\x14\x04\x45\x04\x00\x00\x4a\x03\x09\x0c\x1c\x0b\x00\x00\xb5\x00\xb8\x00\x00\x00\x47\x06\x17\x04\x2f\x04\x29\x04\x37\x0c\x00\x00\x00\x00\xf8\x00\x00\x00\xf6\x09\x00\x00\x00\x00\x00\x00\xfd\x05\x1b\x04\x00\x00\x00\x00\x00\x00\x00\x00\xd5\x0d\xfd\x05\x1d\x04\x50\x04\xfd\x05\x1f\x0d\x3b\x04\x00\x00\x00\x00\x00\x00\x00\x00\x2a\x03\x00\x00\x5e\x0c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x42\x04\x00\x00\xfd\x05\x00\x00\x00\x00\x42\x04\x5a\x04\x8a\x00\x49\x04\x52\x04\x00\x00\x59\x04\xe5\x00\x13\x01\x6a\x01\x28\x02\xfd\x05\xfd\x05\x6b\x04\x1f\x0d\x1f\x0d\x6b\x04\x00\x00\x00\x00\x00\x00\xfd\x05\x6b\x04\x4e\x04\x63\x04\x00\x00\x5e\x0c\x5e\x0c\x00\x00\x4d\x04\x00\x00\x65\x04\x00\x00\x00\x00\x00\x00\x00\x00\x65\x04\x00\x00\x00\x00\x00\x00\x6e\x0d\x0b\x00\xa4\x0b\xae\x03\x4a\x04\x00\x00\x62\x04\xff\x04\x4a\x00\x4a\x00\x00\x00\xfd\x05\xfd\x05\x90\x04\xbc\x01\x00\x00\xe1\xff\x2d\x01\x00\x00\x87\x01\xbf\x01\x85\x04\xfd\x05\xfd\x05\x8e\x04\x5e\x0c\xfd\x05\x2a\x0d\x2a\x0d\xfd\x05\x00\x00\xa7\x04\x00\x00\x78\x04\x00\x00\x00\x00\x00\x00\xb9\x04\xb9\x04\x00\x00\xb9\x04\x00\x00\x00\x00\x00\x00\x4a\x00\x97\x04\xff\xff\x00\x00\x00\x00\x9c\x04\xce\x0a\x88\x04\x00\x00\x88\x04\x00\x00\x00\x00\xde\x04\xa4\x0b\xd7\x00\x1c\x0b\xde\x04\x2d\x0d\xee\x0c\xfd\x05\xb7\x04\x19\x04\x00\x00\xe5\x04\x6d\x0c\x35\x01\x50\x01\x00\x00\x00\x00\x00\x00\xbf\x04\x94\x0c\xd6\x04\x00\x00\x00\x00\x28\x04\x00\x00\x45\x02\xf9\x04\xfd\x05\xea\x04\xe1\x04\x00\x00\x00\x00\x00\x00\xe2\x04\x2a\x03\x00\x00\x08\x00\x00\x00\x00\x00\xf0\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xed\x04\x94\x0c\xa3\x0c\xff\x00\x00\x00\xe8\x04\x48\x01\x70\x0a\xa3\x0c\xf6\x04\x22\x05\x09\x05\x00\x00\x25\x05\x00\x00\xfd\x05\x25\x05\x25\x05\xfd\x05\xfd\x05\x1d\x05\x56\x0d\x00\x00\xfd\x05\x00\x00\x56\x0d\x3a\x05\x3a\x05\x15\x05\x21\x05\xae\x03\x00\x00\x20\x05\x00\x00\x00\x00\x4d\x05\x00\x00\xfd\x05\x4d\x05\x4d\x05\x4d\x05\x00\x00\x00\x00\xff\xff\xff\xff\x00\x00\x2d\x05\x4a\x00\x40\x04\x51\x05\x00\x00\x64\x0d\x2a\x03\x00\x00\x5a\x05\x77\x03\x00\x00\x00\x00\x28\x04\x00\x00\xff\xff\x32\x05\x00\x00\x00\x00\x00\x00\x3e\x05\x00\x00\x00\x00\x71\x01\xe8\x01\x00\x00\x3f\x05\x00\x00\x48\x01\x00\x00\x48\x01\x64\x05\x00\x00\x00\x00\x40\x04\x00\x00\x00\x00\x00\x00\x00\x00"#

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

happyCheck :: HappyAddr
happyCheck :: HappyAddr
happyCheck = Addr# -> HappyAddr
HappyA# Addr#
"\xff\xff\x05\x00\x01\x00\x25\x00\x26\x00\x01\x00\x01\x00\x0b\x00\x09\x00\x17\x00\x04\x00\x02\x00\x03\x00\x04\x00\x05\x00\x02\x00\x03\x00\x04\x00\x05\x00\x0b\x00\x0b\x00\x29\x00\x01\x00\x06\x00\x0b\x00\x30\x00\x5f\x00\x60\x00\x3b\x00\x3a\x00\x30\x00\x32\x00\x4c\x00\x5f\x00\x17\x00\x1f\x00\x3f\x00\x14\x00\x15\x00\x3a\x00\x47\x00\x18\x00\x47\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x17\x00\x15\x00\x20\x00\x21\x00\x22\x00\x1f\x00\x7a\x00\x25\x00\x06\x00\x30\x00\x1e\x00\x0f\x00\x37\x00\x7a\x00\x05\x00\x4c\x00\x34\x00\x2f\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x14\x00\x15\x00\x0b\x00\x0c\x00\x18\x00\x4b\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x0b\x00\x38\x00\x20\x00\x21\x00\x22\x00\x0b\x00\x3f\x00\x25\x00\x1f\x00\x7a\x00\x7b\x00\x3f\x00\x30\x00\x70\x00\x71\x00\x72\x00\x73\x00\x2f\x00\x30\x00\x76\x00\x7a\x00\x7b\x00\x6e\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x38\x00\x27\x00\x35\x00\x5d\x00\x25\x00\x15\x00\x7a\x00\x1b\x00\x62\x00\x63\x00\x7a\x00\x7a\x00\x32\x00\x7c\x00\x7d\x00\x47\x00\x7a\x00\x81\x00\x7c\x00\x7d\x00\x7a\x00\x7a\x00\x7c\x00\x7d\x00\x7a\x00\x2d\x00\x7c\x00\x7d\x00\x7a\x00\x06\x00\x7c\x00\x7d\x00\x7a\x00\x7b\x00\x43\x00\x5d\x00\x7e\x00\x32\x00\x47\x00\x32\x00\x62\x00\x63\x00\x35\x00\x14\x00\x15\x00\x3a\x00\x38\x00\x18\x00\x08\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x33\x00\x17\x00\x20\x00\x21\x00\x22\x00\x7a\x00\x7b\x00\x25\x00\x47\x00\x16\x00\x16\x00\x7a\x00\x7b\x00\x40\x00\x41\x00\x7e\x00\x34\x00\x2f\x00\x30\x00\x29\x00\x2a\x00\x3c\x00\x7a\x00\x23\x00\x7c\x00\x7d\x00\x11\x00\x3f\x00\x13\x00\x2a\x00\x7a\x00\x2c\x00\x7c\x00\x7d\x00\x19\x00\x7a\x00\x1b\x00\x7c\x00\x7d\x00\x17\x00\x17\x00\x20\x00\x21\x00\x22\x00\x27\x00\x1d\x00\x25\x00\x05\x00\x06\x00\x2f\x00\x30\x00\x33\x00\x0a\x00\x0b\x00\x0c\x00\x32\x00\x2f\x00\x30\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x5d\x00\x40\x00\x41\x00\x0b\x00\x32\x00\x62\x00\x63\x00\x14\x00\x15\x00\x33\x00\x1f\x00\x18\x00\x33\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x26\x00\x33\x00\x20\x00\x21\x00\x22\x00\x40\x00\x41\x00\x25\x00\x40\x00\x41\x00\x30\x00\x33\x00\x7a\x00\x7b\x00\x34\x00\x5d\x00\x7e\x00\x2f\x00\x30\x00\x4c\x00\x62\x00\x63\x00\x5d\x00\x17\x00\x3e\x00\x41\x00\x33\x00\x62\x00\x63\x00\x14\x00\x15\x00\x5c\x00\x5d\x00\x18\x00\x48\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x40\x00\x41\x00\x20\x00\x21\x00\x22\x00\x7a\x00\x7b\x00\x25\x00\x3a\x00\x7e\x00\x31\x00\x32\x00\x7a\x00\x7b\x00\x31\x00\x32\x00\x7e\x00\x2f\x00\x30\x00\x17\x00\x33\x00\x47\x00\x7a\x00\x7b\x00\x5d\x00\x2d\x00\x7e\x00\x33\x00\x20\x00\x62\x00\x63\x00\x14\x00\x15\x00\x40\x00\x41\x00\x18\x00\x38\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x41\x00\x08\x00\x20\x00\x21\x00\x22\x00\x43\x00\x44\x00\x25\x00\x17\x00\x57\x00\x58\x00\x59\x00\x7a\x00\x7b\x00\x07\x00\x5d\x00\x7e\x00\x2f\x00\x30\x00\x61\x00\x62\x00\x63\x00\x5d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x62\x00\x63\x00\x5b\x00\x15\x00\x5d\x00\x33\x00\x18\x00\x35\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x37\x00\x33\x00\x20\x00\x21\x00\x22\x00\x7a\x00\x7b\x00\x25\x00\x34\x00\x7e\x00\x01\x00\x42\x00\x7a\x00\x7b\x00\x40\x00\x41\x00\x7e\x00\x2f\x00\x30\x00\x3f\x00\x33\x00\x7a\x00\x7b\x00\x32\x00\x5d\x00\x7e\x00\x17\x00\x01\x00\x33\x00\x62\x00\x63\x00\x3a\x00\x15\x00\x20\x00\x41\x00\x18\x00\x21\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x40\x00\x41\x00\x20\x00\x21\x00\x22\x00\x2d\x00\x2e\x00\x25\x00\x4a\x00\x4b\x00\x4c\x00\x01\x00\x7a\x00\x7b\x00\x17\x00\x4c\x00\x7e\x00\x2f\x00\x30\x00\x05\x00\x20\x00\x34\x00\x5d\x00\x20\x00\x0a\x00\x0b\x00\x0c\x00\x62\x00\x63\x00\x33\x00\x20\x00\x19\x00\x3f\x00\x1b\x00\x2e\x00\x01\x00\x6e\x00\x6f\x00\x20\x00\x21\x00\x22\x00\x31\x00\x32\x00\x25\x00\x2e\x00\x1f\x00\x78\x00\x79\x00\x7a\x00\x31\x00\x32\x00\x7a\x00\x7b\x00\x2f\x00\x30\x00\x7e\x00\x7a\x00\x7b\x00\x22\x00\x05\x00\x7e\x00\x25\x00\x01\x00\x5d\x00\x0a\x00\x0b\x00\x0c\x00\x35\x00\x62\x00\x63\x00\x17\x00\x2f\x00\x30\x00\x31\x00\x72\x00\x73\x00\x22\x00\x01\x00\x76\x00\x25\x00\x21\x00\x4c\x00\x7a\x00\x7b\x00\x22\x00\x1f\x00\x7e\x00\x25\x00\x33\x00\x2f\x00\x30\x00\x31\x00\x7a\x00\x7b\x00\x31\x00\x32\x00\x7e\x00\x2f\x00\x30\x00\x5d\x00\x32\x00\x22\x00\x72\x00\x73\x00\x62\x00\x63\x00\x76\x00\x35\x00\x40\x00\x41\x00\x7a\x00\x7b\x00\x72\x00\x73\x00\x7e\x00\x17\x00\x76\x00\x5d\x00\x1a\x00\x73\x00\x7a\x00\x7b\x00\x62\x00\x63\x00\x7e\x00\x4c\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x22\x00\x7e\x00\x32\x00\x25\x00\x5d\x00\x35\x00\x31\x00\x32\x00\x22\x00\x62\x00\x63\x00\x25\x00\x5d\x00\x2f\x00\x30\x00\x7a\x00\x7b\x00\x62\x00\x63\x00\x7e\x00\x32\x00\x2f\x00\x30\x00\x35\x00\x32\x00\x05\x00\x22\x00\x24\x00\x25\x00\x25\x00\x0a\x00\x0b\x00\x0c\x00\x7a\x00\x7b\x00\x37\x00\x38\x00\x7e\x00\x12\x00\x2f\x00\x30\x00\x7a\x00\x7b\x00\x22\x00\x17\x00\x7e\x00\x25\x00\x35\x00\x36\x00\x37\x00\x38\x00\x1f\x00\x15\x00\x20\x00\x21\x00\x05\x00\x2f\x00\x30\x00\x03\x00\x5d\x00\x0a\x00\x0b\x00\x0c\x00\x22\x00\x62\x00\x63\x00\x25\x00\x5d\x00\x30\x00\x40\x00\x72\x00\x73\x00\x62\x00\x63\x00\x76\x00\x3f\x00\x2f\x00\x30\x00\x7a\x00\x7b\x00\x22\x00\x1f\x00\x7e\x00\x25\x00\x7a\x00\x5d\x00\x7c\x00\x7d\x00\x7a\x00\x7b\x00\x62\x00\x63\x00\x7e\x00\x2f\x00\x30\x00\x3f\x00\x7a\x00\x7b\x00\x22\x00\x33\x00\x7e\x00\x25\x00\x5d\x00\x35\x00\x5d\x00\x4e\x00\x4f\x00\x62\x00\x63\x00\x62\x00\x63\x00\x2f\x00\x30\x00\x38\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x31\x00\x7e\x00\x7f\x00\x5d\x00\x33\x00\x08\x00\x7a\x00\x7b\x00\x62\x00\x63\x00\x7e\x00\x2d\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x7a\x00\x7e\x00\x7c\x00\x5d\x00\x36\x00\x37\x00\x38\x00\x44\x00\x62\x00\x63\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x2d\x00\x7a\x00\x7b\x00\x27\x00\x28\x00\x7e\x00\x7a\x00\x5d\x00\x7c\x00\x7d\x00\x7a\x00\x7b\x00\x62\x00\x63\x00\x7e\x00\x23\x00\x24\x00\x25\x00\x7a\x00\x7b\x00\x35\x00\x7a\x00\x7e\x00\x7c\x00\x7d\x00\x38\x00\x5a\x00\x5b\x00\x3b\x00\x5d\x00\x5e\x00\x7a\x00\x34\x00\x7c\x00\x7d\x00\x32\x00\x7a\x00\x7b\x00\x3a\x00\x3b\x00\x7e\x00\x3d\x00\x3e\x00\x3f\x00\x35\x00\x36\x00\x37\x00\x38\x00\x31\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x5d\x00\x7a\x00\x7b\x00\x00\x00\x2d\x00\x7e\x00\x63\x00\x64\x00\x05\x00\x06\x00\x67\x00\x08\x00\x32\x00\x0a\x00\x0b\x00\x0c\x00\x7a\x00\x7b\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x4a\x00\x4b\x00\x4c\x00\x35\x00\x36\x00\x37\x00\x38\x00\x7a\x00\x7b\x00\x53\x00\x54\x00\x7e\x00\x1f\x00\x27\x00\x78\x00\x22\x00\x7a\x00\x5d\x00\x32\x00\x26\x00\x00\x00\x35\x00\x38\x00\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\x08\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x3a\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x35\x00\x36\x00\x37\x00\x38\x00\x3e\x00\x27\x00\x28\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x1f\x00\x7e\x00\x31\x00\x22\x00\x05\x00\x4b\x00\x4c\x00\x26\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x32\x00\x05\x00\x06\x00\x35\x00\x31\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x27\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x73\x00\x3c\x00\x75\x00\x1f\x00\x3e\x00\x37\x00\x38\x00\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\x1f\x00\x31\x00\x0a\x00\x0b\x00\x0c\x00\x4b\x00\x4c\x00\x26\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x32\x00\x76\x00\x77\x00\x35\x00\x30\x00\x7a\x00\x7b\x00\x3f\x00\x34\x00\x7e\x00\x1f\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x05\x00\x06\x00\x3e\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\x4c\x00\x16\x00\x2e\x00\x2f\x00\x39\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x1e\x00\x1f\x00\x7a\x00\x7b\x00\x22\x00\x18\x00\x24\x00\x0e\x00\x26\x00\x10\x00\x42\x00\x3c\x00\x44\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x30\x00\x0e\x00\x49\x00\x10\x00\x34\x00\x7a\x00\x7b\x00\x36\x00\x37\x00\x38\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3e\x00\x32\x00\x40\x00\x5b\x00\x35\x00\x5d\x00\x00\x00\x36\x00\x37\x00\x38\x00\x39\x00\x05\x00\x06\x00\x4b\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\x5d\x00\x16\x00\x5a\x00\x5b\x00\x27\x00\x5d\x00\x5e\x00\x7a\x00\x7b\x00\x1e\x00\x1f\x00\x7e\x00\x3f\x00\x22\x00\x5b\x00\x24\x00\x5d\x00\x26\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x27\x00\x30\x00\x32\x00\x7a\x00\x7b\x00\x34\x00\x3a\x00\x7e\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x38\x00\x7e\x00\x3e\x00\x80\x00\x40\x00\x31\x00\x7a\x00\x7b\x00\x00\x00\x38\x00\x7e\x00\x7a\x00\x7b\x00\x05\x00\x06\x00\x4b\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\x01\x00\x16\x00\x38\x00\x7a\x00\x7b\x00\x31\x00\x48\x00\x7e\x00\x3c\x00\x1e\x00\x1f\x00\x2d\x00\x47\x00\x22\x00\x17\x00\x24\x00\x38\x00\x26\x00\x32\x00\x01\x00\x3a\x00\x38\x00\x04\x00\x05\x00\x06\x00\x17\x00\x4b\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x44\x00\x03\x00\x01\x00\x3f\x00\x3f\x00\x04\x00\x05\x00\x06\x00\x3a\x00\x3e\x00\x4b\x00\x0a\x00\x0b\x00\x0c\x00\x36\x00\x37\x00\x38\x00\x1f\x00\x4a\x00\x4b\x00\x4c\x00\x38\x00\x4b\x00\x5b\x00\x26\x00\x5d\x00\x52\x00\x53\x00\x54\x00\x38\x00\x05\x00\x2d\x00\x1f\x00\x34\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x26\x00\x0a\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x3f\x00\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x7a\x00\x7b\x00\x1f\x00\x31\x00\x7e\x00\x47\x00\x3a\x00\x4b\x00\x48\x00\x3e\x00\x17\x00\x19\x00\x7a\x00\x7b\x00\x1c\x00\x31\x00\x7e\x00\x1f\x00\x3f\x00\x30\x00\x17\x00\x44\x00\x4b\x00\x32\x00\x26\x00\x2d\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x28\x00\x17\x00\x34\x00\x32\x00\x36\x00\x38\x00\x3a\x00\x39\x00\x5b\x00\x40\x00\x5d\x00\x3d\x00\x3e\x00\x78\x00\x79\x00\x7a\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x01\x00\x38\x00\x5d\x00\x04\x00\x05\x00\x06\x00\x3b\x00\x3f\x00\x63\x00\x0a\x00\x0b\x00\x0c\x00\x21\x00\x17\x00\x7a\x00\x7b\x00\x7a\x00\x7b\x00\x7e\x00\x59\x00\x7e\x00\x21\x00\x38\x00\x5d\x00\x23\x00\x24\x00\x25\x00\x61\x00\x62\x00\x63\x00\x1f\x00\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\x17\x00\x26\x00\x0a\x00\x0b\x00\x0c\x00\x36\x00\x37\x00\x38\x00\x39\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x15\x00\x16\x00\x34\x00\x7a\x00\x7b\x00\x17\x00\x3a\x00\x7e\x00\x4b\x00\x1e\x00\x1f\x00\x3a\x00\x3e\x00\x36\x00\x37\x00\x38\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x35\x00\x36\x00\x37\x00\x38\x00\x0a\x00\x3a\x00\x3b\x00\x34\x00\x3d\x00\x3e\x00\x3f\x00\x39\x00\x36\x00\x37\x00\x38\x00\x39\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x17\x00\x01\x00\x3f\x00\x50\x00\x04\x00\x05\x00\x06\x00\x2d\x00\x05\x00\x06\x00\x0a\x00\x0b\x00\x0c\x00\x0a\x00\x0b\x00\x0c\x00\x07\x00\x08\x00\x5a\x00\x5b\x00\x17\x00\x5d\x00\x5e\x00\x32\x00\x15\x00\x16\x00\x36\x00\x37\x00\x38\x00\x39\x00\x38\x00\x1f\x00\x17\x00\x1e\x00\x1f\x00\x35\x00\x30\x00\x25\x00\x26\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x3a\x00\x40\x00\x7a\x00\x7b\x00\x3f\x00\x30\x00\x7e\x00\x7a\x00\x7b\x00\x34\x00\x3b\x00\x7e\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x17\x00\x3e\x00\x32\x00\x17\x00\x3e\x00\x21\x00\x43\x00\x36\x00\x37\x00\x38\x00\x47\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x36\x00\x37\x00\x38\x00\x0a\x00\x0b\x00\x0c\x00\x3b\x00\x17\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x35\x00\x5d\x00\x1f\x00\x20\x00\x21\x00\x18\x00\x19\x00\x63\x00\x64\x00\x1c\x00\x40\x00\x67\x00\x1f\x00\x3f\x00\x17\x00\x38\x00\x7a\x00\x7b\x00\x17\x00\x26\x00\x7e\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x17\x00\x40\x00\x30\x00\x7a\x00\x7b\x00\x38\x00\x34\x00\x7e\x00\x36\x00\x3b\x00\x17\x00\x39\x00\x1f\x00\x20\x00\x21\x00\x3d\x00\x3e\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x45\x00\x46\x00\x00\x00\x0a\x00\x0b\x00\x0c\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x05\x00\x06\x00\x12\x00\x5d\x00\x33\x00\x0a\x00\x0b\x00\x0c\x00\x19\x00\x63\x00\x64\x00\x1c\x00\x7a\x00\x7b\x00\x1f\x00\x3f\x00\x7e\x00\x73\x00\x78\x00\x79\x00\x7a\x00\x26\x00\x4d\x00\x4d\x00\x7a\x00\x7b\x00\x1f\x00\x3c\x00\x7e\x00\x2e\x00\x2f\x00\x30\x00\x7a\x00\x7b\x00\x28\x00\x34\x00\x7e\x00\x36\x00\x3f\x00\x6d\x00\x39\x00\x2e\x00\x2f\x00\x30\x00\x3d\x00\x3e\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x45\x00\x46\x00\x55\x00\x0a\x00\x0b\x00\x0c\x00\x4f\x00\x28\x00\x0a\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x19\x00\x0d\x00\x6d\x00\x1c\x00\x6d\x00\x0d\x00\x1f\x00\x3f\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x6d\x00\x26\x00\x27\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x0d\x00\x5d\x00\x30\x00\x2b\x00\x6d\x00\x7a\x00\x34\x00\x63\x00\x36\x00\x65\x00\x09\x00\x39\x00\x3c\x00\xff\xff\xff\xff\x3d\x00\x3e\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x45\x00\x46\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\x7a\x00\x7b\x00\x1f\x00\xff\xff\x7e\x00\x05\x00\x06\x00\xff\xff\xff\xff\x26\x00\x0a\x00\x0b\x00\x0c\x00\x1f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x26\x00\xff\xff\xff\xff\x34\x00\xff\xff\x36\x00\xff\xff\x2d\x00\x39\x00\xff\xff\x30\x00\x1f\x00\x3d\x00\x3e\x00\x34\x00\x07\x00\x08\x00\xff\xff\x26\x00\xff\xff\x45\x00\x46\x00\xff\xff\xff\xff\x3e\x00\xff\xff\x2e\x00\x2f\x00\x30\x00\x31\x00\x05\x00\x17\x00\x34\x00\xff\xff\x48\x00\x0a\x00\x0b\x00\x0c\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x3e\x00\x12\x00\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x3a\x00\x3b\x00\x1f\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\xff\xff\xff\xff\xff\xff\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\x50\x00\x3d\x00\x3e\x00\x3f\x00\xff\xff\x41\x00\x56\x00\xff\xff\xff\xff\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x3a\x00\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\xff\xff\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\x3b\x00\xff\xff\x3d\x00\x3e\x00\x3f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x05\x00\x06\x00\xff\xff\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x7a\x00\x7b\x00\x58\x00\x59\x00\x7e\x00\xff\xff\xff\xff\x5d\x00\x1f\x00\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\xff\xff\x26\x00\x00\x00\x1f\x00\xff\xff\x7a\x00\x7b\x00\x05\x00\x06\x00\x7e\x00\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\x0f\x00\x10\x00\x11\x00\x12\x00\xff\xff\x7a\x00\x7b\x00\xff\xff\x3e\x00\x7e\x00\x5a\x00\x5b\x00\xff\xff\x5d\x00\x00\x00\xff\xff\x1f\x00\xff\xff\x48\x00\x05\x00\x06\x00\x5d\x00\xff\xff\x26\x00\x0a\x00\x0b\x00\x0c\x00\x63\x00\x64\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x30\x00\xff\xff\x5a\x00\x5b\x00\x34\x00\x5d\x00\x5e\x00\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\x1f\x00\x7e\x00\x3e\x00\xff\xff\x40\x00\x7a\x00\x7b\x00\x26\x00\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x7a\x00\x7b\x00\x5d\x00\xff\xff\x7e\x00\xff\xff\xff\xff\x00\x00\x63\x00\x3e\x00\xff\xff\x40\x00\x05\x00\x06\x00\xff\xff\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\xff\xff\x16\x00\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\xff\xff\x1e\x00\x1f\x00\xff\xff\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\x26\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\x05\x00\x06\x00\xff\xff\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\x0f\x00\x10\x00\x11\x00\x12\x00\xff\xff\xff\xff\x5d\x00\xff\xff\x3e\x00\xff\xff\xff\xff\x5d\x00\x63\x00\xff\xff\x00\x00\x66\x00\x1f\x00\x63\x00\x64\x00\x05\x00\x06\x00\x67\x00\x68\x00\x26\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\x0f\x00\x10\x00\x11\x00\x12\x00\x30\x00\xff\xff\x7a\x00\x7b\x00\x34\x00\x35\x00\x7e\x00\x7a\x00\x7b\x00\xff\xff\x00\x00\x7e\x00\x1f\x00\xff\xff\x3e\x00\x05\x00\x06\x00\xff\xff\xff\xff\x26\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\x0f\x00\x10\x00\x11\x00\x12\x00\x30\x00\x4a\x00\x4b\x00\x4c\x00\x34\x00\x35\x00\xff\xff\x5d\x00\x51\x00\x52\x00\x53\x00\x54\x00\x1f\x00\x63\x00\x3e\x00\xff\xff\x66\x00\xff\xff\xff\xff\x26\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\xff\xff\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\x3e\x00\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\x7a\x00\x7b\x00\x1f\x00\xff\xff\x7e\x00\xff\xff\xff\xff\x5a\x00\x5b\x00\x26\x00\x5d\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\xff\xff\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\x36\x00\xff\xff\xff\xff\x39\x00\xff\xff\x05\x00\x06\x00\x3d\x00\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x7a\x00\x7b\x00\x1f\x00\xff\xff\x7e\x00\xff\xff\xff\xff\x15\x00\x16\x00\x26\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x1f\x00\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x35\x00\x36\x00\x01\x00\xff\xff\x39\x00\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x39\x00\xff\xff\xff\xff\x5a\x00\x5b\x00\x26\x00\x5d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x30\x00\xff\xff\x23\x00\xff\xff\x34\x00\x26\x00\x36\x00\x01\x00\xff\xff\x39\x00\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\x7a\x00\x7b\x00\xff\xff\x01\x00\x7e\x00\xff\xff\x04\x00\x05\x00\x06\x00\x3e\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x01\x00\x1f\x00\xff\xff\x04\x00\x05\x00\x06\x00\x5d\x00\xff\xff\x26\x00\x0a\x00\x0b\x00\x0c\x00\x63\x00\x5d\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x30\x00\x63\x00\xff\xff\x23\x00\x34\x00\x35\x00\x26\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x3e\x00\xff\xff\x30\x00\x7a\x00\x7b\x00\x26\x00\x34\x00\x7e\x00\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x30\x00\x3e\x00\x01\x00\xff\xff\x34\x00\x04\x00\x05\x00\x06\x00\xff\xff\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\x3e\x00\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x05\x00\x06\x00\x0a\x00\x0b\x00\x0c\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\x01\x00\x1f\x00\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x15\x00\x26\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\x1f\x00\x72\x00\x73\x00\x1f\x00\x30\x00\x76\x00\xff\xff\x26\x00\x34\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\x1f\x00\x30\x00\x3e\x00\xff\xff\xff\xff\x34\x00\xff\xff\x26\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x3e\x00\xff\xff\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\xff\xff\x4a\x00\x4b\x00\x4c\x00\xff\xff\x26\x00\xff\xff\xff\xff\xff\xff\x52\x00\x53\x00\x54\x00\xff\xff\x1f\x00\xff\xff\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\x7a\x00\x7b\x00\xff\xff\x1f\x00\x7e\x00\xff\xff\xff\xff\x05\x00\x06\x00\xff\xff\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\x1f\x00\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\x08\x00\x09\x00\xff\xff\x1f\x00\xff\xff\xff\xff\x0e\x00\xff\xff\xff\xff\xff\xff\x26\x00\x13\x00\x14\x00\xff\xff\x16\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x30\x00\xff\xff\x1e\x00\xff\xff\x34\x00\x26\x00\x22\x00\x01\x00\x24\x00\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\x05\x00\x06\x00\xff\xff\x1f\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\x26\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x15\x00\x16\x00\x1f\x00\xff\xff\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\x1f\x00\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\x6b\x00\x6c\x00\xff\xff\x1f\x00\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\x26\x00\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\x1f\x00\x7e\x00\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\x26\x00\x76\x00\x77\x00\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\x1f\x00\x7e\x00\x30\x00\xff\xff\x81\x00\x82\x00\x34\x00\x26\x00\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\x30\x00\x0a\x00\x0b\x00\x0c\x00\x34\x00\xff\xff\xff\xff\x01\x00\xff\xff\xff\xff\x04\x00\x05\x00\x06\x00\xff\xff\x3e\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\xff\xff\xff\xff\x05\x00\x06\x00\xff\xff\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x30\x00\xff\xff\x05\x00\x06\x00\x34\x00\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x3e\x00\x30\x00\xff\xff\x05\x00\x06\x00\x34\x00\x26\x00\x27\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x3e\x00\x30\x00\xff\xff\x05\x00\x06\x00\x34\x00\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x3e\x00\x30\x00\x31\x00\x05\x00\x06\x00\x34\x00\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\x1f\x00\x3e\x00\x30\x00\xff\xff\x05\x00\x06\x00\x34\x00\x26\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\x3b\x00\xff\xff\x1f\x00\x3e\x00\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\xff\xff\xff\xff\x38\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\x3e\x00\x30\x00\xff\xff\xff\xff\xff\xff\x34\x00\x26\x00\x05\x00\x06\x00\x38\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\x3e\x00\x30\x00\xff\xff\x05\x00\x06\x00\x34\x00\x05\x00\x06\x00\x0a\x00\x0b\x00\x0c\x00\x0a\x00\x0b\x00\x0c\x00\xff\xff\x3e\x00\xff\xff\xff\xff\x1f\x00\xff\xff\xff\xff\xff\xff\x15\x00\x16\x00\xff\xff\x26\x00\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\x1e\x00\x1f\x00\xff\xff\xff\xff\x30\x00\x26\x00\xff\xff\xff\xff\x34\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x05\x00\x06\x00\x3e\x00\x34\x00\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x05\x00\x06\x00\x3e\x00\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x1f\x00\xff\xff\xff\xff\xff\xff\x15\x00\x16\x00\xff\xff\x26\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1e\x00\x1f\x00\xff\xff\x17\x00\x30\x00\xff\xff\x1a\x00\x1b\x00\x34\x00\x1d\x00\xff\xff\xff\xff\x20\x00\x21\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3e\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\xff\xff\x31\x00\x32\x00\x33\x00\x3e\x00\x35\x00\xff\xff\xff\xff\x38\x00\xff\xff\x3a\x00\x3b\x00\x3c\x00\xff\xff\xff\xff\xff\xff\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x01\x00\xff\xff\x4c\x00\xff\xff\x05\x00\x06\x00\xff\xff\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\xff\xff\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\x1f\x00\x76\x00\xff\xff\x2e\x00\x2f\x00\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\x3a\x00\xff\xff\x30\x00\x3d\x00\xff\xff\xff\xff\x34\x00\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x2e\x00\x2f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x19\x00\xff\xff\xff\xff\x1c\x00\x3a\x00\x2e\x00\x2f\x00\x3d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x2e\x00\x2f\x00\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x3a\x00\xff\xff\xff\xff\x3d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x2e\x00\x2f\x00\xff\xff\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\x3c\x00\xff\xff\x2e\x00\x2f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x3a\x00\xff\xff\x4c\x00\x2e\x00\x2f\x00\xff\xff\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\xff\xff\xff\xff\x2e\x00\x2f\x00\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x3b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x38\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\xff\xff\x49\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x6c\x00\xff\xff\x7e\x00\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x6c\x00\xff\xff\x7e\x00\xff\xff\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\x6d\x00\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\x00\x70\x00\x71\x00\x72\x00\x73\x00\xff\xff\xff\xff\x76\x00\xff\xff\xff\xff\xff\xff\x7a\x00\x7b\x00\xff\xff\xff\xff\x7e\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"#

happyTable :: HappyAddr
happyTable :: HappyAddr
happyTable = Addr# -> HappyAddr
HappyA# Addr#
"\x00\x00\xab\x02\x12\x01\x33\x02\x34\x02\xcd\x00\xa4\x01\x5c\x02\x71\x02\x9d\x00\xa9\x02\x86\x02\x59\x02\x5a\x02\x5b\x02\x58\x02\x59\x02\x5a\x02\x5b\x02\x65\x02\x5c\x02\x65\x01\xcd\x00\x88\x00\x5c\x02\x60\x01\x9d\x00\x9e\x00\x81\x02\x7c\x01\xbb\x02\xbb\x00\xff\xff\xbd\x01\x0b\x02\xce\x00\x7c\x00\x89\x00\x8a\x00\xbc\x00\x7d\x01\x8b\x00\x7d\x01\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x15\x01\x0e\x00\x90\x00\x91\x00\x92\x00\xce\x00\x9f\x00\x67\x00\x08\x02\xce\xff\x87\x00\xae\x02\xcf\x00\x9f\x00\x17\x00\xff\xff\x0c\x02\x68\x00\x69\x00\x19\x00\x1a\x00\x1b\x00\x89\x00\x8a\x00\xa8\x01\xa9\x01\x8b\x00\x85\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x05\x02\x16\x01\x90\x00\x91\x00\x92\x00\x3c\x02\x66\x00\x67\x00\x1c\x00\x12\x00\x35\x02\x88\x00\xaf\x02\x66\x01\x32\x00\x33\x00\x34\x00\x68\x00\x69\x00\x35\x00\x12\x00\x61\x01\xf8\x01\x12\x00\x13\x00\x12\x00\x61\x01\x36\x00\xb1\x00\x77\x01\xfd\x00\x6b\x00\xfe\x01\x0e\x00\xf9\x01\x3b\x01\x6c\x00\x6d\x00\x25\x02\x28\x00\x78\x01\x29\x00\xaa\x01\xb2\x00\x28\x00\x26\x02\x29\x00\x13\x01\x28\x00\xaa\x02\x29\x00\x13\x01\x5d\x02\x3c\x01\x29\x00\xaa\x01\x5d\x02\x89\x02\x29\x00\xaa\x01\x12\x00\x6e\x00\xff\x01\x6b\x00\x6f\x00\xbb\x00\x00\x02\x81\x01\x6c\x00\x6d\x00\x82\x01\x89\x00\x8a\x00\x3a\x01\x38\x01\x8b\x00\x8f\x01\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x86\x01\x9d\x00\x90\x00\x91\x00\x92\x00\x12\x00\x61\x01\x67\x00\xb2\x00\x90\x01\xa3\x01\x12\x00\x6e\x00\x87\x01\x88\x01\x6f\x00\x84\x01\x68\x00\x69\x00\x22\x02\x23\x02\x0c\x01\x28\x00\xa4\x01\x29\x00\xaa\x01\x7c\x00\x85\x01\x7d\x00\x91\x01\x28\x00\x92\x01\x29\x00\xaa\x01\x7e\x00\x28\x00\x7f\x00\x29\x00\xaa\x01\x9d\x00\x9d\x00\x80\x00\x81\x00\x82\x00\x75\x01\x3e\x01\x67\x00\x17\x00\x18\x00\xe4\x00\xe5\x00\x5d\x01\x19\x00\x1a\x00\x1b\x00\x76\x01\x68\x00\x69\x00\x41\x01\x42\x01\x43\x01\x44\x01\x45\x01\x6b\x00\x5e\x01\x5f\x01\x65\x02\x46\x01\x6c\x00\x6d\x00\x9a\x00\x8a\x00\x86\x01\x1c\x00\x8b\x00\x38\x02\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x75\x00\xf7\x00\x90\x00\x91\x00\x92\x00\x3b\x02\x88\x01\x67\x00\x39\x02\x3a\x02\xa8\x00\x86\x01\x12\x00\x6e\x00\x77\x00\x6b\x00\x6f\x00\x68\x00\x69\x00\xff\xff\xe6\x00\xe7\x00\x6b\x00\x9d\x00\x78\x00\x88\x01\xd3\xff\x6c\x00\x6d\x00\xaf\x01\x8a\x00\x78\x01\x79\x01\x8b\x00\x6b\x01\x8c\x00\x8d\x00\x8e\x00\x8f\x00\xd3\xff\xd3\xff\x90\x00\x91\x00\x92\x00\x12\x00\x6e\x00\x67\x00\x1e\x02\x6f\x00\x48\x01\x49\x01\x12\x00\x6e\x00\x7e\x01\x78\x01\x6f\x00\x68\x00\x69\x00\x9d\x00\x5d\x01\xb2\x00\x12\x00\x13\x00\x6b\x00\xb9\x00\x6f\x00\x95\x02\x1d\x02\x6c\x00\x6d\x00\x49\x02\x8a\x00\x2f\x02\x5f\x01\x8b\x00\x69\x01\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x96\x02\xb3\x02\x90\x00\x91\x00\x92\x00\x15\x02\x16\x02\x67\x00\x9d\x00\xe0\x01\xe1\x01\xe2\x01\x12\x00\x6e\x00\xf1\x00\x6b\x00\x6f\x00\x68\x00\x69\x00\xe3\x01\xe4\x01\x6e\x01\x6b\x00\xb4\x02\xb1\x01\x80\x00\xb2\x01\x6c\x00\x6d\x00\x14\x02\xb8\x01\xa4\x00\x7f\x02\x8b\x00\x80\x02\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x52\x01\x86\x01\x90\x00\x91\x00\x92\x00\x12\x00\x13\x00\x67\x00\xec\x01\x6f\x00\xef\x00\x53\x01\x12\x00\x6e\x00\x4d\x02\x88\x01\x6f\x00\x68\x00\x69\x00\xed\x01\x38\x02\x12\x00\x13\x00\x22\x01\x6b\x00\xa6\x00\x9d\x00\xee\x00\x38\x02\x6c\x00\x6d\x00\x23\x01\xb7\x01\x4f\x02\x3a\x02\x8b\x00\x1c\x02\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x4c\x02\x3a\x02\x90\x00\x91\x00\x92\x00\x50\x02\x51\x02\x67\x00\xf2\x00\x4c\x00\x4d\x00\xed\x00\x12\x00\x6e\x00\x9d\x00\xff\xff\x6f\x00\x68\x00\x69\x00\x17\x00\x4f\x02\x84\x01\x6b\x00\x7e\x02\x19\x00\x1a\x00\x1b\x00\x6c\x00\x6d\x00\xbd\x00\x4f\x02\x99\x00\x85\x01\x7f\x00\xa2\x02\xaf\x00\xf7\x00\xf8\x00\x80\x00\x81\x00\x82\x00\x7b\x01\x76\x01\x67\x00\xa7\x02\x1c\x00\xf9\x00\xfa\x00\xfb\x00\x47\x01\x40\x01\x12\x00\x6e\x00\x68\x00\x69\x00\x6f\x00\x12\x00\x13\x00\x66\x00\x17\x00\x4e\x00\x67\x00\xae\x00\x6b\x00\x19\x00\x1a\x00\x1b\x00\xa1\x00\x6c\x00\x6d\x00\x9d\x00\x68\x00\x69\x00\x6a\x00\x52\x02\x34\x00\x66\x00\xad\x00\x35\x00\x67\x00\x7d\x02\xff\xff\x12\x00\x13\x00\xbd\x00\x1c\x00\x36\x00\x67\x00\x99\x00\x68\x00\x69\x00\xbb\x01\x12\x00\x6e\x00\x1f\x01\x20\x01\x6f\x00\x68\x00\x69\x00\x6b\x00\xbe\x00\x98\x00\x52\x02\x34\x00\x6c\x00\x6d\x00\x35\x00\x33\x01\x82\x02\x83\x02\x12\x00\x13\x00\x52\x02\x34\x00\x36\x00\x9d\x00\x35\x00\x6b\x00\x3d\x01\x07\x01\x12\x00\x13\x00\x6c\x00\x6d\x00\x36\x00\xff\xff\x12\x00\x13\x00\x12\x00\x6e\x00\x05\x01\x78\x00\x6f\x00\x28\x01\x67\x00\x6b\x00\x29\x01\xb8\x02\xb9\x02\xbd\x00\x6c\x00\x6d\x00\x67\x00\x6b\x00\x68\x00\x69\x00\x12\x00\x6e\x00\x6c\x00\x6d\x00\x6f\x00\x26\x01\x68\x00\x69\x00\x27\x01\xb9\x01\x17\x00\xb2\x00\x63\x00\x3f\x00\x67\x00\x19\x00\x1a\x00\x1b\x00\x12\x00\x6e\x00\xaf\x00\x11\x00\x6f\x00\x8b\x01\x68\x00\x69\x00\x12\x00\x6e\x00\x9b\x01\x9d\x00\x6f\x00\x67\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x1c\x00\x96\x00\x1a\x02\x1b\x02\x17\x00\x68\x00\x69\x00\x97\x00\x6b\x00\x19\x00\x1a\x00\x1b\x00\xcd\x01\x6c\x00\x6d\x00\x67\x00\x6b\x00\x8c\x01\x9f\x01\x19\x01\x34\x00\x6c\x00\x6d\x00\x35\x00\x8f\x01\x68\x00\x69\x00\x12\x00\x13\x00\xcc\x01\x1c\x00\x36\x00\x67\x00\x28\x00\x6b\x00\x29\x00\x2a\x00\x12\x00\x6e\x00\x6c\x00\x6d\x00\x6f\x00\x68\x00\x69\x00\x8e\x01\x12\x00\x6e\x00\xb2\x00\x89\x01\x6f\x00\x67\x00\x6b\x00\xa2\x02\x6b\x00\xca\x00\xcb\x00\x6c\x00\x6d\x00\x6d\x01\x6e\x01\x68\x00\x69\x00\x80\x01\x12\x00\x6e\x00\x12\x00\x13\x00\x6f\x00\x7f\x01\x14\x00\x15\x00\x6b\x00\x6d\x01\xb1\x02\x12\x00\x13\x00\x6c\x00\x6d\x00\x09\x02\xb9\x00\x12\x00\x6e\x00\x12\x00\x13\x00\x6f\x00\x28\x00\x6f\x00\x10\x01\x6b\x00\xa1\x00\x10\x00\x11\x00\x51\x01\x6c\x00\x6d\x00\xb2\x02\xb1\x01\x80\x00\xb2\x01\x50\x01\x12\x00\x6e\x00\xb3\x00\xb4\x00\x6f\x00\x28\x00\x6b\x00\x29\x00\x8c\x01\x12\x00\x13\x00\x6c\x00\x6d\x00\x65\x02\x3d\x00\x3e\x00\x3f\x00\x12\x00\x6e\x00\x4f\x01\x28\x00\x6f\x00\x29\x00\x3b\x02\xdc\x01\xa2\x00\xa3\x00\xdd\x01\xa4\x00\xa5\x00\x28\x00\x40\x00\x29\x00\x61\x02\x4e\x01\x12\x00\x6e\x00\x41\x00\x42\x00\x6f\x00\x43\x00\x44\x00\x45\x00\x11\x01\x0f\x00\x10\x00\x11\x00\x4a\x01\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x6b\x00\x12\x00\x13\x00\x71\x00\x4b\x01\xa6\x00\xb5\x00\xb6\x00\x17\x00\x18\x00\xb7\x00\x84\x00\x40\x01\x19\x00\x1a\x00\x1b\x00\x12\x00\x89\x01\x72\x00\x73\x00\x74\x00\x57\x00\xd7\x01\x4c\x00\x4d\x00\xf4\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\xd9\x01\xd3\x00\x6f\x00\x1c\x00\x3f\x01\xfa\x01\x9b\xff\x31\x01\xc2\x01\x22\x01\x75\x00\x71\x00\xd5\x01\x35\x01\x12\x00\x13\x00\x17\x00\x18\x00\x4e\x00\x84\x00\x76\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x25\x01\x72\x00\x73\x00\x74\x00\x57\x00\xfd\x00\x0f\x00\x10\x00\x11\x00\x78\x00\x67\x01\xb4\x00\x12\x00\x13\x00\x12\x00\x13\x00\x6f\x00\x1c\x00\x4e\x00\x24\x01\x9b\xff\x17\x00\x85\x00\xcc\xff\x75\x00\x71\x00\x19\x00\x1a\x00\x1b\x00\x20\x01\x17\x00\x18\x00\xd4\x01\x21\x01\x76\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x1e\x01\x72\x00\x73\x00\x74\x00\x57\x00\x03\x01\x0c\x01\x04\x01\x1c\x00\x78\x00\x36\x01\x11\x00\x12\x00\x13\x00\x17\x00\x18\x00\x05\x01\x1c\x00\x17\x01\x19\x00\x1a\x00\x1b\x00\x85\x00\xcd\xff\x75\x00\xfe\x00\x32\x00\x33\x00\x34\x00\xff\x00\xd1\x01\x35\x00\x00\x01\xd2\x01\x76\x00\x12\x00\x13\x00\x08\x02\x77\x00\x36\x00\x1c\x00\x71\x00\x2d\x01\x10\x00\x11\x00\x73\x01\x17\x00\x18\x00\x78\x00\x9b\xff\x9b\xff\x19\x00\x1a\x00\x94\x00\x95\x00\x9b\xff\x72\x00\x73\x00\x74\x00\x57\x00\x9b\xff\x9b\xff\xff\xff\x9b\xff\x1d\x00\x1e\x00\x3e\x02\x54\x00\x55\x00\x56\x00\x57\x00\x9b\xff\x1c\x00\x12\x00\xa7\x01\x9b\xff\x58\x00\x9b\xff\x62\x02\x75\x00\x63\x02\x12\x02\x0c\x01\x13\x02\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x76\x00\x9a\x02\x27\x00\x63\x02\x77\x00\x12\x00\xa1\x01\x35\x01\x10\x00\x11\x00\x2d\x01\x10\x00\x11\x00\x72\x01\x78\x00\x26\x01\x9c\x00\x14\x02\xa9\x02\xa4\x00\x71\x00\x2d\x01\x10\x00\x11\x00\x71\x01\x17\x00\x18\x00\x85\x00\x9b\xff\x9b\xff\x19\x00\x1a\x00\x94\x00\x95\x00\x9b\xff\x72\x00\x73\x00\x74\x00\x57\x00\x9b\xff\x9b\xff\x28\x02\x9b\xff\xa2\x00\xa3\x00\x05\x02\xa4\x00\xa5\x00\x12\x00\x13\x00\x9b\xff\x1c\x00\xa6\x00\x45\x00\x9b\xff\xc0\x01\x9b\xff\xa4\x00\x75\x00\x2b\x01\x2c\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x04\x02\x76\x00\xc6\x01\x12\x00\x13\x00\x77\x00\xf8\x01\x6f\x00\x12\x00\x13\x00\x12\x00\x13\x00\xa6\x00\xf7\x01\xc5\x00\x78\x00\xc6\x00\xe4\xff\xf5\x01\x12\x00\x13\x00\x71\x00\xf2\x01\xa6\x00\x12\x00\x47\x02\x17\x00\x18\x00\x85\x00\x9b\xff\x9b\xff\x19\x00\x1a\x00\x94\x00\x95\x00\x9b\xff\x72\x00\x73\x00\x74\x00\x57\x00\x9b\xff\x9b\xff\xd7\x01\x9b\xff\xd3\x01\x12\x00\x13\x00\xd0\x01\xcb\x01\x4e\x00\xca\x01\x9b\xff\x1c\x00\xb9\x00\xb2\x00\x9b\xff\x9d\x00\x9b\xff\xc7\x01\x75\x00\xc6\x01\x38\x00\xb7\x01\xc0\x01\x39\x00\x17\x00\x18\x00\xb4\x01\x85\x00\x76\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x8d\x02\xaf\x01\x38\x00\xa1\x01\xa0\x01\x39\x00\x17\x00\x18\x00\x49\x02\x78\x00\x85\x00\x19\x00\x1a\x00\x1b\x00\x09\x01\x10\x00\x11\x00\x1c\x00\xd7\x01\x4c\x00\x4d\x00\x46\x02\x85\x00\x14\x02\x3a\x00\xa4\x00\xdd\x01\xd2\x00\xd3\x00\x45\x02\x17\x00\x54\x02\x1c\x00\x42\x02\x3b\x00\x19\x00\x1a\x00\x1b\x00\xec\x00\x3a\x00\x40\x02\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x33\x02\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\xec\x00\x12\x00\x13\x00\x1c\x00\x32\x02\xa6\x00\x7d\x01\x31\x02\x85\x00\xcb\x01\x3d\x00\x9d\x00\x59\x00\x12\x00\x13\x00\x5a\x00\x28\x02\x4e\x00\x1c\x00\x45\x00\x63\x01\x9d\x00\x8b\x02\x85\x00\x4e\x01\x5b\x00\x21\x02\xc2\x00\xc3\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x1d\x00\x1e\x00\x5c\x00\xda\x00\x1f\x02\x9d\x00\x5d\x00\x20\x02\x5e\x00\x11\x02\x0e\x02\x5f\x00\x14\x02\x89\x02\xa4\x00\x60\x00\x61\x00\xf9\x00\xfa\x00\x31\x01\x20\x00\x21\x00\x22\x00\xdb\x00\xdc\x00\x25\x00\x26\x00\x27\x00\x28\x00\x38\x00\x10\x02\x6b\x00\x39\x00\x17\x00\x18\x00\x0d\x02\x88\x02\x70\x01\x19\x00\x1a\x00\x1b\x00\x7c\x02\x9d\x00\x12\x00\x13\x00\x12\x00\x13\x00\xa6\x00\x75\x02\x4e\x00\x79\x02\xd3\x01\x6b\x00\x29\x01\x3e\x00\x3f\x00\xe3\x01\xe4\x01\x6e\x01\x1c\x00\x12\x00\x13\x00\x17\x00\x2c\x00\x6f\x00\x9d\x00\x3a\x00\x19\x00\x1a\x00\x1b\x00\x2d\x01\x10\x00\x11\x00\x30\x01\x1d\x00\x1e\x00\x3b\x00\x02\x01\x2d\x00\xac\x01\xec\x00\x12\x00\x13\x00\x9d\x00\x72\x02\x6f\x00\x85\x00\xad\x01\x1c\x00\x6c\x02\x3d\x00\xcb\x01\x10\x00\x11\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\xd6\x00\x0f\x00\x10\x00\x11\x00\x40\x02\xd7\x00\x42\x00\x56\x02\x43\x00\x44\x00\x45\x00\xae\x01\x2d\x01\x10\x00\x11\x00\x2f\x01\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4f\x02\x38\x00\xa6\x02\xd8\x00\x39\x00\x17\x00\x18\x00\xa4\x02\x17\x00\x2c\x00\x19\x00\x1a\x00\x1b\x00\x19\x00\x1a\x00\x1b\x00\x6c\x02\x6d\x02\xa9\x00\xa3\x00\x9d\x00\xa4\x00\xaa\x00\x9e\x02\x2d\x00\x07\x02\x2d\x01\x10\x00\x11\x00\x2e\x01\x9d\x02\x1c\x00\x6e\x02\x5f\x02\x1c\x00\x9f\x02\x9a\x02\xfe\x01\x3a\x00\x6f\x02\xb1\x01\x80\x00\xb2\x01\x99\x02\x94\x02\x12\x00\x13\x00\x45\x00\x3b\x00\x4e\x00\x12\x00\x13\x00\xec\x00\x0d\x02\xa6\x00\xc0\x00\xc1\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x9d\x00\x3d\x00\x20\x02\x9d\x00\x60\x02\x8f\x02\xff\x01\xb4\x01\x10\x00\x11\x00\x00\x02\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x2b\x02\x10\x00\x11\x00\x19\x00\x1a\x00\x1b\x00\x0d\x02\x9d\x00\x54\x00\x55\x00\x56\x00\x57\x00\x8b\x02\x6b\x00\x68\x02\x80\x00\xb2\x01\x58\x00\x59\x00\xb5\x00\xb6\x00\x5a\x00\xb7\x02\x38\x01\x1c\x00\x45\x00\x9d\x00\xf7\x01\x12\x00\x13\x00\xae\x02\x5b\x00\x4e\x00\xc2\x00\xc3\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x9d\x00\xbb\x02\x5c\x00\x12\x00\x13\x00\x9d\x02\x5d\x00\x6f\x00\x5e\x00\x0d\x02\x9d\x00\x5f\x00\x67\x02\x80\x00\xb2\x01\x60\x00\x61\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x62\x00\x63\x00\x85\x00\x19\x00\x1a\x00\x1b\x00\xb0\x01\xb1\x01\x80\x00\xb2\x01\x17\x00\x18\x00\x7a\x00\x6b\x00\x64\x00\x19\x00\x1a\x00\x1b\x00\x59\x00\xb5\x00\xc4\x00\x5a\x00\x12\x00\x13\x00\x1c\x00\xf3\x00\x4e\x00\x1c\x01\xf9\x00\xa0\x02\x31\x01\x5b\x00\xf1\x00\xef\x00\x12\x00\x13\x00\x1c\x00\x82\x01\x05\x01\xe9\x01\xea\x01\x5c\x00\x12\x00\x13\x00\x6b\x01\x5d\x00\x6f\x00\x5e\x00\xf3\x00\x00\x02\x5f\x00\x1d\x00\x1e\x00\x1f\x00\x60\x00\x61\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x62\x00\x63\x00\xda\x01\x19\x00\x1a\x00\x1b\x00\xd5\x01\x6b\x01\x40\x02\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x59\x00\x3e\x02\x85\x02\x5a\x00\xfb\x01\x66\x02\x1c\x00\x45\x00\x4a\x02\xb1\x01\x80\x00\xb2\x01\x72\x02\x5b\x00\xe0\x00\xc0\x00\xc1\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x60\x02\x6b\x00\x5c\x00\x54\x02\xb0\x02\x9b\x02\x5d\x00\x5a\x01\x5e\x00\x69\x01\xac\x02\x5f\x00\xb9\x02\x00\x00\x00\x00\x60\x00\x61\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x62\x00\x63\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x12\x00\x13\x00\x17\x00\x18\x00\x6f\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x59\x00\x00\x00\x00\x00\x5a\x00\x12\x00\x13\x00\x1c\x00\x00\x00\x4e\x00\x17\x00\x18\x00\x00\x00\x00\x00\x5b\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5c\x00\x75\x00\x00\x00\x00\x00\x5d\x00\x00\x00\x5e\x00\x00\x00\xb9\x00\x5f\x00\x00\x00\xa8\x00\x1c\x00\x60\x00\x61\x00\x77\x00\x6c\x02\x6d\x02\x00\x00\x75\x00\x00\x00\x62\x00\x63\x00\x00\x00\x00\x00\x78\x00\x00\x00\x1d\x00\x1e\x00\xa8\x00\xa9\x00\x17\x00\xa6\x02\x77\x00\x00\x00\xba\x00\x19\x00\x1a\x00\x1b\x00\x6f\x02\xb1\x01\x80\x00\xb2\x01\x78\x00\x37\x02\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\xe1\x00\x42\x00\x1c\x00\x43\x00\x44\x00\x45\x00\xe2\x00\xe3\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xdc\x00\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\xe1\x00\x42\x00\xdd\x00\x43\x00\x44\x00\x45\x00\x00\x00\xee\x01\xde\x00\x00\x00\x00\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x79\x00\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xe0\x00\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x6f\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xf2\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xed\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\xea\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xe7\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xe6\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\xe5\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xdf\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xde\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\xc8\x01\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x2c\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x2a\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x29\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x23\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x18\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x17\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x11\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x84\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x83\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x7a\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x79\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x76\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x73\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x56\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x9f\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x91\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x90\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x8f\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x8c\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\xb5\x02\x42\x00\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\xef\x01\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\xce\x01\x00\x00\x43\x00\x44\x00\x45\x00\x12\x00\x13\x00\x00\x00\x00\x00\x4e\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x17\x00\x18\x00\x4e\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x17\x00\x2c\x00\x00\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x12\x00\x13\x00\x74\x02\xe2\x01\x4e\x00\x00\x00\x00\x00\x6b\x00\x1c\x00\x00\x00\x00\x00\xe3\x01\xe4\x01\x6e\x01\x00\x00\x75\x00\x71\x00\x1c\x00\x00\x00\x12\x00\x13\x00\x17\x00\x18\x00\x4e\x00\x00\x00\xa8\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x00\x00\x72\x00\x73\x00\x74\x00\x57\x00\x00\x00\x12\x00\x13\x00\x00\x00\x78\x00\x6f\x00\xc4\x01\xa3\x00\x00\x00\xa4\x00\x71\x00\x00\x00\x1c\x00\x00\x00\xba\x00\x17\x00\x18\x00\x6b\x00\x00\x00\x75\x00\x19\x00\x1a\x00\x1b\x00\xb5\x00\x42\x02\x72\x00\x73\x00\x74\x00\x57\x00\x76\x00\x00\x00\xa2\x00\xa3\x00\x77\x00\xa4\x00\xa5\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x1c\x00\xa6\x00\x78\x00\x00\x00\xc0\x00\x12\x00\x13\x00\x75\x00\x00\x00\x6f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x76\x00\x00\x00\x00\x00\x00\x00\x77\x00\x12\x00\x13\x00\x6b\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x71\x00\x5a\x01\x78\x00\x00\x00\xbb\x01\x17\x00\x18\x00\x00\x00\x9c\xff\x9c\xff\x19\x00\x1a\x00\x9d\x01\x9e\x01\x9c\xff\x72\x00\x73\x00\x74\x00\x57\x00\x9c\xff\x9c\xff\x00\x00\x9c\xff\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x6f\x00\x00\x00\x9c\xff\x1c\x00\x00\x00\x00\x00\x9c\xff\x00\x00\x9c\xff\x00\x00\x75\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x17\x00\x18\x00\x00\x00\x00\x00\x76\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x00\x00\x72\x00\x73\x00\x74\x00\x57\x00\x00\x00\x00\x00\x6b\x00\x00\x00\x78\x00\x00\x00\x00\x00\x6b\x00\x63\x01\x00\x00\x71\x00\x64\x01\x1c\x00\xb5\x00\xb6\x00\x17\x00\x18\x00\x4b\x01\x4c\x01\x75\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x72\x00\x73\x00\x74\x00\x57\x00\x76\x00\x00\x00\x12\x00\x13\x00\x77\x00\xbd\x01\x6f\x00\x12\x00\x13\x00\x00\x00\x71\x00\x6f\x00\x1c\x00\x00\x00\x78\x00\x17\x00\x18\x00\x00\x00\x00\x00\x75\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x72\x00\x73\x00\x74\x00\x57\x00\x76\x00\xcf\x00\x4c\x00\x4d\x00\x77\x00\x2e\x02\x00\x00\x6b\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\x1c\x00\x63\x01\x78\x00\x00\x00\xc7\x01\x00\x00\x00\x00\x75\x00\x00\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x00\x00\x00\x00\x76\x00\x19\x00\x1a\x00\x1b\x00\x77\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x6f\x00\x00\x00\x00\x00\x78\x00\x00\x00\x59\x00\x00\x00\x00\x00\x5a\x00\x12\x00\x13\x00\x1c\x00\x00\x00\x4e\x00\x00\x00\x00\x00\xc3\x01\xa3\x00\x5b\x00\xa4\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x00\x00\x00\x00\x5c\x00\x19\x00\x1a\x00\x1b\x00\x5d\x00\x00\x00\x5e\x00\x00\x00\x00\x00\x5f\x00\x00\x00\x17\x00\x2c\x00\x60\x00\x61\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x12\x00\x13\x00\x1c\x00\x00\x00\xa6\x00\x00\x00\x00\x00\x2d\x00\xac\x01\x5b\x00\x00\x00\x50\x00\x51\x00\x52\x00\x53\x00\x17\x00\x18\x00\x1c\x00\x00\x00\x5c\x00\x19\x00\x1a\x00\x1b\x00\x5d\x00\xd5\x00\x5e\x00\x38\x00\x00\x00\x5f\x00\x39\x00\x17\x00\x18\x00\x00\x00\xd6\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\xae\x01\x00\x00\x00\x00\xbe\x01\xa3\x00\x5b\x00\xa4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x5c\x00\x00\x00\xeb\x00\x00\x00\x5d\x00\x3a\x00\x5e\x00\x38\x00\x00\x00\x5f\x00\x39\x00\x17\x00\x18\x00\x00\x00\x61\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\xec\x00\x12\x00\x13\x00\x00\x00\x38\x00\xa6\x00\x00\x00\x39\x00\x17\x00\x18\x00\x3d\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x38\x00\x1c\x00\x00\x00\x39\x00\x17\x00\x18\x00\x6b\x00\x00\x00\x3a\x00\x19\x00\x1a\x00\x1b\x00\xf3\x01\x6b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x3b\x00\x5a\x01\x00\x00\x6b\x02\xec\x00\x59\x01\x3a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x3d\x00\x00\x00\x3b\x00\x12\x00\x13\x00\x3a\x00\xec\x00\x6f\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x6f\x00\x3b\x00\x3d\x00\x38\x00\x00\x00\x3c\x00\x39\x00\x17\x00\x18\x00\x00\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x3d\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x17\x00\x2c\x00\x19\x00\x1a\x00\x1b\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x38\x00\x1c\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x2d\x00\x3a\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x1c\x00\xa4\x02\x34\x00\x1c\x00\x3b\x00\x35\x00\x00\x00\x09\x01\xec\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x00\x00\x00\x00\x1c\x00\x3b\x00\x3d\x00\x00\x00\x00\x00\xec\x00\x00\x00\x07\x01\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x3d\x00\x00\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\xec\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\xd7\x01\x4c\x00\x4d\x00\x00\x00\x3a\x00\x00\x00\x00\x00\x00\x00\xd8\x01\xd2\x00\xd3\x00\x00\x00\x1c\x00\x00\x00\x3b\x00\x00\x00\x00\x00\x00\x00\xec\x00\x3a\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x12\x00\x13\x00\x00\x00\x1c\x00\x4e\x00\x00\x00\x00\x00\x17\x00\x18\x00\x00\x00\x3a\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x3b\x00\x00\x00\x00\x00\x00\x00\xec\x00\x07\x01\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x1c\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\xec\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x94\x01\x95\x01\x00\x00\x1c\x00\x00\x00\x00\x00\x96\x01\x00\x00\x00\x00\x00\x00\x3a\x00\x97\x01\x98\x01\x00\x00\x99\x01\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x3b\x00\x00\x00\x9a\x01\x00\x00\xec\x00\x3a\x00\x98\x00\x38\x00\x9b\x01\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x17\x00\x2c\x00\x00\x00\x1c\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x3a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x07\x02\x1c\x00\x00\x00\x3b\x00\x00\x00\x00\x00\x00\x00\xec\x00\x3a\x00\x1c\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x0e\x01\x30\x00\x00\x00\x1c\x00\x00\x00\x0f\x01\x32\x00\x33\x00\x34\x00\x00\x00\x3a\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x1c\x00\x36\x00\x3b\x00\x00\x00\x00\x00\x00\x00\xec\x00\x3a\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x53\x01\x32\x00\x33\x00\x34\x00\x00\x00\x3a\x00\x35\x00\x54\x01\x00\x00\x00\x00\x55\x01\x13\x00\x00\x00\x1c\x00\x36\x00\x3b\x00\x00\x00\x56\x01\x57\x01\xec\x00\x3a\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x3b\x00\x19\x00\x1a\x00\x1b\x00\x3c\x00\x00\x00\x00\x00\x38\x00\x00\x00\x00\x00\x39\x00\x17\x00\x18\x00\x00\x00\x3d\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x17\x00\x18\x00\x00\x00\x3a\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x3b\x00\x00\x00\x17\x00\x18\x00\xec\x00\x3a\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x3d\x00\x3b\x00\x00\x00\x17\x00\x18\x00\x3c\x00\x75\x00\xac\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x3d\x00\xa8\x00\x00\x00\x17\x00\x18\x00\x77\x00\x75\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x78\x00\xa8\x00\xa9\x00\x17\x00\x18\x00\x77\x00\x75\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x78\x00\xa8\x00\x00\x00\x17\x00\x18\x00\x77\x00\x75\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x5c\x01\x00\x00\x1c\x00\x78\x00\xa8\x00\x00\x00\x00\x00\x00\x00\x77\x00\x75\x00\x00\x00\x00\x00\x44\x02\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x78\x00\xa8\x00\x00\x00\x00\x00\x00\x00\x77\x00\x75\x00\x17\x00\x18\x00\x58\x02\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x78\x00\xe9\x00\x00\x00\x17\x00\x18\x00\x77\x00\x17\x00\x2c\x00\x19\x00\x1a\x00\x1b\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x78\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x07\x02\x00\x00\x75\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x5f\x02\x1c\x00\x00\x00\x00\x00\xa8\x00\x75\x00\x00\x00\x00\x00\x77\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x00\x17\x00\x18\x00\x78\x00\x77\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x00\x17\x00\x2c\x00\x60\x02\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x00\x00\x00\x00\x00\x00\x00\x2d\x00\x07\x02\x00\x00\x75\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5f\x02\x1c\x00\x00\x00\xb5\xfe\xa8\x00\x00\x00\xb5\xfe\xb5\xfe\x77\x00\xb5\xfe\x00\x00\x00\x00\xb5\xfe\xb5\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x78\x00\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\x00\x00\xb5\xfe\xb5\xfe\xb5\xfe\x60\x02\xb5\xfe\x00\x00\x00\x00\xb5\xfe\x00\x00\xb5\xfe\xb5\xfe\xb5\xfe\x00\x00\x00\x00\x00\x00\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xb5\xfe\xc8\x00\x00\x00\xb5\xfe\x00\x00\x17\x00\x18\x00\x00\x00\x00\x00\x00\x00\x19\x00\x1a\x00\x1b\x00\x59\x00\x00\x00\x00\x00\x5a\x00\x00\x00\x00\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x1c\x00\x35\x00\x00\x00\x3a\xff\x3a\xff\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x00\x00\x59\x00\x00\x00\x00\x00\x5a\x00\x3a\xff\x00\x00\xc9\x00\x60\x00\x00\x00\x00\x00\xca\x00\x00\x00\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3a\xff\x3b\xff\x3b\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x59\x00\x00\x00\x00\x00\x5a\x00\x3b\xff\x1d\x00\x1e\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3b\xff\x3c\xff\x3c\xff\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x3c\xff\x00\x00\x00\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3c\xff\x3c\xff\x3c\xff\x3c\xff\x3c\xff\x3c\xff\x3c\xff\x3c\xff\x3c\xff\xb1\xfe\xb1\xfe\x00\x00\x00\x00\x00\x00\xb1\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb1\xfe\xb1\xfe\xb1\xfe\x00\x00\x1d\x00\x1e\x00\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xb1\xfe\xf6\x00\x00\x00\xb1\xfe\x1d\x00\x1e\x00\x00\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x00\x00\x00\x00\x1d\x00\x1e\x00\x00\x00\x00\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x0b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x99\xfe\x99\xfe\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x99\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\xfe\x99\xfe\x99\xfe\x99\xfe\x99\xfe\x99\xfe\x00\x00\x99\xfe\x5f\x01\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xf0\x01\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xb5\x01\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x2f\x02\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x4d\x02\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x96\x02\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x92\x02\x2e\x00\x2f\x00\x30\x00\x00\x00\x00\x00\x00\x00\x31\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x0c\x01\x00\x00\x36\x00\x00\x00\x0d\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x0c\x01\x00\x00\x36\x00\x00\x00\x17\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\xfb\x01\x00\x00\x36\x00\xfc\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x02\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xe9\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x59\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x33\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x2a\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x1b\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x1a\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x18\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x02\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x01\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xf5\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xc1\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xa6\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xa5\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x46\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x24\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x0e\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xfc\x01\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x77\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\xe9\x00\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x69\x02\x00\x00\x00\x00\x36\x00\x97\x02\x32\x00\x33\x00\x34\x00\x00\x00\x00\x00\x35\x00\x00\x00\x00\x00\x00\x00\x12\x00\x13\x00\x00\x00\x00\x00\x36\x00\x00\x00\x00\x00\x00\x00\x00\x00\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#
   -> Located Token
   -> Int#
   -> Happy_IntList
   -> HappyStk HappyAbsSyn
   -> ParseM HappyAbsSyn)
happyReduceArr = (Int, Int)
-> [(Int,
     Int#
     -> Located Token
     -> Int#
     -> Happy_IntList
     -> HappyStk HappyAbsSyn
     -> ParseM HappyAbsSyn)]
-> Array
     Int
     (Int#
      -> Located Token
      -> Int#
      -> Happy_IntList
      -> HappyStk HappyAbsSyn
      -> ParseM HappyAbsSyn)
forall i e. Ix i => (i, i) -> [(i, e)] -> Array i e
Happy_Data_Array.array (Int
12, Int
372) [
	(Int
12 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_12),
	(Int
13 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_13),
	(Int
14 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_14),
	(Int
15 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_15),
	(Int
16 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_16),
	(Int
17 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_17),
	(Int
18 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_18),
	(Int
19 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_19),
	(Int
20 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_20),
	(Int
21 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_21),
	(Int
22 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_22),
	(Int
23 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_23),
	(Int
24 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_24),
	(Int
25 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_25),
	(Int
26 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_26),
	(Int
27 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_27),
	(Int
28 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_28),
	(Int
29 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_29),
	(Int
30 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_30),
	(Int
31 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_31),
	(Int
32 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_32),
	(Int
33 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_33),
	(Int
34 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_34),
	(Int
35 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_35),
	(Int
36 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_36),
	(Int
37 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_37),
	(Int
38 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_38),
	(Int
39 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_39),
	(Int
40 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_40),
	(Int
41 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_41),
	(Int
42 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_42),
	(Int
43 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_43),
	(Int
44 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_44),
	(Int
45 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_45),
	(Int
46 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_46),
	(Int
47 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_47),
	(Int
48 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_48),
	(Int
49 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_49),
	(Int
50 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_50),
	(Int
51 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_51),
	(Int
52 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_52),
	(Int
53 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_53),
	(Int
54 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_54),
	(Int
55 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_55),
	(Int
56 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_56),
	(Int
57 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_57),
	(Int
58 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_58),
	(Int
59 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_59),
	(Int
60 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_60),
	(Int
61 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_61),
	(Int
62 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_62),
	(Int
63 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_63),
	(Int
64 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_64),
	(Int
65 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_65),
	(Int
66 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_66),
	(Int
67 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_67),
	(Int
68 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_68),
	(Int
69 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_69),
	(Int
70 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_70),
	(Int
71 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_71),
	(Int
72 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_72),
	(Int
73 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_73),
	(Int
74 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_74),
	(Int
75 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_75),
	(Int
76 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_76),
	(Int
77 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_77),
	(Int
78 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_78),
	(Int
79 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_79),
	(Int
80 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_80),
	(Int
81 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_81),
	(Int
82 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_82),
	(Int
83 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_83),
	(Int
84 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_84),
	(Int
85 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_85),
	(Int
86 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_86),
	(Int
87 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_87),
	(Int
88 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_88),
	(Int
89 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_89),
	(Int
90 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_90),
	(Int
91 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_91),
	(Int
92 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_92),
	(Int
93 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_93),
	(Int
94 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_94),
	(Int
95 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_95),
	(Int
96 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_96),
	(Int
97 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_97),
	(Int
98 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_98),
	(Int
99 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_99),
	(Int
100 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_100),
	(Int
101 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_101),
	(Int
102 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_102),
	(Int
103 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_103),
	(Int
104 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_104),
	(Int
105 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_105),
	(Int
106 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_106),
	(Int
107 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_107),
	(Int
108 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_108),
	(Int
109 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_109),
	(Int
110 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_110),
	(Int
111 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_111),
	(Int
112 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_112),
	(Int
113 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_113),
	(Int
114 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_114),
	(Int
115 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_115),
	(Int
116 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_116),
	(Int
117 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_117),
	(Int
118 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_118),
	(Int
119 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_119),
	(Int
120 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_120),
	(Int
121 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_121),
	(Int
122 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_122),
	(Int
123 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_123),
	(Int
124 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_124),
	(Int
125 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_125),
	(Int
126 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_126),
	(Int
127 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_127),
	(Int
128 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_128),
	(Int
129 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_129),
	(Int
130 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_130),
	(Int
131 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_131),
	(Int
132 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_132),
	(Int
133 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_133),
	(Int
134 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_134),
	(Int
135 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_135),
	(Int
136 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_136),
	(Int
137 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_137),
	(Int
138 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_138),
	(Int
139 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_139),
	(Int
140 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_140),
	(Int
141 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_141),
	(Int
142 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_142),
	(Int
143 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_143),
	(Int
144 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_144),
	(Int
145 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_145),
	(Int
146 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_146),
	(Int
147 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_147),
	(Int
148 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_148),
	(Int
149 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_149),
	(Int
150 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_150),
	(Int
151 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_151),
	(Int
152 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_152),
	(Int
153 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_153),
	(Int
154 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_154),
	(Int
155 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_155),
	(Int
156 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_156),
	(Int
157 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_157),
	(Int
158 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_158),
	(Int
159 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_159),
	(Int
160 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_160),
	(Int
161 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_161),
	(Int
162 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_162),
	(Int
163 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_163),
	(Int
164 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_164),
	(Int
165 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_165),
	(Int
166 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_166),
	(Int
167 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_167),
	(Int
168 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_168),
	(Int
169 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_169),
	(Int
170 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_170),
	(Int
171 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_171),
	(Int
172 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_172),
	(Int
173 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_173),
	(Int
174 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_174),
	(Int
175 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_175),
	(Int
176 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_176),
	(Int
177 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_177),
	(Int
178 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_178),
	(Int
179 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_179),
	(Int
180 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_180),
	(Int
181 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_181),
	(Int
182 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_182),
	(Int
183 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_183),
	(Int
184 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_184),
	(Int
185 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_185),
	(Int
186 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_186),
	(Int
187 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_187),
	(Int
188 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_188),
	(Int
189 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_189),
	(Int
190 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_190),
	(Int
191 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_191),
	(Int
192 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_192),
	(Int
193 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_193),
	(Int
194 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_194),
	(Int
195 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_195),
	(Int
196 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_196),
	(Int
197 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_197),
	(Int
198 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_198),
	(Int
199 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_199),
	(Int
200 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_200),
	(Int
201 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_201),
	(Int
202 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_202),
	(Int
203 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_203),
	(Int
204 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_204),
	(Int
205 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_205),
	(Int
206 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_206),
	(Int
207 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_207),
	(Int
208 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_208),
	(Int
209 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_209),
	(Int
210 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_210),
	(Int
211 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_211),
	(Int
212 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_212),
	(Int
213 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_213),
	(Int
214 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_214),
	(Int
215 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_215),
	(Int
216 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_216),
	(Int
217 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_217),
	(Int
218 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_218),
	(Int
219 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_219),
	(Int
220 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_220),
	(Int
221 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_221),
	(Int
222 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_222),
	(Int
223 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_223),
	(Int
224 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_224),
	(Int
225 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_225),
	(Int
226 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_226),
	(Int
227 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_227),
	(Int
228 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_228),
	(Int
229 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_229),
	(Int
230 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_230),
	(Int
231 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_231),
	(Int
232 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_232),
	(Int
233 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_233),
	(Int
234 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_234),
	(Int
235 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_235),
	(Int
236 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_236),
	(Int
237 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_237),
	(Int
238 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_238),
	(Int
239 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_239),
	(Int
240 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_240),
	(Int
241 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_241),
	(Int
242 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_242),
	(Int
243 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_243),
	(Int
244 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_244),
	(Int
245 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_245),
	(Int
246 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_246),
	(Int
247 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_247),
	(Int
248 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_248),
	(Int
249 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_249),
	(Int
250 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_250),
	(Int
251 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_251),
	(Int
252 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_252),
	(Int
253 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_253),
	(Int
254 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_254),
	(Int
255 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_255),
	(Int
256 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_256),
	(Int
257 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_257),
	(Int
258 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_258),
	(Int
259 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_259),
	(Int
260 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_260),
	(Int
261 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_261),
	(Int
262 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_262),
	(Int
263 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_263),
	(Int
264 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_264),
	(Int
265 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_265),
	(Int
266 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_266),
	(Int
267 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_267),
	(Int
268 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_268),
	(Int
269 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_269),
	(Int
270 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_270),
	(Int
271 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_271),
	(Int
272 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_272),
	(Int
273 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_273),
	(Int
274 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_274),
	(Int
275 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_275),
	(Int
276 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_276),
	(Int
277 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_277),
	(Int
278 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_278),
	(Int
279 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_279),
	(Int
280 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_280),
	(Int
281 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_281),
	(Int
282 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_282),
	(Int
283 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_283),
	(Int
284 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_284),
	(Int
285 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_285),
	(Int
286 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_286),
	(Int
287 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_287),
	(Int
288 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_288),
	(Int
289 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_289),
	(Int
290 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_290),
	(Int
291 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_291),
	(Int
292 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_292),
	(Int
293 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_293),
	(Int
294 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_294),
	(Int
295 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_295),
	(Int
296 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_296),
	(Int
297 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_297),
	(Int
298 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_298),
	(Int
299 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_299),
	(Int
300 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_300),
	(Int
301 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_301),
	(Int
302 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_302),
	(Int
303 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_303),
	(Int
304 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_304),
	(Int
305 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_305),
	(Int
306 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_306),
	(Int
307 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_307),
	(Int
308 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_308),
	(Int
309 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_309),
	(Int
310 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_310),
	(Int
311 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_311),
	(Int
312 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_312),
	(Int
313 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_313),
	(Int
314 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_314),
	(Int
315 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_315),
	(Int
316 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_316),
	(Int
317 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_317),
	(Int
318 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_318),
	(Int
319 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_319),
	(Int
320 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_320),
	(Int
321 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_321),
	(Int
322 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_322),
	(Int
323 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_323),
	(Int
324 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_324),
	(Int
325 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_325),
	(Int
326 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_326),
	(Int
327 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_327),
	(Int
328 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_328),
	(Int
329 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_329),
	(Int
330 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_330),
	(Int
331 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_331),
	(Int
332 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_332),
	(Int
333 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_333),
	(Int
334 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_334),
	(Int
335 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_335),
	(Int
336 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_336),
	(Int
337 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_337),
	(Int
338 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_338),
	(Int
339 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_339),
	(Int
340 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_340),
	(Int
341 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_341),
	(Int
342 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_342),
	(Int
343 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_343),
	(Int
344 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_344),
	(Int
345 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_345),
	(Int
346 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_346),
	(Int
347 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_347),
	(Int
348 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_348),
	(Int
349 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_349),
	(Int
350 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_350),
	(Int
351 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_351),
	(Int
352 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_352),
	(Int
353 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_353),
	(Int
354 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_354),
	(Int
355 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_355),
	(Int
356 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_356),
	(Int
357 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_357),
	(Int
358 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_358),
	(Int
359 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_359),
	(Int
360 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_360),
	(Int
361 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_361),
	(Int
362 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_362),
	(Int
363 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_363),
	(Int
364 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_364),
	(Int
365 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_365),
	(Int
366 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_366),
	(Int
367 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_367),
	(Int
368 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_368),
	(Int
369 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_369),
	(Int
370 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_370),
	(Int
371 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_371),
	(Int
372 , Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_372)
	]

happy_n_terms :: Int
happy_n_terms = Int
77 :: Prelude.Int
happy_n_nonterms :: Int
happy_n_nonterms = Int
131 :: Prelude.Int

happyReduce_12 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_12 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_12 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
0# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_12
happyReduction_12 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_12 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [Module PName]
-> ([Module PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap16
happyOut16 HappyAbsSyn
happy_x_2 of { (HappyWrap16 Module PName
happy_var_2) -> 
	( Module PName -> ParseM [Module PName]
mkTopMods Module PName
happy_var_2)})
	) (\[Module PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([Module PName] -> HappyAbsSyn
happyIn15 [Module PName]
r))

happyReduce_13 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_13 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_13 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
0# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_13
happyReduction_13 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_13 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [Module PName]
-> ([Module PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap21
happyOut21 HappyAbsSyn
happy_x_2 of { (HappyWrap21 [TopDecl PName]
happy_var_2) -> 
	( [TopDecl PName] -> ParseM [Module PName]
mkAnonymousModule [TopDecl PName]
happy_var_2)})
	) (\[Module PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([Module PName] -> HappyAbsSyn
happyIn15 [Module PName]
r))

happyReduce_14 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_14 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_14 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
7# Int#
0# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_14
happyReduction_14 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_14 (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 -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_3 of { (HappyWrap140 Located ModName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap38
happyOut38 HappyAbsSyn
happy_x_6 of { (HappyWrap38 Signature PName
happy_var_6) -> 
	[Module PName] -> HappyAbsSyn
happyIn15
		 (Located ModName -> Signature PName -> [Module PName]
mkTopSig Located ModName
happy_var_3 Signature PName
happy_var_6
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_15 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_15 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_15 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
1# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_15
happyReduction_15 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_15 (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 -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_1 of { (HappyWrap140 Located ModName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap21
happyOut21 HappyAbsSyn
happy_x_4 of { (HappyWrap21 [TopDecl PName]
happy_var_4) -> 
	Module PName -> HappyAbsSyn
happyIn16
		 (Located ModName -> [TopDecl PName] -> Module PName
mkModule Located ModName
happy_var_1 [TopDecl PName]
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_16 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_16 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_16 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
7# Int#
1# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_16
happyReduction_16 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_16 (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 -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_1 of { (HappyWrap140 Located ModName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
happy_x_3 of { (HappyWrap26 Located (ImpName PName)
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap21
happyOut21 HappyAbsSyn
happy_x_6 of { (HappyWrap21 [TopDecl PName]
happy_var_6) -> 
	Module PName -> HappyAbsSyn
happyIn16
		 (Located ModName
-> Located (ImpName PName) -> [TopDecl PName] -> Module PName
mkModuleInstanceAnon Located ModName
happy_var_1 Located (ImpName PName)
happy_var_3 [TopDecl PName]
happy_var_6
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_17 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_17 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_17 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
1# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_17
happyReduction_17 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_17 (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 -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_1 of { (HappyWrap140 Located ModName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
happy_x_3 of { (HappyWrap26 Located (ImpName PName)
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap17
happyOut17 HappyAbsSyn
happy_x_5 of { (HappyWrap17 ModuleInstanceArgs PName
happy_var_5) -> 
	Module PName -> HappyAbsSyn
happyIn16
		 (Located ModName
-> Located (ImpName PName)
-> ModuleInstanceArgs PName
-> Module PName
mkModuleInstance Located ModName
happy_var_1 Located (ImpName PName)
happy_var_3 ModuleInstanceArgs PName
happy_var_5
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_18 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_18 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_18 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
2# HappyAbsSyn -> HappyAbsSyn
happyReduction_18
happyReduction_18 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_18 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap20
happyOut20 HappyAbsSyn
happy_x_1 of { (HappyWrap20 Located (ModuleInstanceArg PName)
happy_var_1) -> 
	ModuleInstanceArgs PName -> HappyAbsSyn
happyIn17
		 (Located (ModuleInstanceArg PName) -> ModuleInstanceArgs PName
forall name.
Located (ModuleInstanceArg name) -> ModuleInstanceArgs name
DefaultInstArg Located (ModuleInstanceArg PName)
happy_var_1
	)}

happyReduce_19 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_19 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_19 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
2# HappyAbsSyn -> HappyAbsSyn
happyReduction_19
happyReduction_19 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_19 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap18
happyOut18 HappyAbsSyn
happy_x_1 of { (HappyWrap18 [ModuleInstanceNamedArg PName]
happy_var_1) -> 
	ModuleInstanceArgs PName -> HappyAbsSyn
happyIn17
		 ([ModuleInstanceNamedArg PName] -> ModuleInstanceArgs PName
forall name.
[ModuleInstanceNamedArg name] -> ModuleInstanceArgs name
NamedInstArgs [ModuleInstanceNamedArg PName]
happy_var_1
	)}

happyReduce_20 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_20 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_20 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
3# HappyAbsSyn -> HappyAbsSyn
happyReduction_20
happyReduction_20 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_20 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap19
happyOut19 HappyAbsSyn
happy_x_1 of { (HappyWrap19 ModuleInstanceNamedArg PName
happy_var_1) -> 
	[ModuleInstanceNamedArg PName] -> HappyAbsSyn
happyIn18
		 ([ModuleInstanceNamedArg PName
happy_var_1]
	)}

happyReduce_21 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_21 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_21 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
3# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_21
happyReduction_21 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_21 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap18
happyOut18 HappyAbsSyn
happy_x_1 of { (HappyWrap18 [ModuleInstanceNamedArg PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap19
happyOut19 HappyAbsSyn
happy_x_3 of { (HappyWrap19 ModuleInstanceNamedArg PName
happy_var_3) -> 
	[ModuleInstanceNamedArg PName] -> HappyAbsSyn
happyIn18
		 (ModuleInstanceNamedArg PName
happy_var_3 ModuleInstanceNamedArg PName
-> [ModuleInstanceNamedArg PName] -> [ModuleInstanceNamedArg PName]
forall a. a -> [a] -> [a]
: [ModuleInstanceNamedArg PName]
happy_var_1
	)}}

happyReduce_22 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_22 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_22 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
4# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_22
happyReduction_22 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_22 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap20
happyOut20 HappyAbsSyn
happy_x_3 of { (HappyWrap20 Located (ModuleInstanceArg PName)
happy_var_3) -> 
	ModuleInstanceNamedArg PName -> HappyAbsSyn
happyIn19
		 (LIdent
-> Located (ModuleInstanceArg PName)
-> ModuleInstanceNamedArg PName
forall name.
LIdent
-> Located (ModuleInstanceArg name) -> ModuleInstanceNamedArg name
ModuleInstanceNamedArg LIdent
happy_var_1 Located (ModuleInstanceArg PName)
happy_var_3
	)}}

happyReduce_23 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_23 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_23 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
5# HappyAbsSyn -> HappyAbsSyn
happyReduction_23
happyReduction_23 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_23 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
happy_x_1 of { (HappyWrap26 Located (ImpName PName)
happy_var_1) -> 
	Located (ModuleInstanceArg PName) -> HappyAbsSyn
happyIn20
		 ((ImpName PName -> ModuleInstanceArg PName)
-> Located (ImpName PName) -> Located (ModuleInstanceArg PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap ImpName PName -> ModuleInstanceArg PName
forall name. ImpName name -> ModuleInstanceArg name
ModuleArg Located (ImpName PName)
happy_var_1
	)}

happyReduce_24 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_24 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_24 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
5# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_24
happyReduction_24 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_24 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_2 of { (HappyWrap137 LIdent
happy_var_2) -> 
	Located (ModuleInstanceArg PName) -> HappyAbsSyn
happyIn20
		 ((Ident -> ModuleInstanceArg PName)
-> LIdent -> Located (ModuleInstanceArg PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ident -> ModuleInstanceArg PName
forall name. Ident -> ModuleInstanceArg name
ParameterArg LIdent
happy_var_2
	)}

happyReduce_25 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_25 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_25 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
5# HappyAbsSyn -> HappyAbsSyn
happyReduction_25
happyReduction_25 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_25 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Underscore ) Text
_)) -> 
	Located (ModuleInstanceArg PName) -> HappyAbsSyn
happyIn20
		 (Located { thing :: ModuleInstanceArg PName
thing    = ModuleInstanceArg PName
forall name. ModuleInstanceArg name
AddParams
                                        , srcRange :: Range
srcRange = Range
happy_var_1 }
	)}

happyReduce_26 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_26 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_26 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
6# HappyAbsSyn -> HappyAbsSyn
happyReduction_26
happyReduction_26 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_26 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_1 of { (HappyWrap35 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn21
		 ([TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a]
reverse [TopDecl PName]
happy_var_1
	)}

happyReduce_27 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_27 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_27 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
6# HappyAbsSyn
happyReduction_27
happyReduction_27 :: HappyAbsSyn
happyReduction_27  =  [TopDecl PName] -> HappyAbsSyn
happyIn21
		 ([]
	)

happyReduce_28 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_28 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_28 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
7# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_28
happyReduction_28 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_28 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap22
happyOut22 HappyAbsSyn
happy_x_1 of { (HappyWrap22 [Located (ImportG (ImpName PName))]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap23
happyOut23 HappyAbsSyn
happy_x_3 of { (HappyWrap23 Located (ImportG (ImpName PName))
happy_var_3) -> 
	[Located (ImportG (ImpName PName))] -> HappyAbsSyn
happyIn22
		 (Located (ImportG (ImpName PName))
happy_var_3 Located (ImportG (ImpName PName))
-> [Located (ImportG (ImpName PName))]
-> [Located (ImportG (ImpName PName))]
forall a. a -> [a] -> [a]
: [Located (ImportG (ImpName PName))]
happy_var_1
	)}}

happyReduce_29 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_29 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_29 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
7# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_29
happyReduction_29 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_29 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap22
happyOut22 HappyAbsSyn
happy_x_1 of { (HappyWrap22 [Located (ImportG (ImpName PName))]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap23
happyOut23 HappyAbsSyn
happy_x_3 of { (HappyWrap23 Located (ImportG (ImpName PName))
happy_var_3) -> 
	[Located (ImportG (ImpName PName))] -> HappyAbsSyn
happyIn22
		 (Located (ImportG (ImpName PName))
happy_var_3 Located (ImportG (ImpName PName))
-> [Located (ImportG (ImpName PName))]
-> [Located (ImportG (ImpName PName))]
forall a. a -> [a] -> [a]
: [Located (ImportG (ImpName PName))]
happy_var_1
	)}}

happyReduce_30 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_30 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_30 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
7# HappyAbsSyn -> HappyAbsSyn
happyReduction_30
happyReduction_30 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_30 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap23
happyOut23 HappyAbsSyn
happy_x_1 of { (HappyWrap23 Located (ImportG (ImpName PName))
happy_var_1) -> 
	[Located (ImportG (ImpName PName))] -> HappyAbsSyn
happyIn22
		 ([Located (ImportG (ImpName PName))
happy_var_1]
	)}

happyReduce_31 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_31 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_31 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
6# Int#
8# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_31
happyReduction_31 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_31 (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
	 = ParseM (Located (ImportG (ImpName PName)))
-> (Located (ImportG (ImpName PName)) -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_import)    Text
_)) -> 
	case HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
happy_x_2 of { (HappyWrap26 Located (ImpName PName)
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap25
happyOut25 HappyAbsSyn
happy_x_3 of { (HappyWrap25 Maybe (ModuleInstanceArgs PName)
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap28
happyOut28 HappyAbsSyn
happy_x_4 of { (HappyWrap28 Maybe (Located ModName)
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap29
happyOut29 HappyAbsSyn
happy_x_5 of { (HappyWrap29 Maybe (Located ImportSpec)
happy_var_5) -> 
	case HappyAbsSyn -> HappyWrap24
happyOut24 HappyAbsSyn
happy_x_6 of { (HappyWrap24 Maybe (Located [Decl PName])
happy_var_6) -> 
	( Range
-> Located (ImpName PName)
-> Maybe (ModuleInstanceArgs PName)
-> Maybe (Located ModName)
-> Maybe (Located ImportSpec)
-> Maybe (Located [Decl PName])
-> ParseM (Located (ImportG (ImpName PName)))
mkImport Range
happy_var_1 Located (ImpName PName)
happy_var_2 Maybe (ModuleInstanceArgs PName)
happy_var_3 Maybe (Located ModName)
happy_var_4 Maybe (Located ImportSpec)
happy_var_5 Maybe (Located [Decl PName])
happy_var_6)}}}}}})
	) (\Located (ImportG (ImpName PName))
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located (ImportG (ImpName PName)) -> HappyAbsSyn
happyIn23 Located (ImportG (ImpName PName))
r))

happyReduce_32 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_32 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_32 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
8# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_32
happyReduction_32 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_32 (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
	 = ParseM (Located (ImportG (ImpName PName)))
-> (Located (ImportG (ImpName PName)) -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_import)    Text
_)) -> 
	case HappyAbsSyn -> HappyWrap27
happyOut27 HappyAbsSyn
happy_x_2 of { (HappyWrap27 Located (ImpName PName)
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap28
happyOut28 HappyAbsSyn
happy_x_3 of { (HappyWrap28 Maybe (Located ModName)
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap29
happyOut29 HappyAbsSyn
happy_x_4 of { (HappyWrap29 Maybe (Located ImportSpec)
happy_var_4) -> 
	( Range
-> Located (ImpName PName)
-> Maybe (Located ModName)
-> Maybe (Located ImportSpec)
-> ParseM (Located (ImportG (ImpName PName)))
mkBacktickImport Range
happy_var_1 Located (ImpName PName)
happy_var_2 Maybe (Located ModName)
happy_var_3 Maybe (Located ImportSpec)
happy_var_4)}}}})
	) (\Located (ImportG (ImpName PName))
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located (ImportG (ImpName PName)) -> HappyAbsSyn
happyIn23 Located (ImportG (ImpName PName))
r))

happyReduce_33 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_33 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_33 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
9# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_33
happyReduction_33 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_33 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap75
happyOut75 HappyAbsSyn
happy_x_2 of { (HappyWrap75 Located [Decl PName]
happy_var_2) -> 
	Maybe (Located [Decl PName]) -> HappyAbsSyn
happyIn24
		 (Located [Decl PName] -> Maybe (Located [Decl PName])
forall a. a -> Maybe a
Just Located [Decl PName]
happy_var_2
	)}

happyReduce_34 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_34 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_34 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
9# HappyAbsSyn
happyReduction_34
happyReduction_34 :: HappyAbsSyn
happyReduction_34  =  Maybe (Located [Decl PName]) -> HappyAbsSyn
happyIn24
		 (Maybe (Located [Decl PName])
forall a. Maybe a
Nothing
	)

happyReduce_35 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_35 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_35 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
10# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_35
happyReduction_35 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_35 p
happy_x_3
	HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap17
happyOut17 HappyAbsSyn
happy_x_2 of { (HappyWrap17 ModuleInstanceArgs PName
happy_var_2) -> 
	Maybe (ModuleInstanceArgs PName) -> HappyAbsSyn
happyIn25
		 (ModuleInstanceArgs PName -> Maybe (ModuleInstanceArgs PName)
forall a. a -> Maybe a
Just ModuleInstanceArgs PName
happy_var_2
	)}

happyReduce_36 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_36 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_36 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
10# HappyAbsSyn
happyReduction_36
happyReduction_36 :: HappyAbsSyn
happyReduction_36  =  Maybe (ModuleInstanceArgs PName) -> HappyAbsSyn
happyIn25
		 (Maybe (ModuleInstanceArgs PName)
forall a. Maybe a
Nothing
	)

happyReduce_37 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_37 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_37 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
11# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_37
happyReduction_37 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_37 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_2 of { (HappyWrap141 Located PName
happy_var_2) -> 
	Located (ImpName PName) -> HappyAbsSyn
happyIn26
		 (PName -> ImpName PName
forall name. name -> ImpName name
ImpNested (PName -> ImpName PName)
-> Located PName -> Located (ImpName PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located PName
happy_var_2
	)}

happyReduce_38 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_38 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_38 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
11# HappyAbsSyn -> HappyAbsSyn
happyReduction_38
happyReduction_38 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_38 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_1 of { (HappyWrap140 Located ModName
happy_var_1) -> 
	Located (ImpName PName) -> HappyAbsSyn
happyIn26
		 (ModName -> ImpName PName
forall name. ModName -> ImpName name
ImpTop (ModName -> ImpName PName)
-> Located ModName -> Located (ImpName PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located ModName
happy_var_1
	)}

happyReduce_39 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_39 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_39 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
12# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. HappyAbsSyn -> p -> p -> HappyAbsSyn
happyReduction_39
happyReduction_39 :: HappyAbsSyn -> p -> p -> HappyAbsSyn
happyReduction_39 HappyAbsSyn
happy_x_3
	p
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_3 of { (HappyWrap141 Located PName
happy_var_3) -> 
	Located (ImpName PName) -> HappyAbsSyn
happyIn27
		 (PName -> ImpName PName
forall name. name -> ImpName name
ImpNested (PName -> ImpName PName)
-> Located PName -> Located (ImpName PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located PName
happy_var_3
	)}

happyReduce_40 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_40 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_40 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
12# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_40
happyReduction_40 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_40 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_2 of { (HappyWrap140 Located ModName
happy_var_2) -> 
	Located (ImpName PName) -> HappyAbsSyn
happyIn27
		 (ModName -> ImpName PName
forall name. ModName -> ImpName name
ImpTop (ModName -> ImpName PName)
-> Located ModName -> Located (ImpName PName)
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located ModName
happy_var_2
	)}

happyReduce_41 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_41 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_41 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
13# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_41
happyReduction_41 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_41 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap140
happyOut140 HappyAbsSyn
happy_x_2 of { (HappyWrap140 Located ModName
happy_var_2) -> 
	Maybe (Located ModName) -> HappyAbsSyn
happyIn28
		 (Located ModName -> Maybe (Located ModName)
forall a. a -> Maybe a
Just Located ModName
happy_var_2
	)}

happyReduce_42 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_42 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_42 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
13# HappyAbsSyn
happyReduction_42
happyReduction_42 :: HappyAbsSyn
happyReduction_42  =  Maybe (Located ModName) -> HappyAbsSyn
happyIn28
		 (Maybe (Located ModName)
forall a. Maybe a
Nothing
	)

happyReduce_43 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_43 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_43 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
14# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_43
happyReduction_43 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_43 (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 -> HappyWrap31
happyOut31 HappyAbsSyn
happy_x_1 of { (HappyWrap31 [Ident] -> ImportSpec
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap30
happyOut30 HappyAbsSyn
happy_x_3 of { (HappyWrap30 [LIdent]
happy_var_3) -> 
	Maybe (Located ImportSpec) -> HappyAbsSyn
happyIn29
		 (Located ImportSpec -> Maybe (Located ImportSpec)
forall a. a -> Maybe a
Just Located
                                  { srcRange :: Range
srcRange = case [LIdent]
happy_var_3 of
                                      { [] -> Range
emptyRange
                                      ; [LIdent]
xs -> [Range] -> Range
rCombs ((LIdent -> Range) -> [LIdent] -> [Range]
forall a b. (a -> b) -> [a] -> [b]
map LIdent -> Range
forall a. Located a -> Range
srcRange [LIdent]
xs) }
                                  , thing :: ImportSpec
thing    = [Ident] -> ImportSpec
happy_var_1 ([Ident] -> [Ident]
forall a. [a] -> [a]
reverse ((LIdent -> Ident) -> [LIdent] -> [Ident]
forall a b. (a -> b) -> [a] -> [b]
map LIdent -> Ident
forall a. Located a -> a
thing [LIdent]
happy_var_3))
                                  }
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_44 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_44 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_44 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
14# HappyAbsSyn
happyReduction_44
happyReduction_44 :: HappyAbsSyn
happyReduction_44  =  Maybe (Located ImportSpec) -> HappyAbsSyn
happyIn29
		 (Maybe (Located ImportSpec)
forall a. Maybe a
Nothing
	)

happyReduce_45 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_45 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_45 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
15# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_45
happyReduction_45 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_45 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap30
happyOut30 HappyAbsSyn
happy_x_1 of { (HappyWrap30 [LIdent]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_3 of { (HappyWrap63 Located PName
happy_var_3) -> 
	[LIdent] -> HappyAbsSyn
happyIn30
		 ((PName -> Ident) -> Located PName -> LIdent
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap PName -> Ident
getIdent Located PName
happy_var_3 LIdent -> [LIdent] -> [LIdent]
forall a. a -> [a] -> [a]
: [LIdent]
happy_var_1
	)}}

happyReduce_46 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_46 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_46 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
15# HappyAbsSyn -> HappyAbsSyn
happyReduction_46
happyReduction_46 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_46 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_1 of { (HappyWrap63 Located PName
happy_var_1) -> 
	[LIdent] -> HappyAbsSyn
happyIn30
		 ([(PName -> Ident) -> Located PName -> LIdent
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap PName -> Ident
getIdent Located PName
happy_var_1]
	)}

happyReduce_47 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_47 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_47 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
15# HappyAbsSyn
happyReduction_47
happyReduction_47 :: HappyAbsSyn
happyReduction_47  =  [LIdent] -> HappyAbsSyn
happyIn30
		 ([]
	)

happyReduce_48 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_48 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_48 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
16# HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn
happyReduction_48
happyReduction_48 :: p -> HappyAbsSyn
happyReduction_48 p
happy_x_1
	 =  ([Ident] -> ImportSpec) -> HappyAbsSyn
happyIn31
		 ([Ident] -> ImportSpec
Hiding
	)

happyReduce_49 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_49 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_49 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
16# HappyAbsSyn
happyReduction_49
happyReduction_49 :: HappyAbsSyn
happyReduction_49  =  ([Ident] -> ImportSpec) -> HappyAbsSyn
happyIn31
		 ([Ident] -> ImportSpec
Only
	)

happyReduce_50 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_50 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_50 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
17# HappyAbsSyn -> HappyAbsSyn
happyReduction_50
happyReduction_50 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_50 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap34
happyOut34 HappyAbsSyn
happy_x_1 of { (HappyWrap34 [TopDecl PName]
happy_var_1) -> 
	Program PName -> HappyAbsSyn
happyIn32
		 ([TopDecl PName] -> Program PName
forall name. [TopDecl name] -> Program name
Program ([TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a]
reverse [TopDecl PName]
happy_var_1)
	)}

happyReduce_51 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_51 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_51 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
17# HappyAbsSyn
happyReduction_51
happyReduction_51 :: HappyAbsSyn
happyReduction_51  =  Program PName -> HappyAbsSyn
happyIn32
		 ([TopDecl PName] -> Program PName
forall name. [TopDecl name] -> Program name
Program []
	)

happyReduce_52 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_52 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_52 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
18# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_52
happyReduction_52 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_52 p
happy_x_3
	HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_2 of { (HappyWrap35 [TopDecl PName]
happy_var_2) -> 
	Program PName -> HappyAbsSyn
happyIn33
		 ([TopDecl PName] -> Program PName
forall name. [TopDecl name] -> Program name
Program ([TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a]
reverse [TopDecl PName]
happy_var_2)
	)}

happyReduce_53 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_53 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_53 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
18# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> p -> HappyAbsSyn
happyReduction_53
happyReduction_53 :: p -> p -> HappyAbsSyn
happyReduction_53 p
happy_x_2
	p
happy_x_1
	 =  Program PName -> HappyAbsSyn
happyIn33
		 ([TopDecl PName] -> Program PName
forall name. [TopDecl name] -> Program name
Program []
	)

happyReduce_54 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_54 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_54 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
19# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_54
happyReduction_54 :: p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_54 p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap40
happyOut40 HappyAbsSyn
happy_x_1 of { (HappyWrap40 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn34
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_55 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_55 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_55 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
19# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_55
happyReduction_55 :: p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_55 p
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap34
happyOut34 HappyAbsSyn
happy_x_1 of { (HappyWrap34 [TopDecl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap40
happyOut40 HappyAbsSyn
happy_x_2 of { (HappyWrap40 [TopDecl PName]
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn34
		 ([TopDecl PName]
happy_var_2 [TopDecl PName] -> [TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a] -> [a]
++ [TopDecl PName]
happy_var_1
	)}}

happyReduce_56 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_56 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_56 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
20# HappyAbsSyn -> HappyAbsSyn
happyReduction_56
happyReduction_56 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_56 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap36
happyOut36 HappyAbsSyn
happy_x_1 of { (HappyWrap36 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn35
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_57 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_57 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_57 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
20# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_57
happyReduction_57 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_57 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_1 of { (HappyWrap35 [TopDecl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap36
happyOut36 HappyAbsSyn
happy_x_3 of { (HappyWrap36 [TopDecl PName]
happy_var_3) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn35
		 ([TopDecl PName]
happy_var_3 [TopDecl PName] -> [TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a] -> [a]
++ [TopDecl PName]
happy_var_1
	)}}

happyReduce_58 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_58 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_58 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
20# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_58
happyReduction_58 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_58 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_1 of { (HappyWrap35 [TopDecl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap36
happyOut36 HappyAbsSyn
happy_x_3 of { (HappyWrap36 [TopDecl PName]
happy_var_3) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn35
		 ([TopDecl PName]
happy_var_3 [TopDecl PName] -> [TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a] -> [a]
++ [TopDecl PName]
happy_var_1
	)}}

happyReduce_59 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_59 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_59 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_59
happyReduction_59 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_59 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_1 of { (HappyWrap49 Decl PName
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Maybe (Located Text) -> ExportType -> Decl PName -> TopDecl PName
exportDecl Maybe (Located Text)
forall a. Maybe a
Nothing   ExportType
Public Decl PName
happy_var_1]
	)}

happyReduce_60 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_60 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_60 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
21# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_60
happyReduction_60 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_60 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap47
happyOut47 HappyAbsSyn
happy_x_1 of { (HappyWrap47 Located Text
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_2 of { (HappyWrap49 Decl PName
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Maybe (Located Text) -> ExportType -> Decl PName -> TopDecl PName
exportDecl (Located Text -> Maybe (Located Text)
forall a. a -> Maybe a
Just Located Text
happy_var_1) ExportType
Public Decl PName
happy_var_2]
	)}}

happyReduce_61 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_61 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_61 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
21# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_61
happyReduction_61 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_61 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (happy_var_3 :: Located Token
happy_var_3@(Located Range
_ (Token (StrLit {}) Text
_))) -> 
	( (TopDecl PName -> [TopDecl PName]
forall a. a -> [a]
forall (m :: * -> *) a. Monad m => a -> m a
return (TopDecl PName -> [TopDecl PName])
-> (Located String -> TopDecl PName)
-> Located String
-> [TopDecl PName]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Located String -> TopDecl PName
forall name. Located String -> TopDecl name
Include) (Located String -> [TopDecl PName])
-> ParseM (Located String) -> ParseM [TopDecl PName]
forall a b. (a -> b) -> ParseM a -> ParseM b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located Token -> ParseM (Located String)
fromStrLit Located Token
happy_var_3)})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn36 [TopDecl PName]
r))

happyReduce_62 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_62 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_62 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
21# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_62
happyReduction_62 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_62 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap115
happyOut115 HappyAbsSyn
happy_x_4 of { (HappyWrap115 [Pattern PName]
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Maybe (Located Text) -> ExportType -> Decl PName -> TopDecl PName
exportDecl Maybe (Located Text)
happy_var_1 ExportType
Public (Located PName -> [Pattern PName] -> Expr PName -> Decl PName
mkProperty Located PName
happy_var_3 [Pattern PName]
happy_var_4 Expr PName
happy_var_6)]
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_63 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_63 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_63 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
21# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_63
happyReduction_63 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_63 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Maybe (Located Text) -> ExportType -> Decl PName -> TopDecl PName
exportDecl Maybe (Located Text)
happy_var_1 ExportType
Public (Located PName -> [Pattern PName] -> Expr PName -> Decl PName
mkProperty Located PName
happy_var_3 [] Expr PName
happy_var_5)]
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_64 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_64 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_64 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
21# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_64
happyReduction_64 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_64 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap57
happyOut57 HappyAbsSyn
happy_x_2 of { (HappyWrap57 Newtype PName
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([ExportType
-> Maybe (Located Text) -> Newtype PName -> TopDecl PName
exportNewtype ExportType
Public Maybe (Located Text)
happy_var_1 Newtype PName
happy_var_2]
	)}}

happyReduce_65 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_65 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_65 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
21# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_65
happyReduction_65 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_65 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap59
happyOut59 HappyAbsSyn
happy_x_2 of { (HappyWrap59 EnumDecl PName
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([ExportType
-> Maybe (Located Text) -> EnumDecl PName -> TopDecl PName
exportEnum ExportType
Public Maybe (Located Text)
happy_var_1 EnumDecl PName
happy_var_2]
	)}}

happyReduce_66 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_66 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_66 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_66
happyReduction_66 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_66 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap42
happyOut42 HappyAbsSyn
happy_x_1 of { (HappyWrap42 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_67 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_67 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_67 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_67
happyReduction_67 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_67 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap43
happyOut43 HappyAbsSyn
happy_x_1 of { (HappyWrap43 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_68 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_68 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_68 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_68
happyReduction_68 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_68 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap41
happyOut41 HappyAbsSyn
happy_x_1 of { (HappyWrap41 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_69 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_69 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_69 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
21# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_69
happyReduction_69 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_69 (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
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_4 of { (HappyWrap127 Type PName
happy_var_4) -> 
	( Maybe (Located Text) -> Type PName -> ParseM [TopDecl PName]
mkInterfaceConstraint Maybe (Located Text)
happy_var_1 Type PName
happy_var_4)}})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn36 [TopDecl PName]
r))

happyReduce_70 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_70 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_70 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_70
happyReduction_70 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_70 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap44
happyOut44 HappyAbsSyn
happy_x_1 of { (HappyWrap44 TopDecl PName
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([ TopDecl PName
happy_var_1 ]
	)}

happyReduce_71 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_71 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_71 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
21# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_71
happyReduction_71 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_71 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap16
happyOut16 HappyAbsSyn
happy_x_3 of { (HappyWrap16 Module PName
happy_var_3) -> 
	( ((TopDecl PName -> [TopDecl PName] -> [TopDecl PName]
forall a. a -> [a] -> [a]
:[]) (TopDecl PName -> [TopDecl PName])
-> (NestedModule PName -> TopDecl PName)
-> NestedModule PName
-> [TopDecl PName]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Maybe (Located Text) -> NestedModule PName -> TopDecl PName
exportModule Maybe (Located Text)
happy_var_1) (NestedModule PName -> [TopDecl PName])
-> ParseM (NestedModule PName) -> ParseM [TopDecl PName]
forall a b. (a -> b) -> ParseM a -> ParseM b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Module PName -> ParseM (NestedModule PName)
mkNested Module PName
happy_var_3)}})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn36 [TopDecl PName]
r))

happyReduce_72 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_72 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_72 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
21# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_72
happyReduction_72 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_72 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap37
happyOut37 HappyAbsSyn
happy_x_2 of { (HappyWrap37 (Located PName, Signature PName)
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Maybe (Located Text)
-> (Located PName, Signature PName) -> TopDecl PName
mkSigDecl Maybe (Located Text)
happy_var_1 (Located PName, Signature PName)
happy_var_2]
	)}}

happyReduce_73 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_73 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_73 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
21# HappyAbsSyn -> HappyAbsSyn
happyReduction_73
happyReduction_73 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_73 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap39
happyOut39 HappyAbsSyn
happy_x_1 of { (HappyWrap39 ModParam PName
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([ModParam PName -> TopDecl PName
forall name. ModParam name -> TopDecl name
DModParam ModParam PName
happy_var_1]
	)}

happyReduce_74 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_74 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_74 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
21# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_74
happyReduction_74 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_74 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap23
happyOut23 HappyAbsSyn
happy_x_2 of { (HappyWrap23 Located (ImportG (ImpName PName))
happy_var_2) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn36
		 ([Located (ImportG (ImpName PName)) -> TopDecl PName
forall name. Located (ImportG (ImpName name)) -> TopDecl name
DImport Located (ImportG (ImpName PName))
happy_var_2]
	)}

happyReduce_75 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_75 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_75 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
7# Int#
22# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_75
happyReduction_75 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_75 (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 -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap38
happyOut38 HappyAbsSyn
happy_x_6 of { (HappyWrap38 Signature PName
happy_var_6) -> 
	(Located PName, Signature PName) -> HappyAbsSyn
happyIn37
		 ((Located PName
happy_var_3, Signature PName
happy_var_6)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_76 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_76 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_76 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
23# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_76
happyReduction_76 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_76 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Signature PName)
-> (Signature PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_1 of { (HappyWrap45 [ParamDecl PName]
happy_var_1) -> 
	( [Located (ImportG (ImpName PName))]
-> [ParamDecl PName] -> ParseM (Signature PName)
mkInterface [] [ParamDecl PName]
happy_var_1)})
	) (\Signature PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Signature PName -> HappyAbsSyn
happyIn38 Signature PName
r))

happyReduce_77 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_77 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_77 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
23# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_77
happyReduction_77 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_77 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Signature PName)
-> (Signature PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap22
happyOut22 HappyAbsSyn
happy_x_1 of { (HappyWrap22 [Located (ImportG (ImpName PName))]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_3 of { (HappyWrap45 [ParamDecl PName]
happy_var_3) -> 
	( [Located (ImportG (ImpName PName))]
-> [ParamDecl PName] -> ParseM (Signature PName)
mkInterface ([Located (ImportG (ImpName PName))]
-> [Located (ImportG (ImpName PName))]
forall a. [a] -> [a]
reverse [Located (ImportG (ImpName PName))]
happy_var_1) [ParamDecl PName]
happy_var_3)}})
	) (\Signature PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Signature PName -> HappyAbsSyn
happyIn38 Signature PName
r))

happyReduce_78 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_78 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_78 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
23# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_78
happyReduction_78 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_78 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Signature PName)
-> (Signature PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap22
happyOut22 HappyAbsSyn
happy_x_1 of { (HappyWrap22 [Located (ImportG (ImpName PName))]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_3 of { (HappyWrap45 [ParamDecl PName]
happy_var_3) -> 
	( [Located (ImportG (ImpName PName))]
-> [ParamDecl PName] -> ParseM (Signature PName)
mkInterface ([Located (ImportG (ImpName PName))]
-> [Located (ImportG (ImpName PName))]
forall a. [a] -> [a]
reverse [Located (ImportG (ImpName PName))]
happy_var_1) [ParamDecl PName]
happy_var_3)}})
	) (\Signature PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Signature PName -> HappyAbsSyn
happyIn38 Signature PName
r))

happyReduce_79 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_79 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_79 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
24# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_79
happyReduction_79 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_79 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap26
happyOut26 HappyAbsSyn
happy_x_4 of { (HappyWrap26 Located (ImpName PName)
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap28
happyOut28 HappyAbsSyn
happy_x_5 of { (HappyWrap28 Maybe (Located ModName)
happy_var_5) -> 
	ModParam PName -> HappyAbsSyn
happyIn39
		 (ModParam { mpSignature :: Located (ImpName PName)
mpSignature = Located (ImpName PName)
happy_var_4
                                      , mpAs :: Maybe ModName
mpAs        = (Located ModName -> ModName)
-> Maybe (Located ModName) -> Maybe ModName
forall a b. (a -> b) -> Maybe a -> Maybe b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Located ModName -> ModName
forall a. Located a -> a
thing Maybe (Located ModName)
happy_var_5
                                      , mpName :: Ident
mpName      = Located (ImpName PName) -> Maybe (Located ModName) -> Ident
mkModParamName Located (ImpName PName)
happy_var_4 Maybe (Located ModName)
happy_var_5
                                      , mpDoc :: Maybe (Located Text)
mpDoc       = Maybe (Located Text)
happy_var_1
                                      , mpRenaming :: Map PName PName
mpRenaming  = Map PName PName
forall a. Monoid a => a
mempty }
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_80 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_80 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_80 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
25# HappyAbsSyn -> HappyAbsSyn
happyReduction_80
happyReduction_80 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_80 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_1 of { (HappyWrap49 Decl PName
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn40
		 ([TopLevel (Decl PName) -> TopDecl PName
forall name. TopLevel (Decl name) -> TopDecl name
Decl (TopLevel {tlExport :: ExportType
tlExport = ExportType
Public, tlValue :: Decl PName
tlValue = Decl PName
happy_var_1 })]
	)}

happyReduce_81 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_81 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_81 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
25# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_81
happyReduction_81 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_81 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (StrLit {}) Text
_))) -> 
	( (TopDecl PName -> [TopDecl PName]
forall a. a -> [a]
forall (m :: * -> *) a. Monad m => a -> m a
return (TopDecl PName -> [TopDecl PName])
-> (Located String -> TopDecl PName)
-> Located String
-> [TopDecl PName]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Located String -> TopDecl PName
forall name. Located String -> TopDecl name
Include) (Located String -> [TopDecl PName])
-> ParseM (Located String) -> ParseM [TopDecl PName]
forall a b. (a -> b) -> ParseM a -> ParseM b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located Token -> ParseM (Located String)
fromStrLit Located Token
happy_var_2)})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn40 [TopDecl PName]
r))

happyReduce_82 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_82 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_82 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
25# HappyAbsSyn -> HappyAbsSyn
happyReduction_82
happyReduction_82 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_82 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap42
happyOut42 HappyAbsSyn
happy_x_1 of { (HappyWrap42 [TopDecl PName]
happy_var_1) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn40
		 ([TopDecl PName]
happy_var_1
	)}

happyReduce_83 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_83 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_83 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
26# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_83
happyReduction_83 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_83 (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 -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_3 of { (HappyWrap35 [TopDecl PName]
happy_var_3) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn41
		 (ExportType -> [TopDecl PName] -> [TopDecl PName]
changeExport ExportType
Private ([TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a]
reverse [TopDecl PName]
happy_var_3)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}

happyReduce_84 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_84 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_84 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
26# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_84
happyReduction_84 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_84 (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 -> HappyWrap35
happyOut35 HappyAbsSyn
happy_x_4 of { (HappyWrap35 [TopDecl PName]
happy_var_4) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn41
		 (ExportType -> [TopDecl PName] -> [TopDecl PName]
changeExport ExportType
Private ([TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a]
reverse [TopDecl PName]
happy_var_4)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}

happyReduce_85 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_85 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_85 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
27# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_85
happyReduction_85 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_85 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_5 of { (HappyWrap120 Schema PName
happy_var_5) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn42
		 (Maybe (Located Text)
-> Located PName -> Schema PName -> [TopDecl PName]
mkPrimDecl Maybe (Located Text)
happy_var_1 Located PName
happy_var_3 Schema PName
happy_var_5
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_86 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_86 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_86 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
7# Int#
27# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_86
happyReduction_86 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_86 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_4 of { (HappyWrap69 Located PName
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_7 of { (HappyWrap120 Schema PName
happy_var_7) -> 
	[TopDecl PName] -> HappyAbsSyn
happyIn42
		 (Maybe (Located Text)
-> Located PName -> Schema PName -> [TopDecl PName]
mkPrimDecl Maybe (Located Text)
happy_var_1 Located PName
happy_var_4 Schema PName
happy_var_7
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_87 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_87 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_87 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
6# Int#
27# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_87
happyReduction_87 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_87 (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
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_4 of { (HappyWrap120 Schema PName
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_6 of { (HappyWrap124 Located Kind
happy_var_6) -> 
	( Maybe (Located Text)
-> Schema PName -> Located Kind -> ParseM [TopDecl PName]
mkPrimTypeDecl Maybe (Located Text)
happy_var_1 Schema PName
happy_var_4 Located Kind
happy_var_6)}}})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn42 [TopDecl PName]
r))

happyReduce_88 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_88 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_88 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
28# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_88
happyReduction_88 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_88 (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
	 = ParseM [TopDecl PName]
-> ([TopDecl PName] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_5 of { (HappyWrap120 Schema PName
happy_var_5) -> 
	( Maybe (Located Text)
-> Located PName -> Schema PName -> ParseM [TopDecl PName]
mkForeignDecl Maybe (Located Text)
happy_var_1 Located PName
happy_var_3 Schema PName
happy_var_5)}}})
	) (\[TopDecl PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([TopDecl PName] -> HappyAbsSyn
happyIn43 [TopDecl PName]
r))

happyReduce_89 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_89 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_89 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
29# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_89
happyReduction_89 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_89 (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 -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_3 of { (HappyWrap45 [ParamDecl PName]
happy_var_3) -> 
	TopDecl PName -> HappyAbsSyn
happyIn44
		 ([ParamDecl PName] -> TopDecl PName
mkParDecls ([ParamDecl PName] -> [ParamDecl PName]
forall a. [a] -> [a]
reverse [ParamDecl PName]
happy_var_3)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}

happyReduce_90 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_90 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_90 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
29# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_90
happyReduction_90 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_90 (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 -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_4 of { (HappyWrap45 [ParamDecl PName]
happy_var_4) -> 
	TopDecl PName -> HappyAbsSyn
happyIn44
		 ([ParamDecl PName] -> TopDecl PName
mkParDecls ([ParamDecl PName] -> [ParamDecl PName]
forall a. [a] -> [a]
reverse [ParamDecl PName]
happy_var_4)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}

happyReduce_91 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_91 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_91 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
30# HappyAbsSyn -> HappyAbsSyn
happyReduction_91
happyReduction_91 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_91 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap46
happyOut46 HappyAbsSyn
happy_x_1 of { (HappyWrap46 ParamDecl PName
happy_var_1) -> 
	[ParamDecl PName] -> HappyAbsSyn
happyIn45
		 ([ParamDecl PName
happy_var_1]
	)}

happyReduce_92 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_92 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_92 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
30# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_92
happyReduction_92 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_92 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_1 of { (HappyWrap45 [ParamDecl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap46
happyOut46 HappyAbsSyn
happy_x_3 of { (HappyWrap46 ParamDecl PName
happy_var_3) -> 
	[ParamDecl PName] -> HappyAbsSyn
happyIn45
		 (ParamDecl PName
happy_var_3 ParamDecl PName -> [ParamDecl PName] -> [ParamDecl PName]
forall a. a -> [a] -> [a]
: [ParamDecl PName]
happy_var_1
	)}}

happyReduce_93 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_93 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_93 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
30# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_93
happyReduction_93 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_93 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap45
happyOut45 HappyAbsSyn
happy_x_1 of { (HappyWrap45 [ParamDecl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap46
happyOut46 HappyAbsSyn
happy_x_3 of { (HappyWrap46 ParamDecl PName
happy_var_3) -> 
	[ParamDecl PName] -> HappyAbsSyn
happyIn45
		 (ParamDecl PName
happy_var_3 ParamDecl PName -> [ParamDecl PName] -> [ParamDecl PName]
forall a. a -> [a] -> [a]
: [ParamDecl PName]
happy_var_1
	)}}

happyReduce_94 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_94 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_94 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
31# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_94
happyReduction_94 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_94 (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 -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_2 of { (HappyWrap138 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_4 of { (HappyWrap120 Schema PName
happy_var_4) -> 
	ParamDecl PName -> HappyAbsSyn
happyIn46
		 (Maybe (Located Text)
-> Located PName -> Schema PName -> ParamDecl PName
mkParFun Maybe (Located Text)
happy_var_1 Located PName
happy_var_2 Schema PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_95 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_95 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_95 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
31# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_95
happyReduction_95 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_95 (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
	 = ParseM (ParamDecl PName)
-> (ParamDecl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_3 of { (HappyWrap138 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_5 of { (HappyWrap124 Located Kind
happy_var_5) -> 
	( Maybe (Located Text)
-> Located PName -> Located Kind -> ParseM (ParamDecl PName)
mkParType Maybe (Located Text)
happy_var_1 Located PName
happy_var_3 Located Kind
happy_var_5)}}})
	) (\ParamDecl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (ParamDecl PName -> HappyAbsSyn
happyIn46 ParamDecl PName
r))

happyReduce_96 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_96 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_96 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
31# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_96
happyReduction_96 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_96 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap48
happyOut48 HappyAbsSyn
happy_x_1 of { (HappyWrap48 Maybe (Located Text)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap52
happyOut52 HappyAbsSyn
happy_x_2 of { (HappyWrap52 Decl PName
happy_var_2) -> 
	ParamDecl PName -> HappyAbsSyn
happyIn46
		 (Maybe Text -> Decl PName -> ParamDecl PName
mkIfacePropSyn (Located Text -> Text
forall a. Located a -> a
thing (Located Text -> Text) -> Maybe (Located Text) -> Maybe Text
forall a b. (a -> b) -> Maybe a -> Maybe b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Maybe (Located Text)
happy_var_1) Decl PName
happy_var_2
	)}}

happyReduce_97 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_97 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_97 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
31# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_97
happyReduction_97 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_97 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap53
happyOut53 HappyAbsSyn
happy_x_2 of { (HappyWrap53 Located [Prop PName]
happy_var_2) -> 
	ParamDecl PName -> HappyAbsSyn
happyIn46
		 ([Located (Prop PName)] -> ParamDecl PName
forall name. [Located (Prop name)] -> ParamDecl name
DParameterConstraint (Located [Prop PName] -> [Located (Prop PName)]
forall a. Located [a] -> [Located a]
distrLoc Located [Prop PName]
happy_var_2)
	)}

happyReduce_98 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_98 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_98 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
32# HappyAbsSyn -> HappyAbsSyn
happyReduction_98
happyReduction_98 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_98 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (White TokenW
DocStr) Text
_))) -> 
	Located Text -> HappyAbsSyn
happyIn47
		 (Located Text -> Located Text
mkDoc ((Token -> Text) -> Located Token -> Located Text
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Token -> Text
tokenText Located Token
happy_var_1)
	)}

happyReduce_99 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_99 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_99 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
33# HappyAbsSyn -> HappyAbsSyn
happyReduction_99
happyReduction_99 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_99 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap47
happyOut47 HappyAbsSyn
happy_x_1 of { (HappyWrap47 Located Text
happy_var_1) -> 
	Maybe (Located Text) -> HappyAbsSyn
happyIn48
		 (Located Text -> Maybe (Located Text)
forall a. a -> Maybe a
Just Located Text
happy_var_1
	)}

happyReduce_100 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_100 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_100 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
33# HappyAbsSyn
happyReduction_100
happyReduction_100 :: HappyAbsSyn
happyReduction_100  =  Maybe (Located Text) -> HappyAbsSyn
happyIn48
		 (Maybe (Located Text)
forall a. Maybe a
Nothing
	)

happyReduce_101 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_101 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_101 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
34# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_101
happyReduction_101 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_101 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap62
happyOut62 HappyAbsSyn
happy_x_1 of { (HappyWrap62 [Located PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_3 of { (HappyWrap120 Schema PName
happy_var_3) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 ((Located PName, Schema PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at ([Located PName] -> Located PName
forall a. HasCallStack => [a] -> a
head [Located PName]
happy_var_1,Schema PName
happy_var_3) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ [Located PName] -> Schema PName -> Decl PName
forall name. [Located name] -> Schema name -> Decl name
DSignature ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_1) Schema PName
happy_var_3
	)}}

happyReduce_102 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_102 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_102 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
34# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_102
happyReduction_102 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_102 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_1 of { (HappyWrap113 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 ((Pattern PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Expr PName
happy_var_3) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Expr PName -> Decl PName
forall name. Pattern name -> Expr name -> Decl name
DPatBind Pattern PName
happy_var_1 Expr PName
happy_var_3
	)}}

happyReduce_103 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_103 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_103 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
34# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_103
happyReduction_103 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_103 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_2 of { (HappyWrap69 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 ((Range, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_5) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Expr PName -> Decl PName
forall name. Pattern name -> Expr name -> Decl name
DPatBind (Located PName -> Pattern PName
forall n. Located n -> Pattern n
PVar Located PName
happy_var_2) Expr PName
happy_var_5
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_104 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_104 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_104 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_104
happyReduction_104 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_104 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_1 of { (HappyWrap63 Located PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap118
happyOut118 HappyAbsSyn
happy_x_2 of { (HappyWrap118 ([Pattern PName], [Pattern PName])
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap54
happyOut54 HappyAbsSyn
happy_x_3 of { (HappyWrap54 [PropGuardCase PName]
happy_var_3) -> 
	( Located PName
-> ([Pattern PName], [Pattern PName])
-> [PropGuardCase PName]
-> ParseM (Decl PName)
mkPropGuardsDecl Located PName
happy_var_1 ([Pattern PName], [Pattern PName])
happy_var_2 [PropGuardCase PName]
happy_var_3)}}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_105 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_105 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_105 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_105
happyReduction_105 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_105 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_1 of { (HappyWrap63 Located PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap54
happyOut54 HappyAbsSyn
happy_x_2 of { (HappyWrap54 [PropGuardCase PName]
happy_var_2) -> 
	( Located PName -> [PropGuardCase PName] -> ParseM (Decl PName)
mkConstantPropGuardsDecl Located PName
happy_var_1 [PropGuardCase PName]
happy_var_2)}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_106 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_106 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_106 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
34# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_106
happyReduction_106 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_106 (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 -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_1 of { (HappyWrap63 Located PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap118
happyOut118 HappyAbsSyn
happy_x_2 of { (HappyWrap118 ([Pattern PName], [Pattern PName])
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 ((Located PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located PName
happy_var_1,Expr PName
happy_var_4) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Located PName
-> ([Pattern PName], [Pattern PName]) -> Expr PName -> Decl PName
mkIndexedDecl Located PName
happy_var_1 ([Pattern PName], [Pattern PName])
happy_var_2 Expr PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_107 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_107 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_107 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
34# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_107
happyReduction_107 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_107 (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 -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_1 of { (HappyWrap114 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap70
happyOut70 HappyAbsSyn
happy_x_2 of { (HappyWrap70 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_3 of { (HappyWrap114 Pattern PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 ((Pattern PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Expr PName
happy_var_5) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$
                             Bind PName -> Decl PName
forall name. Bind name -> Decl name
DBind (Bind PName -> Decl PName) -> Bind PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Bind { bName :: Located PName
bName      = Located PName
happy_var_2
                                          , bParams :: [Pattern PName]
bParams    = [Pattern PName
happy_var_1,Pattern PName
happy_var_3]
                                          , bDef :: Located (BindDef PName)
bDef       = Expr PName -> Located (BindDef PName) -> Located (BindDef PName)
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Expr PName
happy_var_5 (Range -> BindDef PName -> Located (BindDef PName)
forall a. Range -> a -> Located a
Located Range
emptyRange (Expr PName -> BindDef PName
forall name. Expr name -> BindDef name
exprDef Expr PName
happy_var_5))
                                          , bSignature :: Maybe (Schema PName)
bSignature = Maybe (Schema PName)
forall a. Maybe a
Nothing
                                          , bPragmas :: [Pragma]
bPragmas   = []
                                          , bMono :: Bool
bMono      = Bool
False
                                          , bInfix :: Bool
bInfix     = Bool
True
                                          , bFixity :: Maybe Fixity
bFixity    = Maybe Fixity
forall a. Maybe a
Nothing
                                          , bDoc :: Maybe Text
bDoc       = Maybe Text
forall a. Maybe a
Nothing
                                          , bExport :: ExportType
bExport    = ExportType
Public
                                          }
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_108 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_108 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_108 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
34# HappyAbsSyn -> HappyAbsSyn
happyReduction_108
happyReduction_108 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_108 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap52
happyOut52 HappyAbsSyn
happy_x_1 of { (HappyWrap52 Decl PName
happy_var_1) -> 
	Decl PName -> HappyAbsSyn
happyIn49
		 (Decl PName
happy_var_1
	)}

happyReduce_109 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_109 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_109 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_109
happyReduction_109 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_109 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
LeftAssoc  Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_110 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_110 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_110 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_110
happyReduction_110 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_110 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
RightAssoc Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_111 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_111 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_111 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_111
happyReduction_111 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_111 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
NonAssoc   Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_112 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_112 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_112 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
34# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {a} {p}. HappyStk a -> p -> ParseM HappyAbsSyn
happyReduction_112
happyReduction_112 :: HappyStk a -> p -> ParseM HappyAbsSyn
happyReduction_112 (a
happy_x_1 `HappyStk`
	HappyStk a
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((( String -> ParseM (Decl PName)
forall a. String -> ParseM a
expected String
"a declaration"))
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn49 Decl PName
r))

happyReduce_113 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_113 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_113 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
35# HappyAbsSyn -> HappyAbsSyn
happyReduction_113
happyReduction_113 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_113 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap51
happyOut51 HappyAbsSyn
happy_x_1 of { (HappyWrap51 Decl PName
happy_var_1) -> 
	[Decl PName] -> HappyAbsSyn
happyIn50
		 ([Decl PName
happy_var_1]
	)}

happyReduce_114 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_114 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_114 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
35# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_114
happyReduction_114 :: p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_114 p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap51
happyOut51 HappyAbsSyn
happy_x_1 of { (HappyWrap51 Decl PName
happy_var_1) -> 
	[Decl PName] -> HappyAbsSyn
happyIn50
		 ([Decl PName
happy_var_1]
	)}

happyReduce_115 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_115 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_115 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
35# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_115
happyReduction_115 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_115 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap51
happyOut51 HappyAbsSyn
happy_x_1 of { (HappyWrap51 Decl PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap50
happyOut50 HappyAbsSyn
happy_x_3 of { (HappyWrap50 [Decl PName]
happy_var_3) -> 
	[Decl PName] -> HappyAbsSyn
happyIn50
		 ((Decl PName
happy_var_1Decl PName -> [Decl PName] -> [Decl PName]
forall a. a -> [a] -> [a]
:[Decl PName]
happy_var_3)
	)}}

happyReduce_116 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_116 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_116 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
36# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_116
happyReduction_116 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_116 (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 -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_2 of { (HappyWrap113 Pattern PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 ((Pattern PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_2,Expr PName
happy_var_4) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Expr PName -> Decl PName
forall name. Pattern name -> Expr name -> Decl name
DPatBind Pattern PName
happy_var_2 Expr PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_117 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_117 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_117 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
5# Int#
36# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_117
happyReduction_117 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_117 (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 -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_2 of { (HappyWrap63 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap118
happyOut118 HappyAbsSyn
happy_x_3 of { (HappyWrap118 ([Pattern PName], [Pattern PName])
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 ((Located PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located PName
happy_var_2,Expr PName
happy_var_5) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Located PName
-> ([Pattern PName], [Pattern PName]) -> Expr PName -> Decl PName
mkIndexedDecl Located PName
happy_var_2 ([Pattern PName], [Pattern PName])
happy_var_3 Expr PName
happy_var_5
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_118 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_118 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_118 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
36# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_118
happyReduction_118 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_118 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_3 of { (HappyWrap69 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 ((Range, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_2,Expr PName
happy_var_6) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Expr PName -> Decl PName
forall name. Pattern name -> Expr name -> Decl name
DPatBind (Located PName -> Pattern PName
forall n. Located n -> Pattern n
PVar Located PName
happy_var_3) Expr PName
happy_var_6
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_119 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_119 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_119 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
36# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_119
happyReduction_119 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_119 (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 -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_2 of { (HappyWrap114 Pattern PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap70
happyOut70 HappyAbsSyn
happy_x_3 of { (HappyWrap70 Located PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_4 of { (HappyWrap114 Pattern PName
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 ((Pattern PName, Expr PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_2,Expr PName
happy_var_6) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$
                             Bind PName -> Decl PName
forall name. Bind name -> Decl name
DBind (Bind PName -> Decl PName) -> Bind PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ Bind { bName :: Located PName
bName      = Located PName
happy_var_3
                                          , bParams :: [Pattern PName]
bParams    = [Pattern PName
happy_var_2,Pattern PName
happy_var_4]
                                          , bDef :: Located (BindDef PName)
bDef       = Expr PName -> Located (BindDef PName) -> Located (BindDef PName)
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Expr PName
happy_var_6 (Range -> BindDef PName -> Located (BindDef PName)
forall a. Range -> a -> Located a
Located Range
emptyRange (Expr PName -> BindDef PName
forall name. Expr name -> BindDef name
exprDef Expr PName
happy_var_6))
                                          , bSignature :: Maybe (Schema PName)
bSignature = Maybe (Schema PName)
forall a. Maybe a
Nothing
                                          , bPragmas :: [Pragma]
bPragmas   = []
                                          , bMono :: Bool
bMono      = Bool
False
                                          , bInfix :: Bool
bInfix     = Bool
True
                                          , bFixity :: Maybe Fixity
bFixity    = Maybe Fixity
forall a. Maybe a
Nothing
                                          , bDoc :: Maybe Text
bDoc       = Maybe Text
forall a. Maybe a
Nothing
                                          , bExport :: ExportType
bExport    = ExportType
Public
                                          }
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_120 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_120 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_120 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
36# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_120
happyReduction_120 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_120 (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 -> HappyWrap62
happyOut62 HappyAbsSyn
happy_x_2 of { (HappyWrap62 [Located PName]
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
happy_x_4 of { (HappyWrap120 Schema PName
happy_var_4) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 ((Located PName, Schema PName) -> Decl PName -> Decl PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at ([Located PName] -> Located PName
forall a. HasCallStack => [a] -> a
head [Located PName]
happy_var_2,Schema PName
happy_var_4) (Decl PName -> Decl PName) -> Decl PName -> Decl PName
forall a b. (a -> b) -> a -> b
$ [Located PName] -> Schema PName -> Decl PName
forall name. [Located name] -> Schema name -> Decl name
DSignature ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_2) Schema PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_121 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_121 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_121 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
36# HappyAbsSyn -> HappyAbsSyn
happyReduction_121
happyReduction_121 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_121 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap52
happyOut52 HappyAbsSyn
happy_x_1 of { (HappyWrap52 Decl PName
happy_var_1) -> 
	Decl PName -> HappyAbsSyn
happyIn51
		 (Decl PName
happy_var_1
	)}

happyReduce_122 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_122 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_122 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
36# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_122
happyReduction_122 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_122 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
LeftAssoc  Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn51 Decl PName
r))

happyReduce_123 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_123 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_123 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
36# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_123
happyReduction_123 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_123 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
RightAssoc Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn51 Decl PName
r))

happyReduce_124 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_124 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_124 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
36# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_124
happyReduction_124 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_124 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (happy_var_2 :: Located Token
happy_var_2@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_3 of { (HappyWrap72 [Located PName]
happy_var_3) -> 
	( Assoc -> Located Token -> [Located PName] -> ParseM (Decl PName)
mkFixity Assoc
NonAssoc   Located Token
happy_var_2 ([Located PName] -> [Located PName]
forall a. [a] -> [a]
reverse [Located PName]
happy_var_3))}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn51 Decl PName
r))

happyReduce_125 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_125 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_125 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
37# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_125
happyReduction_125 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_125 (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
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_5 of { (HappyWrap127 Type PName
happy_var_5) -> 
	( Type PName -> Type PName -> ParseM (Decl PName)
mkPropSyn Type PName
happy_var_3 Type PName
happy_var_5)}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn52 Decl PName
r))

happyReduce_126 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_126 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_126 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
37# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_126
happyReduction_126 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_126 (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
	 = ParseM (Decl PName)
-> (Decl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_4 of { (HappyWrap127 Type PName
happy_var_4) -> 
	( Type PName -> Type PName -> ParseM (Decl PName)
mkTySyn   Type PName
happy_var_2 Type PName
happy_var_4)}})
	) (\Decl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Decl PName -> HappyAbsSyn
happyIn52 Decl PName
r))

happyReduce_127 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_127 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_127 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
38# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_127
happyReduction_127 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_127 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Located [Prop PName])
-> (Located [Prop PName] -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	( Type PName -> ParseM (Located [Prop PName])
mkProp Type PName
happy_var_3)})
	) (\Located [Prop PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located [Prop PName] -> HappyAbsSyn
happyIn53 Located [Prop PName]
r))

happyReduce_128 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_128 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_128 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
39# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_128
happyReduction_128 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_128 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap54
happyOut54 HappyAbsSyn
happy_x_1 of { (HappyWrap54 [PropGuardCase PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap55
happyOut55 HappyAbsSyn
happy_x_2 of { (HappyWrap55 PropGuardCase PName
happy_var_2) -> 
	[PropGuardCase PName] -> HappyAbsSyn
happyIn54
		 (PropGuardCase PName
happy_var_2 PropGuardCase PName
-> [PropGuardCase PName] -> [PropGuardCase PName]
forall a. a -> [a] -> [a]
: [PropGuardCase PName]
happy_var_1
	)}}

happyReduce_129 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_129 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_129 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
39# HappyAbsSyn -> HappyAbsSyn
happyReduction_129
happyReduction_129 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_129 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap55
happyOut55 HappyAbsSyn
happy_x_1 of { (HappyWrap55 PropGuardCase PName
happy_var_1) -> 
	[PropGuardCase PName] -> HappyAbsSyn
happyIn54
		 ([PropGuardCase PName
happy_var_1]
	)}

happyReduce_130 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_130 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_130 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
40# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_130
happyReduction_130 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_130 (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 -> HappyWrap56
happyOut56 HappyAbsSyn
happy_x_2 of { (HappyWrap56 [Located (Prop PName)]
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	PropGuardCase PName -> HappyAbsSyn
happyIn55
		 ([Located (Prop PName)] -> Expr PName -> PropGuardCase PName
forall name.
[Located (Prop name)] -> Expr name -> PropGuardCase name
PropGuardCase [Located (Prop PName)]
happy_var_2 Expr PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_131 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_131 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_131 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
41# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_131
happyReduction_131 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_131 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [Located (Prop PName)]
-> ([Located (Prop PName)] -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	( Type PName -> ParseM [Located (Prop PName)]
mkPropGuards Type PName
happy_var_1)})
	) (\[Located (Prop PName)]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([Located (Prop PName)] -> HappyAbsSyn
happyIn56 [Located (Prop PName)]
r))

happyReduce_132 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_132 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_132 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
42# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_132
happyReduction_132 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_132 (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
	 = ParseM (Newtype PName)
-> (Newtype PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap58
happyOut58 HappyAbsSyn
happy_x_4 of { (HappyWrap58 Located (RecordMap Ident (Range, Type PName))
happy_var_4) -> 
	( Type PName
-> Located (RecordMap Ident (Range, Type PName))
-> ParseM (Newtype PName)
mkNewtype Type PName
happy_var_2 Located (RecordMap Ident (Range, Type PName))
happy_var_4)}})
	) (\Newtype PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Newtype PName -> HappyAbsSyn
happyIn57 Newtype PName
r))

happyReduce_133 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_133 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_133 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
43# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_133
happyReduction_133 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_133 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Located (RecordMap Ident (Range, Type PName)))
-> (Located (RecordMap Ident (Range, Type PName))
    -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Type PName)
    -> Located (RecordMap Ident (Range, Type PName)))
-> [Named (Type PName)]
-> ParseM (Located (RecordMap Ident (Range, Type PName)))
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) (Range
-> RecordMap Ident (Range, Type PName)
-> Located (RecordMap Ident (Range, Type PName))
forall a. Range -> a -> Located a
Located Range
emptyRange) [])}})
	) (\Located (RecordMap Ident (Range, Type PName))
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located (RecordMap Ident (Range, Type PName)) -> HappyAbsSyn
happyIn58 Located (RecordMap Ident (Range, Type PName))
r))

happyReduce_134 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_134 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_134 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
43# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_134
happyReduction_134 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_134 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Located (RecordMap Ident (Range, Type PName)))
-> (Located (RecordMap Ident (Range, Type PName))
    -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap136
happyOut136 HappyAbsSyn
happy_x_2 of { (HappyWrap136 [Named (Type PName)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Type PName)
    -> Located (RecordMap Ident (Range, Type PName)))
-> [Named (Type PName)]
-> ParseM (Located (RecordMap Ident (Range, Type PName)))
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) (Range
-> RecordMap Ident (Range, Type PName)
-> Located (RecordMap Ident (Range, Type PName))
forall a. Range -> a -> Located a
Located Range
emptyRange) [Named (Type PName)]
happy_var_2)}}})
	) (\Located (RecordMap Ident (Range, Type PName))
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located (RecordMap Ident (Range, Type PName)) -> HappyAbsSyn
happyIn58 Located (RecordMap Ident (Range, Type PName))
r))

happyReduce_135 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_135 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_135 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
44# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_135
happyReduction_135 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_135 (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
	 = ParseM (EnumDecl PName)
-> (EnumDecl PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap60
happyOut60 HappyAbsSyn
happy_x_4 of { (HappyWrap60 [TopLevel (EnumCon PName)]
happy_var_4) -> 
	( Type PName -> [TopLevel (EnumCon PName)] -> ParseM (EnumDecl PName)
mkEnumDecl Type PName
happy_var_2 [TopLevel (EnumCon PName)]
happy_var_4)}})
	) (\EnumDecl PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (EnumDecl PName -> HappyAbsSyn
happyIn59 EnumDecl PName
r))

happyReduce_136 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_136 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_136 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
45# HappyAbsSyn -> HappyAbsSyn
happyReduction_136
happyReduction_136 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_136 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap61
happyOut61 HappyAbsSyn
happy_x_1 of { (HappyWrap61 TopLevel (EnumCon PName)
happy_var_1) -> 
	[TopLevel (EnumCon PName)] -> HappyAbsSyn
happyIn60
		 ([TopLevel (EnumCon PName)
happy_var_1]
	)}

happyReduce_137 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_137 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_137 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
45# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_137
happyReduction_137 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_137 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap61
happyOut61 HappyAbsSyn
happy_x_2 of { (HappyWrap61 TopLevel (EnumCon PName)
happy_var_2) -> 
	[TopLevel (EnumCon PName)] -> HappyAbsSyn
happyIn60
		 ([TopLevel (EnumCon PName)
happy_var_2]
	)}

happyReduce_138 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_138 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_138 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
45# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_138
happyReduction_138 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_138 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap60
happyOut60 HappyAbsSyn
happy_x_1 of { (HappyWrap60 [TopLevel (EnumCon PName)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap61
happyOut61 HappyAbsSyn
happy_x_3 of { (HappyWrap61 TopLevel (EnumCon PName)
happy_var_3) -> 
	[TopLevel (EnumCon PName)] -> HappyAbsSyn
happyIn60
		 (TopLevel (EnumCon PName)
happy_var_3 TopLevel (EnumCon PName)
-> [TopLevel (EnumCon PName)] -> [TopLevel (EnumCon PName)]
forall a. a -> [a] -> [a]
: [TopLevel (EnumCon PName)]
happy_var_1
	)}}

happyReduce_139 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_139 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_139 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
46# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_139
happyReduction_139 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_139 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (TopLevel (EnumCon PName))
-> (TopLevel (EnumCon PName) -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap129
happyOut129 HappyAbsSyn
happy_x_1 of { (HappyWrap129 Type PName
happy_var_1) -> 
	( Maybe (Located Text)
-> ExportType -> Type PName -> ParseM (TopLevel (EnumCon PName))
mkConDecl Maybe (Located Text)
forall a. Maybe a
Nothing   ExportType
Public Type PName
happy_var_1)})
	) (\TopLevel (EnumCon PName)
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (TopLevel (EnumCon PName) -> HappyAbsSyn
happyIn61 TopLevel (EnumCon PName)
r))

happyReduce_140 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_140 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_140 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
46# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_140
happyReduction_140 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_140 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (TopLevel (EnumCon PName))
-> (TopLevel (EnumCon PName) -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap47
happyOut47 HappyAbsSyn
happy_x_1 of { (HappyWrap47 Located Text
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap129
happyOut129 HappyAbsSyn
happy_x_2 of { (HappyWrap129 Type PName
happy_var_2) -> 
	( Maybe (Located Text)
-> ExportType -> Type PName -> ParseM (TopLevel (EnumCon PName))
mkConDecl (Located Text -> Maybe (Located Text)
forall a. a -> Maybe a
Just Located Text
happy_var_1) ExportType
Public Type PName
happy_var_2)}})
	) (\TopLevel (EnumCon PName)
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (TopLevel (EnumCon PName) -> HappyAbsSyn
happyIn61 TopLevel (EnumCon PName)
r))

happyReduce_141 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_141 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_141 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
47# HappyAbsSyn -> HappyAbsSyn
happyReduction_141
happyReduction_141 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_141 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_1 of { (HappyWrap63 Located PName
happy_var_1) -> 
	[Located PName] -> HappyAbsSyn
happyIn62
		 ([ Located PName
happy_var_1]
	)}

happyReduce_142 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_142 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_142 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
47# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_142
happyReduction_142 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_142 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap62
happyOut62 HappyAbsSyn
happy_x_1 of { (HappyWrap62 [Located PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap63
happyOut63 HappyAbsSyn
happy_x_3 of { (HappyWrap63 Located PName
happy_var_3) -> 
	[Located PName] -> HappyAbsSyn
happyIn62
		 (Located PName
happy_var_3 Located PName -> [Located PName] -> [Located PName]
forall a. a -> [a] -> [a]
: [Located PName]
happy_var_1
	)}}

happyReduce_143 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_143 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_143 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
48# HappyAbsSyn -> HappyAbsSyn
happyReduction_143
happyReduction_143 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_143 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_1 of { (HappyWrap138 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn63
		 (Located PName
happy_var_1
	)}

happyReduce_144 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_144 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_144 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
48# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_144
happyReduction_144 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_144 p
happy_x_3
	HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_2 of { (HappyWrap69 Located PName
happy_var_2) -> 
	Located PName -> HappyAbsSyn
happyIn63
		 (Located PName
happy_var_2
	)}

happyReduce_145 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_145 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_145 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
49# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_145
happyReduction_145 :: p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_145 p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_1 of { (HappyWrap49 Decl PName
happy_var_1) -> 
	[Decl PName] -> HappyAbsSyn
happyIn64
		 ([Decl PName
happy_var_1]
	)}

happyReduce_146 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_146 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_146 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
49# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_146
happyReduction_146 :: p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_146 p
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap64
happyOut64 HappyAbsSyn
happy_x_1 of { (HappyWrap64 [Decl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_2 of { (HappyWrap49 Decl PName
happy_var_2) -> 
	[Decl PName] -> HappyAbsSyn
happyIn64
		 (Decl PName
happy_var_2 Decl PName -> [Decl PName] -> [Decl PName]
forall a. a -> [a] -> [a]
: [Decl PName]
happy_var_1
	)}}

happyReduce_147 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_147 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_147 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
50# HappyAbsSyn -> HappyAbsSyn
happyReduction_147
happyReduction_147 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_147 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_1 of { (HappyWrap49 Decl PName
happy_var_1) -> 
	[Decl PName] -> HappyAbsSyn
happyIn65
		 ([Decl PName
happy_var_1]
	)}

happyReduce_148 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_148 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_148 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
50# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_148
happyReduction_148 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_148 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap65
happyOut65 HappyAbsSyn
happy_x_1 of { (HappyWrap65 [Decl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_3 of { (HappyWrap49 Decl PName
happy_var_3) -> 
	[Decl PName] -> HappyAbsSyn
happyIn65
		 (Decl PName
happy_var_3 Decl PName -> [Decl PName] -> [Decl PName]
forall a. a -> [a] -> [a]
: [Decl PName]
happy_var_1
	)}}

happyReduce_149 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_149 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_149 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
50# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_149
happyReduction_149 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_149 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap65
happyOut65 HappyAbsSyn
happy_x_1 of { (HappyWrap65 [Decl PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
happy_x_3 of { (HappyWrap49 Decl PName
happy_var_3) -> 
	[Decl PName] -> HappyAbsSyn
happyIn65
		 (Decl PName
happy_var_3 Decl PName -> [Decl PName] -> [Decl PName]
forall a. a -> [a] -> [a]
: [Decl PName]
happy_var_1
	)}}

happyReduce_150 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_150 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_150 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
51# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_150
happyReduction_150 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_150 p
happy_x_3
	HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap65
happyOut65 HappyAbsSyn
happy_x_2 of { (HappyWrap65 [Decl PName]
happy_var_2) -> 
	[Decl PName] -> HappyAbsSyn
happyIn66
		 ([Decl PName]
happy_var_2
	)}

happyReduce_151 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_151 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_151 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
51# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> p -> HappyAbsSyn
happyReduction_151
happyReduction_151 :: p -> p -> HappyAbsSyn
happyReduction_151 p
happy_x_2
	p
happy_x_1
	 =  [Decl PName] -> HappyAbsSyn
happyIn66
		 ([]
	)

happyReduce_152 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_152 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_152 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
52# HappyAbsSyn -> HappyAbsSyn
happyReduction_152
happyReduction_152 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_152 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	ReplInput PName -> HappyAbsSyn
happyIn67
		 (Expr PName -> ReplInput PName
forall name. Expr name -> ReplInput name
ExprInput Expr PName
happy_var_1
	)}

happyReduce_153 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_153 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_153 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
52# HappyAbsSyn -> HappyAbsSyn
happyReduction_153
happyReduction_153 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_153 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap50
happyOut50 HappyAbsSyn
happy_x_1 of { (HappyWrap50 [Decl PName]
happy_var_1) -> 
	ReplInput PName -> HappyAbsSyn
happyIn67
		 ([Decl PName] -> ReplInput PName
forall name. [Decl name] -> ReplInput name
LetInput [Decl PName]
happy_var_1
	)}

happyReduce_154 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_154 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_154 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
52# HappyAbsSyn
happyReduction_154
happyReduction_154 :: HappyAbsSyn
happyReduction_154  =  ReplInput PName -> HappyAbsSyn
happyIn67
		 (ReplInput PName
forall name. ReplInput name
EmptyInput
	)

happyReduce_155 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_155 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_155 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
53# HappyAbsSyn -> HappyAbsSyn
happyReduction_155
happyReduction_155 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_155 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_1 of { (HappyWrap69 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn68
		 (Located PName
happy_var_1
	)}

happyReduce_156 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_156 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_156 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
53# HappyAbsSyn -> HappyAbsSyn
happyReduction_156
happyReduction_156 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_156 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Op  Other{}   )  Text
_))) -> 
	Located PName -> HappyAbsSyn
happyIn68
		 (let Token (Op (Other [Text]
ns Text
i)) Text
_ = Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1
                                       in ModName -> Ident -> PName
mkQual ([Text] -> ModName
mkModName [Text]
ns) (Text -> Ident
mkInfix Text
i) PName -> Located Token -> Located PName
forall a b. a -> Located b -> Located a
forall (f :: * -> *) a b. Functor f => a -> f b -> f a
A.<$ Located Token
happy_var_1
	)}

happyReduce_157 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_157 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_157 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
54# HappyAbsSyn -> HappyAbsSyn
happyReduction_157
happyReduction_157 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_157 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap70
happyOut70 HappyAbsSyn
happy_x_1 of { (HappyWrap70 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn69
		 (Located PName
happy_var_1
	)}

happyReduce_158 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_158 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_158 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
54# HappyAbsSyn -> HappyAbsSyn
happyReduction_158
happyReduction_158 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_158 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Hash) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn69
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"#"
	)}

happyReduce_159 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_159 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_159 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
54# HappyAbsSyn -> HappyAbsSyn
happyReduction_159
happyReduction_159 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_159 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
At) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn69
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"@"
	)}

happyReduce_160 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_160 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_160 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_160
happyReduction_160 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_160 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap71
happyOut71 HappyAbsSyn
happy_x_1 of { (HappyWrap71 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Located PName
happy_var_1
	)}

happyReduce_161 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_161 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_161 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_161
happyReduction_161 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_161 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Mul)   Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"*"
	)}

happyReduce_162 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_162 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_162 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_162
happyReduction_162 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_162 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Plus)  Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"+"
	)}

happyReduce_163 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_163 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_163 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_163
happyReduction_163 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_163 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Minus) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"-"
	)}

happyReduce_164 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_164 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_164 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_164
happyReduction_164 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_164 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Complement) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"~"
	)}

happyReduce_165 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_165 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_165 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_165
happyReduction_165 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_165 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Exp)   Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"^^"
	)}

happyReduce_166 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_166 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_166 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_166
happyReduction_166 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_166 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Lt      ) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
"<"
	)}

happyReduce_167 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_167 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_167 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
55# HappyAbsSyn -> HappyAbsSyn
happyReduction_167
happyReduction_167 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_167 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Gt      ) Text
_)) -> 
	Located PName -> HappyAbsSyn
happyIn70
		 (Range -> PName -> Located PName
forall a. Range -> a -> Located a
Located Range
happy_var_1 (PName -> Located PName) -> PName -> Located PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkInfix Text
">"
	)}

happyReduce_168 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_168 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_168 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
56# HappyAbsSyn -> HappyAbsSyn
happyReduction_168
happyReduction_168 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_168 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Op (Other [] Text
_)) Text
_))) -> 
	Located PName -> HappyAbsSyn
happyIn71
		 (let Token (Op (Other [] Text
str)) Text
_ = Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1
                                       in Ident -> PName
mkUnqual (Text -> Ident
mkInfix Text
str) PName -> Located Token -> Located PName
forall a b. a -> Located b -> Located a
forall (f :: * -> *) a b. Functor f => a -> f b -> f a
A.<$ Located Token
happy_var_1
	)}

happyReduce_169 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_169 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_169 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
57# HappyAbsSyn -> HappyAbsSyn
happyReduction_169
happyReduction_169 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_169 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_1 of { (HappyWrap69 Located PName
happy_var_1) -> 
	[Located PName] -> HappyAbsSyn
happyIn72
		 ([Located PName
happy_var_1]
	)}

happyReduce_170 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_170 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_170 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
57# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_170
happyReduction_170 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_170 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap72
happyOut72 HappyAbsSyn
happy_x_1 of { (HappyWrap72 [Located PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_3 of { (HappyWrap69 Located PName
happy_var_3) -> 
	[Located PName] -> HappyAbsSyn
happyIn72
		 (Located PName
happy_var_3 Located PName -> [Located PName] -> [Located PName]
forall a. a -> [a] -> [a]
: [Located PName]
happy_var_1
	)}}

happyReduce_171 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_171 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_171 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
58# HappyAbsSyn -> HappyAbsSyn
happyReduction_171
happyReduction_171 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_171 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap74
happyOut74 HappyAbsSyn
happy_x_1 of { (HappyWrap74 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn73
		 (Expr PName
happy_var_1
	)}

happyReduce_172 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_172 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_172 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
58# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_172
happyReduction_172 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_172 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap75
happyOut75 HappyAbsSyn
happy_x_3 of { (HappyWrap75 Located [Decl PName]
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn73
		 ((Expr PName, Located [Decl PName]) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Expr PName
happy_var_1,Located [Decl PName]
happy_var_3) (Expr PName -> [Decl PName] -> Expr PName
forall n. Expr n -> [Decl n] -> Expr n
EWhere Expr PName
happy_var_1 (Located [Decl PName] -> [Decl PName]
forall a. Located a -> a
thing Located [Decl PName]
happy_var_3))
	)}}

happyReduce_173 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_173 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_173 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
59# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_173
happyReduction_173 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_173 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap77
happyOut77 HappyAbsSyn
happy_x_1 of { (HappyWrap77 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_2 of { (HappyWrap68 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap85
happyOut85 HappyAbsSyn
happy_x_3 of { (HappyWrap85 Expr PName
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn74
		 (Expr PName -> Located PName -> Expr PName -> Expr PName
binOp Expr PName
happy_var_1 Located PName
happy_var_2 Expr PName
happy_var_3
	)}}}

happyReduce_174 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_174 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_174 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
59# HappyAbsSyn -> HappyAbsSyn
happyReduction_174
happyReduction_174 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_174 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap85
happyOut85 HappyAbsSyn
happy_x_1 of { (HappyWrap85 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn74
		 (Expr PName
happy_var_1
	)}

happyReduce_175 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_175 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_175 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
59# HappyAbsSyn -> HappyAbsSyn
happyReduction_175
happyReduction_175 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_175 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap76
happyOut76 HappyAbsSyn
happy_x_1 of { (HappyWrap76 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn74
		 (Expr PName
happy_var_1
	)}

happyReduce_176 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_176 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_176 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
60# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_176
happyReduction_176 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_176 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Located [Decl PName] -> HappyAbsSyn
happyIn75
		 (Range -> [Decl PName] -> Located [Decl PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) []
	)}}

happyReduce_177 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_177 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_177 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
60# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_177
happyReduction_177 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_177 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap64
happyOut64 HappyAbsSyn
happy_x_2 of { (HappyWrap64 [Decl PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Located [Decl PName] -> HappyAbsSyn
happyIn75
		 (Range -> [Decl PName] -> Located [Decl PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) ([Decl PName] -> [Decl PName]
forall a. [a] -> [a]
reverse [Decl PName]
happy_var_2)
	)}}}

happyReduce_178 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_178 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_178 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
60# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_178
happyReduction_178 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_178 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Virt TokenV
VCurlyL)  Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Virt TokenV
VCurlyR)  Text
_)) -> 
	Located [Decl PName] -> HappyAbsSyn
happyIn75
		 (Range -> [Decl PName] -> Located [Decl PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) []
	)}}

happyReduce_179 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_179 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_179 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
60# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_179
happyReduction_179 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_179 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Virt TokenV
VCurlyL)  Text
_)) -> 
	case HappyAbsSyn -> HappyWrap65
happyOut65 HappyAbsSyn
happy_x_2 of { (HappyWrap65 [Decl PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Virt TokenV
VCurlyR)  Text
_)) -> 
	Located [Decl PName] -> HappyAbsSyn
happyIn75
		 (let l2 :: Range
l2 = Range -> Maybe Range -> Range
forall a. a -> Maybe a -> a
fromMaybe Range
happy_var_3 ([Decl PName] -> Maybe Range
forall t. HasLoc t => t -> Maybe Range
getLoc [Decl PName]
happy_var_2)
                                    in Range -> [Decl PName] -> Located [Decl PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
l2) ([Decl PName] -> [Decl PName]
forall a. [a] -> [a]
reverse [Decl PName]
happy_var_2)
	)}}}

happyReduce_180 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_180 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_180 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
61# 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 -> HappyWrap77
happyOut77 HappyAbsSyn
happy_x_1 of { (HappyWrap77 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn76
		 ((Expr PName, Type PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Expr PName
happy_var_1,Type PName
happy_var_3) (Expr PName -> Type PName -> Expr PName
forall n. Expr n -> Type n -> Expr n
ETyped Expr PName
happy_var_1 Type PName
happy_var_3)
	)}}

happyReduce_181 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_181 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_181 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
62# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_181
happyReduction_181 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_181 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap77
happyOut77 HappyAbsSyn
happy_x_1 of { (HappyWrap77 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_2 of { (HappyWrap68 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap84
happyOut84 HappyAbsSyn
happy_x_3 of { (HappyWrap84 Expr PName
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn77
		 (Expr PName -> Located PName -> Expr PName -> Expr PName
binOp Expr PName
happy_var_1 Located PName
happy_var_2 Expr PName
happy_var_3
	)}}}

happyReduce_182 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_182 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_182 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
62# HappyAbsSyn -> HappyAbsSyn
happyReduction_182
happyReduction_182 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_182 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap84
happyOut84 HappyAbsSyn
happy_x_1 of { (HappyWrap84 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn77
		 (Expr PName
happy_var_1
	)}

happyReduce_183 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_183 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_183 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
63# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_183
happyReduction_183 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_183 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_if     ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap79
happyOut79 HappyAbsSyn
happy_x_2 of { (HappyWrap79 [(Expr PName, Expr PName)]
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap74
happyOut74 HappyAbsSyn
happy_x_4 of { (HappyWrap74 Expr PName
happy_var_4) -> 
	Expr PName -> HappyAbsSyn
happyIn78
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_4) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ [(Expr PName, Expr PName)] -> Expr PName -> Expr PName
mkIf ([(Expr PName, Expr PName)] -> [(Expr PName, Expr PName)]
forall a. [a] -> [a]
reverse [(Expr PName, Expr PName)]
happy_var_2) Expr PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_184 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_184 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_184 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
63# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_184
happyReduction_184 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_184 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Lambda  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap115
happyOut115 HappyAbsSyn
happy_x_2 of { (HappyWrap115 [Pattern PName]
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap74
happyOut74 HappyAbsSyn
happy_x_4 of { (HappyWrap74 Expr PName
happy_var_4) -> 
	Expr PName -> HappyAbsSyn
happyIn78
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_4) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ FunDesc PName -> [Pattern PName] -> Expr PName -> Expr PName
forall n. FunDesc n -> [Pattern n] -> Expr n -> Expr n
EFun FunDesc PName
forall n. FunDesc n
emptyFunDesc ([Pattern PName] -> [Pattern PName]
forall a. [a] -> [a]
reverse [Pattern PName]
happy_var_2) Expr PName
happy_var_4
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_185 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_185 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_185 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
63# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_185
happyReduction_185 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_185 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_case) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_2 of { (HappyWrap73 Expr PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap81
happyOut81 HappyAbsSyn
happy_x_5 of { (HappyWrap81 [CaseAlt PName]
happy_var_5) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_6 of { (Located Range
happy_var_6 (Token (Virt TokenV
VCurlyR)  Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn78
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_6) (Expr PName -> [CaseAlt PName] -> Expr PName
forall n. Expr n -> [CaseAlt n] -> Expr n
ECase Expr PName
happy_var_2 ([CaseAlt PName] -> [CaseAlt PName]
forall a. [a] -> [a]
reverse [CaseAlt PName]
happy_var_5))
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_186 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_186 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_186 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
6# Int#
63# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_186
happyReduction_186 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_186 (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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_case) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_2 of { (HappyWrap73 Expr PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap82
happyOut82 HappyAbsSyn
happy_x_5 of { (HappyWrap82 [CaseAlt PName]
happy_var_5) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_6 of { (Located Range
happy_var_6 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn78
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_6) (Expr PName -> [CaseAlt PName] -> Expr PName
forall n. Expr n -> [CaseAlt n] -> Expr n
ECase Expr PName
happy_var_2 ([CaseAlt PName] -> [CaseAlt PName]
forall a. [a] -> [a]
reverse [CaseAlt PName]
happy_var_5))
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_187 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_187 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_187 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
64# HappyAbsSyn -> HappyAbsSyn
happyReduction_187
happyReduction_187 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_187 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap80
happyOut80 HappyAbsSyn
happy_x_1 of { (HappyWrap80 (Expr PName, Expr PName)
happy_var_1) -> 
	[(Expr PName, Expr PName)] -> HappyAbsSyn
happyIn79
		 ([(Expr PName, Expr PName)
happy_var_1]
	)}

happyReduce_188 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_188 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_188 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
64# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_188
happyReduction_188 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_188 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap79
happyOut79 HappyAbsSyn
happy_x_1 of { (HappyWrap79 [(Expr PName, Expr PName)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap80
happyOut80 HappyAbsSyn
happy_x_3 of { (HappyWrap80 (Expr PName, Expr PName)
happy_var_3) -> 
	[(Expr PName, Expr PName)] -> HappyAbsSyn
happyIn79
		 ((Expr PName, Expr PName)
happy_var_3 (Expr PName, Expr PName)
-> [(Expr PName, Expr PName)] -> [(Expr PName, Expr PName)]
forall a. a -> [a] -> [a]
: [(Expr PName, Expr PName)]
happy_var_1
	)}}

happyReduce_189 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_189 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_189 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
65# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_189
happyReduction_189 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_189 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	(Expr PName, Expr PName) -> HappyAbsSyn
happyIn80
		 ((Expr PName
happy_var_1, Expr PName
happy_var_3)
	)}}

happyReduce_190 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_190 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_190 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
66# HappyAbsSyn -> HappyAbsSyn
happyReduction_190
happyReduction_190 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_190 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap83
happyOut83 HappyAbsSyn
happy_x_1 of { (HappyWrap83 CaseAlt PName
happy_var_1) -> 
	[CaseAlt PName] -> HappyAbsSyn
happyIn81
		 ([CaseAlt PName
happy_var_1]
	)}

happyReduce_191 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_191 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_191 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
66# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_191
happyReduction_191 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_191 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap81
happyOut81 HappyAbsSyn
happy_x_1 of { (HappyWrap81 [CaseAlt PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap83
happyOut83 HappyAbsSyn
happy_x_3 of { (HappyWrap83 CaseAlt PName
happy_var_3) -> 
	[CaseAlt PName] -> HappyAbsSyn
happyIn81
		 (CaseAlt PName
happy_var_3 CaseAlt PName -> [CaseAlt PName] -> [CaseAlt PName]
forall a. a -> [a] -> [a]
: [CaseAlt PName]
happy_var_1
	)}}

happyReduce_192 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_192 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_192 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
67# HappyAbsSyn -> HappyAbsSyn
happyReduction_192
happyReduction_192 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_192 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap83
happyOut83 HappyAbsSyn
happy_x_1 of { (HappyWrap83 CaseAlt PName
happy_var_1) -> 
	[CaseAlt PName] -> HappyAbsSyn
happyIn82
		 ([CaseAlt PName
happy_var_1]
	)}

happyReduce_193 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_193 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_193 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
67# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_193
happyReduction_193 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_193 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap82
happyOut82 HappyAbsSyn
happy_x_1 of { (HappyWrap82 [CaseAlt PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap83
happyOut83 HappyAbsSyn
happy_x_3 of { (HappyWrap83 CaseAlt PName
happy_var_3) -> 
	[CaseAlt PName] -> HappyAbsSyn
happyIn82
		 (CaseAlt PName
happy_var_3 CaseAlt PName -> [CaseAlt PName] -> [CaseAlt PName]
forall a. a -> [a] -> [a]
: [CaseAlt PName]
happy_var_1
	)}}

happyReduce_194 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_194 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_194 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
68# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_194
happyReduction_194 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_194 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
happy_x_1 of { (HappyWrap106 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	CaseAlt PName -> HappyAbsSyn
happyIn83
		 (Pattern PName -> Expr PName -> CaseAlt PName
forall n. Pattern n -> Expr n -> CaseAlt n
CaseAlt Pattern PName
happy_var_1 Expr PName
happy_var_3
	)}}

happyReduce_195 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_195 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_195 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
69# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_195
happyReduction_195 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_195 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Minus) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
happy_x_2 of { (HappyWrap86 Expr PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn84
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_2) (PrefixOp -> Expr PName -> Expr PName
forall n. PrefixOp -> Expr n -> Expr n
EPrefix PrefixOp
PrefixNeg Expr PName
happy_var_2)
	)}}

happyReduce_196 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_196 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_196 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
69# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_196
happyReduction_196 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_196 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Complement) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
happy_x_2 of { (HappyWrap86 Expr PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn84
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_2) (PrefixOp -> Expr PName -> Expr PName
forall n. PrefixOp -> Expr n -> Expr n
EPrefix PrefixOp
PrefixComplement Expr PName
happy_var_2)
	)}}

happyReduce_197 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_197 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_197 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
69# HappyAbsSyn -> HappyAbsSyn
happyReduction_197
happyReduction_197 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_197 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
happy_x_1 of { (HappyWrap86 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn84
		 (Expr PName
happy_var_1
	)}

happyReduce_198 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_198 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_198 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
70# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_198
happyReduction_198 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_198 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Minus) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap87
happyOut87 HappyAbsSyn
happy_x_2 of { (HappyWrap87 Expr PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn85
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_2) (PrefixOp -> Expr PName -> Expr PName
forall n. PrefixOp -> Expr n -> Expr n
EPrefix PrefixOp
PrefixNeg Expr PName
happy_var_2)
	)}}

happyReduce_199 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_199 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_199 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
70# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_199
happyReduction_199 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_199 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Complement) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap87
happyOut87 HappyAbsSyn
happy_x_2 of { (HappyWrap87 Expr PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn85
		 ((Range, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Expr PName
happy_var_2) (PrefixOp -> Expr PName -> Expr PName
forall n. PrefixOp -> Expr n -> Expr n
EPrefix PrefixOp
PrefixComplement Expr PName
happy_var_2)
	)}}

happyReduce_200 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_200 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_200 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
70# HappyAbsSyn -> HappyAbsSyn
happyReduction_200
happyReduction_200 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_200 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap87
happyOut87 HappyAbsSyn
happy_x_1 of { (HappyWrap87 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn85
		 (Expr PName
happy_var_1
	)}

happyReduce_201 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_201 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_201 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
71# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_201
happyReduction_201 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_201 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap88
happyOut88 HappyAbsSyn
happy_x_1 of { (HappyWrap88 NonEmpty (Expr PName)
happy_var_1) -> 
	( NonEmpty (Expr PName) -> ParseM (Expr PName)
mkEApp NonEmpty (Expr PName)
happy_var_1)})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn86 Expr PName
r))

happyReduce_202 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_202 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_202 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
72# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_202
happyReduction_202 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_202 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
happy_x_1 of { (HappyWrap86 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap78
happyOut78 HappyAbsSyn
happy_x_2 of { (HappyWrap78 Expr PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn87
		 ((Expr PName, Expr PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Expr PName
happy_var_1,Expr PName
happy_var_2) (Expr PName -> Expr PName -> Expr PName
forall n. Expr n -> Expr n -> Expr n
EApp Expr PName
happy_var_1 Expr PName
happy_var_2)
	)}}

happyReduce_203 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_203 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_203 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
72# HappyAbsSyn -> HappyAbsSyn
happyReduction_203
happyReduction_203 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_203 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap78
happyOut78 HappyAbsSyn
happy_x_1 of { (HappyWrap78 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn87
		 (Expr PName
happy_var_1
	)}

happyReduce_204 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_204 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_204 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
72# HappyAbsSyn -> HappyAbsSyn
happyReduction_204
happyReduction_204 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_204 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap86
happyOut86 HappyAbsSyn
happy_x_1 of { (HappyWrap86 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn87
		 (Expr PName
happy_var_1
	)}

happyReduce_205 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_205 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_205 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
73# HappyAbsSyn -> HappyAbsSyn
happyReduction_205
happyReduction_205 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_205 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap89
happyOut89 HappyAbsSyn
happy_x_1 of { (HappyWrap89 Expr PName
happy_var_1) -> 
	NonEmpty (Expr PName) -> HappyAbsSyn
happyIn88
		 (Expr PName
happy_var_1 Expr PName -> [Expr PName] -> NonEmpty (Expr PName)
forall a. a -> [a] -> NonEmpty a
:| []
	)}

happyReduce_206 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_206 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_206 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
73# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_206
happyReduction_206 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_206 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap88
happyOut88 HappyAbsSyn
happy_x_1 of { (HappyWrap88 NonEmpty (Expr PName)
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap89
happyOut89 HappyAbsSyn
happy_x_2 of { (HappyWrap89 Expr PName
happy_var_2) -> 
	NonEmpty (Expr PName) -> HappyAbsSyn
happyIn88
		 (Expr PName -> NonEmpty (Expr PName) -> NonEmpty (Expr PName)
forall a. a -> NonEmpty a -> NonEmpty a
cons Expr PName
happy_var_2 NonEmpty (Expr PName)
happy_var_1
	)}}

happyReduce_207 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_207 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_207 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
74# HappyAbsSyn -> HappyAbsSyn
happyReduction_207
happyReduction_207 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_207 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap90
happyOut90 HappyAbsSyn
happy_x_1 of { (HappyWrap90 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn89
		 (Expr PName
happy_var_1
	)}

happyReduce_208 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_208 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_208 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
74# HappyAbsSyn -> HappyAbsSyn
happyReduction_208
happyReduction_208 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_208 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap91
happyOut91 HappyAbsSyn
happy_x_1 of { (HappyWrap91 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn89
		 (Expr PName
happy_var_1
	)}

happyReduce_209 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_209 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_209 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_209
happyReduction_209 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_209 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Located PName -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located PName
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ PName -> Expr PName
forall n. n -> Expr n
EVar (Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_1)
	)}

happyReduce_210 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_210 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_210 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_210
happyReduction_210 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_210 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Located Token -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Token -> Expr PName
numLit (Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1)
	)}

happyReduce_211 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_211 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_211 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_211
happyReduction_211 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_211 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Frac  {}) Text
_))) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Located Token -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Token -> Expr PName
fracLit (Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1)
	)}

happyReduce_212 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_212 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_212 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_212
happyReduction_212 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_212 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (StrLit {}) Text
_))) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Located Token -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Literal -> Expr PName
forall n. Literal -> Expr n
ELit (Literal -> Expr PName) -> Literal -> Expr PName
forall a b. (a -> b) -> a -> b
$ String -> Literal
ECString (String -> Literal) -> String -> Literal
forall a b. (a -> b) -> a -> b
$ Located Token -> String
getStr Located Token
happy_var_1
	)}

happyReduce_213 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_213 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_213 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_213
happyReduction_213 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_213 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (ChrLit {}) Text
_))) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Located Token -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Literal -> Expr PName
forall n. Literal -> Expr n
ELit (Literal -> Expr PName) -> Literal -> Expr PName
forall a b. (a -> b) -> a -> b
$ Char -> Literal
ECChar (Char -> Literal) -> Char -> Literal
forall a b. (a -> b) -> a -> b
$ Located Token -> Char
getChr Located Token
happy_var_1
	)}

happyReduce_214 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_214 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_214 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
75# HappyAbsSyn -> HappyAbsSyn
happyReduction_214
happyReduction_214 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_214 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Underscore ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 (Range -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Range
happy_var_1 (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ PName -> Expr PName
forall n. n -> Expr n
EVar (PName -> Expr PName) -> PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Ident -> PName
mkUnqual (Ident -> PName) -> Ident -> PName
forall a b. (a -> b) -> a -> b
$ Text -> Ident
mkIdent Text
"_"
	)}

happyReduce_215 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_215 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_215 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_215
happyReduction_215 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_215 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_2 of { (HappyWrap73 Expr PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Expr PName -> Expr PName
forall n. Expr n -> Expr n
EParens Expr PName
happy_var_2
	)}}}

happyReduce_216 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_216 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_216 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_216
happyReduction_216 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_216 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap95
happyOut95 HappyAbsSyn
happy_x_2 of { (HappyWrap95 [Expr PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ [Expr PName] -> Expr PName
forall n. [Expr n] -> Expr n
ETuple ([Expr PName] -> [Expr PName]
forall a. [a] -> [a]
reverse [Expr PName]
happy_var_2)
	)}}}

happyReduce_217 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_217 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_217 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_217
happyReduction_217 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_217 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ [Expr PName] -> Expr PName
forall n. [Expr n] -> Expr n
ETuple []
	)}}

happyReduce_218 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_218 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_218 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
75# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_218
happyReduction_218 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_218 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Expr PName) -> Expr PName)
-> [Named (Expr PName)]
-> ParseM (Expr PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) RecordMap Ident (Range, Expr PName) -> Expr PName
forall n. Rec (Expr n) -> Expr n
ERecord [])}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn90 Expr PName
r))

happyReduce_219 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_219 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_219 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
75# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_219
happyReduction_219 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_219 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap96
happyOut96 HappyAbsSyn
happy_x_2 of { (HappyWrap96 Either (Expr PName) [Named (Expr PName)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( case Either (Expr PName) [Named (Expr PName)]
happy_var_2 of {
                                       Left Expr PName
upd -> Expr PName -> ParseM (Expr PName)
forall a. a -> ParseM a
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Expr PName -> ParseM (Expr PName))
-> Expr PName -> ParseM (Expr PName)
forall a b. (a -> b) -> a -> b
$ (Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) Expr PName
upd;
                                       Right [Named (Expr PName)]
fs -> Range
-> (RecordMap Ident (Range, Expr PName) -> Expr PName)
-> [Named (Expr PName)]
-> ParseM (Expr PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) RecordMap Ident (Range, Expr PName) -> Expr PName
forall n. Rec (Expr n) -> Expr n
ERecord [Named (Expr PName)]
fs; })}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn90 Expr PName
r))

happyReduce_220 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_220 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_220 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_220
happyReduction_220 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_220 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ [Expr PName] -> Expr PName
forall n. [Expr n] -> Expr n
EList []
	)}}

happyReduce_221 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_221 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_221 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_221
happyReduction_221 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_221 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap101
happyOut101 HappyAbsSyn
happy_x_2 of { (HappyWrap101 Expr PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) Expr PName
happy_var_2
	)}}}

happyReduce_222 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_222 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_222 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_222
happyReduction_222 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_222 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BackTick) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap143
happyOut143 HappyAbsSyn
happy_x_2 of { (HappyWrap143 Type PName
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Type PName) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Type PName
happy_var_2) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Type PName -> Expr PName
forall n. Type n -> Expr n
ETypeVal Type PName
happy_var_2
	)}}

happyReduce_223 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_223 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_223 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
75# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_223
happyReduction_223 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_223 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_2 of { (HappyWrap68 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Expr PName -> HappyAbsSyn
happyIn90
		 ((Range, Range) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ PName -> Expr PName
forall n. n -> Expr n
EVar (PName -> Expr PName) -> PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_2
	)}}}

happyReduce_224 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_224 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_224 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
75# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_224
happyReduction_224 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_224 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
TriL    ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
TriR    ) Text
_)) -> 
	( Range -> [(Bool, Integer)] -> ParseM (Expr PName)
mkPoly (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) [])}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn90 Expr PName
r))

happyReduce_225 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_225 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_225 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
75# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_225
happyReduction_225 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_225 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
TriL    ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap93
happyOut93 HappyAbsSyn
happy_x_2 of { (HappyWrap93 [(Bool, Integer)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
TriR    ) Text
_)) -> 
	( Range -> [(Bool, Integer)] -> ParseM (Expr PName)
mkPoly (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) [(Bool, Integer)]
happy_var_2)}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn90 Expr PName
r))

happyReduce_226 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_226 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_226 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
76# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_226
happyReduction_226 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_226 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap90
happyOut90 HappyAbsSyn
happy_x_1 of { (HappyWrap90 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap92
happyOut92 HappyAbsSyn
happy_x_2 of { (HappyWrap92 Located Selector
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn91
		 ((Expr PName, Located Selector) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Expr PName
happy_var_1,Located Selector
happy_var_2) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Expr PName -> Selector -> Expr PName
forall n. Expr n -> Selector -> Expr n
ESel Expr PName
happy_var_1 (Located Selector -> Selector
forall a. Located a -> a
thing Located Selector
happy_var_2)
	)}}

happyReduce_227 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_227 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_227 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
76# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_227
happyReduction_227 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_227 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap91
happyOut91 HappyAbsSyn
happy_x_1 of { (HappyWrap91 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap92
happyOut92 HappyAbsSyn
happy_x_2 of { (HappyWrap92 Located Selector
happy_var_2) -> 
	Expr PName -> HappyAbsSyn
happyIn91
		 ((Expr PName, Located Selector) -> Expr PName -> Expr PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Expr PName
happy_var_1,Located Selector
happy_var_2) (Expr PName -> Expr PName) -> Expr PName -> Expr PName
forall a b. (a -> b) -> a -> b
$ Expr PName -> Selector -> Expr PName
forall n. Expr n -> Selector -> Expr n
ESel Expr PName
happy_var_1 (Located Selector -> Selector
forall a. Located a -> a
thing Located Selector
happy_var_2)
	)}}

happyReduce_228 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_228 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_228 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
77# HappyAbsSyn -> HappyAbsSyn
happyReduction_228
happyReduction_228 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_228 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token  (Selector SelectorType
_) Text
_))) -> 
	Located Selector -> HappyAbsSyn
happyIn92
		 (Token -> Selector
mkSelector (Token -> Selector) -> Located Token -> Located Selector
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` Located Token
happy_var_1
	)}

happyReduce_229 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_229 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_229 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
78# HappyAbsSyn -> HappyAbsSyn
happyReduction_229
happyReduction_229 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_229 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap94
happyOut94 HappyAbsSyn
happy_x_1 of { (HappyWrap94 (Bool, Integer)
happy_var_1) -> 
	[(Bool, Integer)] -> HappyAbsSyn
happyIn93
		 ([(Bool, Integer)
happy_var_1]
	)}

happyReduce_230 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_230 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_230 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
78# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_230
happyReduction_230 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_230 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap93
happyOut93 HappyAbsSyn
happy_x_1 of { (HappyWrap93 [(Bool, Integer)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap94
happyOut94 HappyAbsSyn
happy_x_3 of { (HappyWrap94 (Bool, Integer)
happy_var_3) -> 
	[(Bool, Integer)] -> HappyAbsSyn
happyIn93
		 ((Bool, Integer)
happy_var_3 (Bool, Integer) -> [(Bool, Integer)] -> [(Bool, Integer)]
forall a. a -> [a] -> [a]
: [(Bool, Integer)]
happy_var_1
	)}}

happyReduce_231 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_231 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_231 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
79# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_231
happyReduction_231 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_231 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Bool, Integer)
-> ((Bool, Integer) -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	( Range -> Integer -> Integer -> ParseM (Bool, Integer)
polyTerm (Located Token -> Range
forall a. Located a -> Range
srcRange Located Token
happy_var_1) (Located Token -> Integer
getNum Located Token
happy_var_1) Integer
0)})
	) (\(Bool, Integer)
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ((Bool, Integer) -> HappyAbsSyn
happyIn94 (Bool, Integer)
r))

happyReduce_232 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_232 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_232 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
79# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_232
happyReduction_232 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_232 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Bool, Integer)
-> ((Bool, Integer) -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_x)       Text
_)) -> 
	( Range -> Integer -> Integer -> ParseM (Bool, Integer)
polyTerm Range
happy_var_1 Integer
1 Integer
1)})
	) (\(Bool, Integer)
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ((Bool, Integer) -> HappyAbsSyn
happyIn94 (Bool, Integer)
r))

happyReduce_233 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_233 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_233 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
79# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_233
happyReduction_233 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_233 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Bool, Integer)
-> ((Bool, Integer) -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_x)       Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (happy_var_3 :: Located Token
happy_var_3@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	( Range -> Integer -> Integer -> ParseM (Bool, Integer)
polyTerm (Range -> Range -> Range
rComb Range
happy_var_1 (Located Token -> Range
forall a. Located a -> Range
srcRange Located Token
happy_var_3))
                                                            Integer
1 (Located Token -> Integer
getNum Located Token
happy_var_3))}})
	) (\(Bool, Integer)
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ((Bool, Integer) -> HappyAbsSyn
happyIn94 (Bool, Integer)
r))

happyReduce_234 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_234 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_234 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
80# 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 -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	[Expr PName] -> HappyAbsSyn
happyIn95
		 ([ Expr PName
happy_var_3, Expr PName
happy_var_1]
	)}}

happyReduce_235 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_235 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_235 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
80# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_235
happyReduction_235 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_235 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap95
happyOut95 HappyAbsSyn
happy_x_1 of { (HappyWrap95 [Expr PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	[Expr PName] -> HappyAbsSyn
happyIn95
		 (Expr PName
happy_var_3 Expr PName -> [Expr PName] -> [Expr PName]
forall a. a -> [a] -> [a]
: [Expr PName]
happy_var_1
	)}}

happyReduce_236 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_236 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_236 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
81# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_236
happyReduction_236 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_236 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap89
happyOut89 HappyAbsSyn
happy_x_1 of { (HappyWrap89 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap97
happyOut97 HappyAbsSyn
happy_x_3 of { (HappyWrap97 [UpdField PName]
happy_var_3) -> 
	Either (Expr PName) [Named (Expr PName)] -> HappyAbsSyn
happyIn96
		 (Expr PName -> Either (Expr PName) [Named (Expr PName)]
forall a b. a -> Either a b
Left (Maybe (Expr PName) -> [UpdField PName] -> Expr PName
forall n. Maybe (Expr n) -> [UpdField n] -> Expr n
EUpd (Expr PName -> Maybe (Expr PName)
forall a. a -> Maybe a
Just Expr PName
happy_var_1) ([UpdField PName] -> [UpdField PName]
forall a. [a] -> [a]
reverse [UpdField PName]
happy_var_3))
	)}}

happyReduce_237 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_237 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_237 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
81# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. HappyAbsSyn -> p -> p -> HappyAbsSyn
happyReduction_237
happyReduction_237 :: HappyAbsSyn -> p -> p -> HappyAbsSyn
happyReduction_237 HappyAbsSyn
happy_x_3
	p
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap97
happyOut97 HappyAbsSyn
happy_x_3 of { (HappyWrap97 [UpdField PName]
happy_var_3) -> 
	Either (Expr PName) [Named (Expr PName)] -> HappyAbsSyn
happyIn96
		 (Expr PName -> Either (Expr PName) [Named (Expr PName)]
forall a b. a -> Either a b
Left (Maybe (Expr PName) -> [UpdField PName] -> Expr PName
forall n. Maybe (Expr n) -> [UpdField n] -> Expr n
EUpd Maybe (Expr PName)
forall a. Maybe a
Nothing   ([UpdField PName] -> [UpdField PName]
forall a. [a] -> [a]
reverse [UpdField PName]
happy_var_3))
	)}

happyReduce_238 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_238 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_238 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
81# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_238
happyReduction_238 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_238 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Either (Expr PName) [Named (Expr PName)])
-> (Either (Expr PName) [Named (Expr PName)] -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap97
happyOut97 HappyAbsSyn
happy_x_1 of { (HappyWrap97 [UpdField PName]
happy_var_1) -> 
	( [Named (Expr PName)] -> Either (Expr PName) [Named (Expr PName)]
forall a b. b -> Either a b
Right ([Named (Expr PName)] -> Either (Expr PName) [Named (Expr PName)])
-> ParseM [Named (Expr PName)]
-> ParseM (Either (Expr PName) [Named (Expr PName)])
forall a b. (a -> b) -> ParseM a -> ParseM b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
`fmap` (UpdField PName -> ParseM (Named (Expr PName)))
-> [UpdField PName] -> ParseM [Named (Expr PName)]
forall (t :: * -> *) (m :: * -> *) a b.
(Traversable t, Monad m) =>
(a -> m b) -> t a -> m (t b)
forall (m :: * -> *) a b. Monad m => (a -> m b) -> [a] -> m [b]
mapM UpdField PName -> ParseM (Named (Expr PName))
ufToNamed [UpdField PName]
happy_var_1)})
	) (\Either (Expr PName) [Named (Expr PName)]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Either (Expr PName) [Named (Expr PName)] -> HappyAbsSyn
happyIn96 Either (Expr PName) [Named (Expr PName)]
r))

happyReduce_239 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_239 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_239 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
82# HappyAbsSyn -> HappyAbsSyn
happyReduction_239
happyReduction_239 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_239 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap98
happyOut98 HappyAbsSyn
happy_x_1 of { (HappyWrap98 UpdField PName
happy_var_1) -> 
	[UpdField PName] -> HappyAbsSyn
happyIn97
		 ([UpdField PName
happy_var_1]
	)}

happyReduce_240 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_240 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_240 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
82# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_240
happyReduction_240 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_240 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap97
happyOut97 HappyAbsSyn
happy_x_1 of { (HappyWrap97 [UpdField PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap98
happyOut98 HappyAbsSyn
happy_x_3 of { (HappyWrap98 UpdField PName
happy_var_3) -> 
	[UpdField PName] -> HappyAbsSyn
happyIn97
		 (UpdField PName
happy_var_3 UpdField PName -> [UpdField PName] -> [UpdField PName]
forall a. a -> [a] -> [a]
: [UpdField PName]
happy_var_1
	)}}

happyReduce_241 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_241 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_241 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
83# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_241
happyReduction_241 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_241 (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 -> HappyWrap99
happyOut99 HappyAbsSyn
happy_x_1 of { (HappyWrap99 [Located Selector]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap119
happyOut119 HappyAbsSyn
happy_x_2 of { (HappyWrap119 ([Pattern PName], [Pattern PName])
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap100
happyOut100 HappyAbsSyn
happy_x_3 of { (HappyWrap100 UpdHow
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	UpdField PName -> HappyAbsSyn
happyIn98
		 (UpdHow -> [Located Selector] -> Expr PName -> UpdField PName
forall n. UpdHow -> [Located Selector] -> Expr n -> UpdField n
UpdField UpdHow
happy_var_3 [Located Selector]
happy_var_1 (([Pattern PName], [Pattern PName]) -> Expr PName -> Expr PName
mkIndexedExpr ([Pattern PName], [Pattern PName])
happy_var_2 Expr PName
happy_var_4)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}}

happyReduce_242 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_242 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_242 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
84# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_242
happyReduction_242 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_242 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM [Located Selector]
-> ([Located Selector] -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap89
happyOut89 HappyAbsSyn
happy_x_1 of { (HappyWrap89 Expr PName
happy_var_1) -> 
	( Expr PName -> ParseM [Located Selector]
exprToFieldPath Expr PName
happy_var_1)})
	) (\[Located Selector]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn ([Located Selector] -> HappyAbsSyn
happyIn99 [Located Selector]
r))

happyReduce_243 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_243 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_243 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
85# HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn
happyReduction_243
happyReduction_243 :: p -> HappyAbsSyn
happyReduction_243 p
happy_x_1
	 =  UpdHow -> HappyAbsSyn
happyIn100
		 (UpdHow
UpdSet
	)

happyReduce_244 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_244 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_244 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
85# HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn
happyReduction_244
happyReduction_244 :: p -> HappyAbsSyn
happyReduction_244 p
happy_x_1
	 =  UpdHow -> HappyAbsSyn
happyIn100
		 (UpdHow
UpdFun
	)

happyReduce_245 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_245 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_245 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
86# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_245
happyReduction_245 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_245 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap102
happyOut102 HappyAbsSyn
happy_x_3 of { (HappyWrap102 [[Match PName]]
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn101
		 (Expr PName -> [[Match PName]] -> Expr PName
forall n. Expr n -> [[Match n]] -> Expr n
EComp Expr PName
happy_var_1 ([[Match PName]] -> [[Match PName]]
forall a. [a] -> [a]
reverse [[Match PName]]
happy_var_3)
	)}}

happyReduce_246 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_246 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_246 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
86# HappyAbsSyn -> HappyAbsSyn
happyReduction_246
happyReduction_246 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_246 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn101
		 ([Expr PName] -> Expr PName
forall n. [Expr n] -> Expr n
EList [Expr PName
happy_var_1]
	)}

happyReduce_247 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_247 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_247 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
86# HappyAbsSyn -> HappyAbsSyn
happyReduction_247
happyReduction_247 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_247 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap95
happyOut95 HappyAbsSyn
happy_x_1 of { (HappyWrap95 [Expr PName]
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn101
		 ([Expr PName] -> Expr PName
forall n. [Expr n] -> Expr n
EList ([Expr PName] -> [Expr PName]
forall a. [a] -> [a]
reverse [Expr PName]
happy_var_1)
	)}

happyReduce_248 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_248 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_248 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_248
happyReduction_248 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_248 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	( Range
-> Expr PName
-> Maybe (Expr PName)
-> Expr PName
-> ParseM (Expr PName)
eFromTo Range
happy_var_2 Expr PName
happy_var_1 Maybe (Expr PName)
forall a. Maybe a
Nothing   Expr PName
happy_var_3)}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_249 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_249 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_249 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_249
happyReduction_249 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_249 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_4 of { (Located Range
happy_var_4 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	( Range
-> Expr PName
-> Maybe (Expr PName)
-> Expr PName
-> ParseM (Expr PName)
eFromTo Range
happy_var_4 Expr PName
happy_var_1 (Expr PName -> Maybe (Expr PName)
forall a. a -> Maybe a
Just Expr PName
happy_var_3) Expr PName
happy_var_5)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_250 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_250 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_250 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
4# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_250
happyReduction_250 :: HappyStk HappyAbsSyn -> p -> ParseM 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) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	( Range -> Expr PName -> Expr PName -> ParseM (Expr PName)
eFromToLessThan Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_4)}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_251 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_251 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_251 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_251
happyReduction_251 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_251 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDotLt) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	( Range -> Expr PName -> Expr PName -> ParseM (Expr PName)
eFromToLessThan Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_3)}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_252 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_252 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_252 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_252
happyReduction_252 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_252 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_3 Expr PName
happy_var_5 Bool
False)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_253 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_253 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_253 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
6# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_253
happyReduction_253 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_253 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_4 Expr PName
happy_var_6 Bool
True)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_254 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_254 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_254 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
5# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_254
happyReduction_254 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_254 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDotLt) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_5 of { (HappyWrap73 Expr PName
happy_var_5) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_3 Expr PName
happy_var_5 Bool
True)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_255 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_255 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_255 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
6# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_255
happyReduction_255 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_255 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToDownBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_3 Expr PName
happy_var_6 Bool
False)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_256 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_256 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_256 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
7# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_256
happyReduction_256 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_256 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDot  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_4 of { (HappyWrap73 Expr PName
happy_var_4) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_7 of { (HappyWrap73 Expr PName
happy_var_7) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToDownBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_4 Expr PName
happy_var_7 Bool
True)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_257 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_257 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_257 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
6# Int#
86# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_257
happyReduction_257 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_257 (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
	 = ParseM (Expr PName)
-> (Expr PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
DotDotGt) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_6 of { (HappyWrap73 Expr PName
happy_var_6) -> 
	( Range
-> Expr PName
-> Expr PName
-> Expr PName
-> Bool
-> ParseM (Expr PName)
eFromToDownBy Range
happy_var_2 Expr PName
happy_var_1 Expr PName
happy_var_3 Expr PName
happy_var_6 Bool
True)}}}})
	) (\Expr PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Expr PName -> HappyAbsSyn
happyIn101 Expr PName
r))

happyReduce_258 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_258 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_258 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
86# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_258
happyReduction_258 :: p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_258 p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	Expr PName -> HappyAbsSyn
happyIn101
		 (Expr PName -> Maybe (Expr PName) -> Expr PName
forall n. Expr n -> Maybe (Expr n) -> Expr n
EInfFrom Expr PName
happy_var_1 Maybe (Expr PName)
forall a. Maybe a
Nothing
	)}

happyReduce_259 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_259 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_259 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
86# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_259
happyReduction_259 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_259 (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 -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_1 of { (HappyWrap73 Expr PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	Expr PName -> HappyAbsSyn
happyIn101
		 (Expr PName -> Maybe (Expr PName) -> Expr PName
forall n. Expr n -> Maybe (Expr n) -> Expr n
EInfFrom Expr PName
happy_var_1 (Expr PName -> Maybe (Expr PName)
forall a. a -> Maybe a
Just Expr PName
happy_var_3)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}

happyReduce_260 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_260 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_260 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
87# HappyAbsSyn -> HappyAbsSyn
happyReduction_260
happyReduction_260 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_260 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap103
happyOut103 HappyAbsSyn
happy_x_1 of { (HappyWrap103 [Match PName]
happy_var_1) -> 
	[[Match PName]] -> HappyAbsSyn
happyIn102
		 ([ [Match PName] -> [Match PName]
forall a. [a] -> [a]
reverse [Match PName]
happy_var_1 ]
	)}

happyReduce_261 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_261 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_261 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
87# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_261
happyReduction_261 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_261 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap102
happyOut102 HappyAbsSyn
happy_x_1 of { (HappyWrap102 [[Match PName]]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap103
happyOut103 HappyAbsSyn
happy_x_3 of { (HappyWrap103 [Match PName]
happy_var_3) -> 
	[[Match PName]] -> HappyAbsSyn
happyIn102
		 ([Match PName] -> [Match PName]
forall a. [a] -> [a]
reverse [Match PName]
happy_var_3 [Match PName] -> [[Match PName]] -> [[Match PName]]
forall a. a -> [a] -> [a]
: [[Match PName]]
happy_var_1
	)}}

happyReduce_262 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_262 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_262 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
88# HappyAbsSyn -> HappyAbsSyn
happyReduction_262
happyReduction_262 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_262 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap104
happyOut104 HappyAbsSyn
happy_x_1 of { (HappyWrap104 Match PName
happy_var_1) -> 
	[Match PName] -> HappyAbsSyn
happyIn103
		 ([Match PName
happy_var_1]
	)}

happyReduce_263 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_263 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_263 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
88# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_263
happyReduction_263 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_263 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap103
happyOut103 HappyAbsSyn
happy_x_1 of { (HappyWrap103 [Match PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap104
happyOut104 HappyAbsSyn
happy_x_3 of { (HappyWrap104 Match PName
happy_var_3) -> 
	[Match PName] -> HappyAbsSyn
happyIn103
		 (Match PName
happy_var_3 Match PName -> [Match PName] -> [Match PName]
forall a. a -> [a] -> [a]
: [Match PName]
happy_var_1
	)}}

happyReduce_264 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_264 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_264 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
89# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_264
happyReduction_264 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_264 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap112
happyOut112 HappyAbsSyn
happy_x_1 of { (HappyWrap112 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
happy_x_3 of { (HappyWrap73 Expr PName
happy_var_3) -> 
	Match PName -> HappyAbsSyn
happyIn104
		 (Pattern PName -> Expr PName -> Match PName
forall name. Pattern name -> Expr name -> Match name
Match Pattern PName
happy_var_1 Expr PName
happy_var_3
	)}}

happyReduce_265 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_265 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_265 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
90# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_265
happyReduction_265 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_265 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
happy_x_1 of { (HappyWrap106 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Pattern PName -> HappyAbsSyn
happyIn105
		 ((Pattern PName, Type PName) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Type PName
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Type PName -> Pattern PName
forall n. Pattern n -> Type n -> Pattern n
PTyped Pattern PName
happy_var_1 Type PName
happy_var_3
	)}}

happyReduce_266 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_266 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_266 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
90# HappyAbsSyn -> HappyAbsSyn
happyReduction_266
happyReduction_266 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_266 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
happy_x_1 of { (HappyWrap106 Pattern PName
happy_var_1) -> 
	Pattern PName -> HappyAbsSyn
happyIn105
		 (Pattern PName
happy_var_1
	)}

happyReduce_267 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_267 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_267 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
91# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_267
happyReduction_267 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_267 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
happy_x_1 of { (HappyWrap106 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap106
happyOut106 HappyAbsSyn
happy_x_3 of { (HappyWrap106 Pattern PName
happy_var_3) -> 
	Pattern PName -> HappyAbsSyn
happyIn106
		 ((Pattern PName, Pattern PName) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Pattern PName
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Pattern PName -> Pattern PName
forall n. Pattern n -> Pattern n -> Pattern n
PSplit Pattern PName
happy_var_1 Pattern PName
happy_var_3
	)}}

happyReduce_268 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_268 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_268 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
91# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_268
happyReduction_268 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_268 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap107
happyOut107 HappyAbsSyn
happy_x_2 of { (HappyWrap107 [Pattern PName]
happy_var_2) -> 
	Pattern PName -> HappyAbsSyn
happyIn106
		 ((Located PName, [Pattern PName]) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located PName
happy_var_1,[Pattern PName]
happy_var_2) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Located PName -> [Pattern PName] -> Pattern PName
forall n. Located n -> [Pattern n] -> Pattern n
PCon Located PName
happy_var_1 ([Pattern PName] -> [Pattern PName]
forall a. [a] -> [a]
reverse [Pattern PName]
happy_var_2)
	)}}

happyReduce_269 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_269 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_269 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
91# HappyAbsSyn -> HappyAbsSyn
happyReduction_269
happyReduction_269 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_269 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
happy_x_1 of { (HappyWrap108 Pattern PName
happy_var_1) -> 
	Pattern PName -> HappyAbsSyn
happyIn106
		 (Pattern PName
happy_var_1
	)}

happyReduce_270 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_270 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_270 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
92# HappyAbsSyn -> HappyAbsSyn
happyReduction_270
happyReduction_270 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_270 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
happy_x_1 of { (HappyWrap108 Pattern PName
happy_var_1) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn107
		 ([Pattern PName
happy_var_1]
	)}

happyReduce_271 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_271 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_271 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
92# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_271
happyReduction_271 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_271 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap107
happyOut107 HappyAbsSyn
happy_x_1 of { (HappyWrap107 [Pattern PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
happy_x_2 of { (HappyWrap108 Pattern PName
happy_var_2) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn107
		 (Pattern PName
happy_var_2 Pattern PName -> [Pattern PName] -> [Pattern PName]
forall a. a -> [a] -> [a]
: [Pattern PName]
happy_var_1
	)}}

happyReduce_272 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_272 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_272 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
93# HappyAbsSyn -> HappyAbsSyn
happyReduction_272
happyReduction_272 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_272 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 (Located PName -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located PName
happy_var_1 (Located PName -> Pattern PName
mkPVar Located PName
happy_var_1)
	)}

happyReduce_273 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_273 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_273 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
93# HappyAbsSyn -> HappyAbsSyn
happyReduction_273
happyReduction_273 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_273 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Underscore ) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 (Range -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Range
happy_var_1       (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Pattern PName
forall n. Pattern n
PWild
	)}

happyReduce_274 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_274 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_274 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_274
happyReduction_274 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_274 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ [Pattern PName] -> Pattern PName
forall n. [Pattern n] -> Pattern n
PTuple []
	)}}

happyReduce_275 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_275 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_275 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_275
happyReduction_275 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_275 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_2 of { (HappyWrap105 Pattern PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3)   Pattern PName
happy_var_2
	)}}}

happyReduce_276 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_276 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_276 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_276
happyReduction_276 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_276 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap109
happyOut109 HappyAbsSyn
happy_x_2 of { (HappyWrap109 [Pattern PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ [Pattern PName] -> Pattern PName
forall n. [Pattern n] -> Pattern n
PTuple ([Pattern PName] -> [Pattern PName]
forall a. [a] -> [a]
reverse [Pattern PName]
happy_var_2)
	)}}}

happyReduce_277 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_277 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_277 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_277
happyReduction_277 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_277 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ [Pattern PName] -> Pattern PName
forall n. [Pattern n] -> Pattern n
PList []
	)}}

happyReduce_278 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_278 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_278 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_278
happyReduction_278 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_278 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_2 of { (HappyWrap105 Pattern PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ [Pattern PName] -> Pattern PName
forall n. [Pattern n] -> Pattern n
PList [Pattern PName
happy_var_2]
	)}}}

happyReduce_279 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_279 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_279 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
93# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_279
happyReduction_279 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_279 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap109
happyOut109 HappyAbsSyn
happy_x_2 of { (HappyWrap109 [Pattern PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Pattern PName -> HappyAbsSyn
happyIn108
		 ((Range, Range) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ [Pattern PName] -> Pattern PName
forall n. [Pattern n] -> Pattern n
PList ([Pattern PName] -> [Pattern PName]
forall a. [a] -> [a]
reverse [Pattern PName]
happy_var_2)
	)}}}

happyReduce_280 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_280 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_280 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
93# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_280
happyReduction_280 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_280 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Pattern PName)
-> (Pattern PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Pattern PName) -> Pattern PName)
-> [Named (Pattern PName)]
-> ParseM (Pattern PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) RecordMap Ident (Range, Pattern PName) -> Pattern PName
forall n. Rec (Pattern n) -> Pattern n
PRecord [])}})
	) (\Pattern PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Pattern PName -> HappyAbsSyn
happyIn108 Pattern PName
r))

happyReduce_281 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_281 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_281 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
93# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_281
happyReduction_281 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_281 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Pattern PName)
-> (Pattern PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap111
happyOut111 HappyAbsSyn
happy_x_2 of { (HappyWrap111 [Named (Pattern PName)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Pattern PName) -> Pattern PName)
-> [Named (Pattern PName)]
-> ParseM (Pattern PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) RecordMap Ident (Range, Pattern PName) -> Pattern PName
forall n. Rec (Pattern n) -> Pattern n
PRecord [Named (Pattern PName)]
happy_var_2)}}})
	) (\Pattern PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Pattern PName -> HappyAbsSyn
happyIn108 Pattern PName
r))

happyReduce_282 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_282 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_282 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
94# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_282
happyReduction_282 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_282 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_1 of { (HappyWrap105 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_3 of { (HappyWrap105 Pattern PName
happy_var_3) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn109
		 ([Pattern PName
happy_var_3, Pattern PName
happy_var_1]
	)}}

happyReduce_283 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_283 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_283 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
94# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_283
happyReduction_283 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_283 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap109
happyOut109 HappyAbsSyn
happy_x_1 of { (HappyWrap109 [Pattern PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_3 of { (HappyWrap105 Pattern PName
happy_var_3) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn109
		 (Pattern PName
happy_var_3 Pattern PName -> [Pattern PName] -> [Pattern PName]
forall a. a -> [a] -> [a]
: [Pattern PName]
happy_var_1
	)}}

happyReduce_284 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_284 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_284 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
95# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_284
happyReduction_284 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_284 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap105
happyOut105 HappyAbsSyn
happy_x_3 of { (HappyWrap105 Pattern PName
happy_var_3) -> 
	Named (Pattern PName) -> HappyAbsSyn
happyIn110
		 (Named { name :: LIdent
name = LIdent
happy_var_1, value :: Pattern PName
value = Pattern PName
happy_var_3 }
	)}}

happyReduce_285 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_285 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_285 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
96# HappyAbsSyn -> HappyAbsSyn
happyReduction_285
happyReduction_285 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_285 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap110
happyOut110 HappyAbsSyn
happy_x_1 of { (HappyWrap110 Named (Pattern PName)
happy_var_1) -> 
	[Named (Pattern PName)] -> HappyAbsSyn
happyIn111
		 ([Named (Pattern PName)
happy_var_1]
	)}

happyReduce_286 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_286 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_286 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
96# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_286
happyReduction_286 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_286 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap111
happyOut111 HappyAbsSyn
happy_x_1 of { (HappyWrap111 [Named (Pattern PName)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap110
happyOut110 HappyAbsSyn
happy_x_3 of { (HappyWrap110 Named (Pattern PName)
happy_var_3) -> 
	[Named (Pattern PName)] -> HappyAbsSyn
happyIn111
		 (Named (Pattern PName)
happy_var_3 Named (Pattern PName)
-> [Named (Pattern PName)] -> [Named (Pattern PName)]
forall a. a -> [a] -> [a]
: [Named (Pattern PName)]
happy_var_1
	)}}

happyReduce_287 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_287 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_287 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
97# 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 -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_1 of { (HappyWrap113 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Pattern PName -> HappyAbsSyn
happyIn112
		 ((Pattern PName, Type PName) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Type PName
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Type PName -> Pattern PName
forall n. Pattern n -> Type n -> Pattern n
PTyped Pattern PName
happy_var_1 Type PName
happy_var_3
	)}}

happyReduce_288 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_288 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_288 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
97# HappyAbsSyn -> HappyAbsSyn
happyReduction_288
happyReduction_288 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_288 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_1 of { (HappyWrap113 Pattern PName
happy_var_1) -> 
	Pattern PName -> HappyAbsSyn
happyIn112
		 (Pattern PName
happy_var_1
	)}

happyReduce_289 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_289 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_289 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
98# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_289
happyReduction_289 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_289 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_1 of { (HappyWrap113 Pattern PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap113
happyOut113 HappyAbsSyn
happy_x_3 of { (HappyWrap113 Pattern PName
happy_var_3) -> 
	Pattern PName -> HappyAbsSyn
happyIn113
		 ((Pattern PName, Pattern PName) -> Pattern PName -> Pattern PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Pattern PName
happy_var_1,Pattern PName
happy_var_3) (Pattern PName -> Pattern PName) -> Pattern PName -> Pattern PName
forall a b. (a -> b) -> a -> b
$ Pattern PName -> Pattern PName -> Pattern PName
forall n. Pattern n -> Pattern n -> Pattern n
PSplit Pattern PName
happy_var_1 Pattern PName
happy_var_3
	)}}

happyReduce_290 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_290 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_290 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
98# HappyAbsSyn -> HappyAbsSyn
happyReduction_290
happyReduction_290 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_290 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_1 of { (HappyWrap114 Pattern PName
happy_var_1) -> 
	Pattern PName -> HappyAbsSyn
happyIn113
		 (Pattern PName
happy_var_1
	)}

happyReduce_291 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_291 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_291 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
99# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_291
happyReduction_291 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_291 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Pattern PName)
-> (Pattern PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
happy_x_1 of { (HappyWrap108 Pattern PName
happy_var_1) -> 
	( Pattern PName -> ParseM (Pattern PName)
mkIPat Pattern PName
happy_var_1)})
	) (\Pattern PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Pattern PName -> HappyAbsSyn
happyIn114 Pattern PName
r))

happyReduce_292 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_292 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_292 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
100# HappyAbsSyn -> HappyAbsSyn
happyReduction_292
happyReduction_292 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_292 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_1 of { (HappyWrap114 Pattern PName
happy_var_1) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn115
		 ([Pattern PName
happy_var_1]
	)}

happyReduce_293 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_293 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_293 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
100# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_293
happyReduction_293 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_293 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap115
happyOut115 HappyAbsSyn
happy_x_1 of { (HappyWrap115 [Pattern PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_2 of { (HappyWrap114 Pattern PName
happy_var_2) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn115
		 (Pattern PName
happy_var_2 Pattern PName -> [Pattern PName] -> [Pattern PName]
forall a. a -> [a] -> [a]
: [Pattern PName]
happy_var_1
	)}}

happyReduce_294 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_294 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_294 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
101# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_294
happyReduction_294 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_294 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap117
happyOut117 HappyAbsSyn
happy_x_2 of { (HappyWrap117 [Pattern PName]
happy_var_2) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn116
		 ([Pattern PName]
happy_var_2
	)}

happyReduce_295 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_295 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_295 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
101# HappyAbsSyn
happyReduction_295
happyReduction_295 :: HappyAbsSyn
happyReduction_295  =  [Pattern PName] -> HappyAbsSyn
happyIn116
		 ([]
	)

happyReduce_296 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_296 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_296 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
102# HappyAbsSyn -> HappyAbsSyn
happyReduction_296
happyReduction_296 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_296 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap114
happyOut114 HappyAbsSyn
happy_x_1 of { (HappyWrap114 Pattern PName
happy_var_1) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn117
		 ([Pattern PName
happy_var_1]
	)}

happyReduce_297 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_297 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_297 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
102# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_297
happyReduction_297 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_297 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap117
happyOut117 HappyAbsSyn
happy_x_1 of { (HappyWrap117 [Pattern PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap108
happyOut108 HappyAbsSyn
happy_x_3 of { (HappyWrap108 Pattern PName
happy_var_3) -> 
	[Pattern PName] -> HappyAbsSyn
happyIn117
		 (Pattern PName
happy_var_3 Pattern PName -> [Pattern PName] -> [Pattern PName]
forall a. a -> [a] -> [a]
: [Pattern PName]
happy_var_1
	)}}

happyReduce_298 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_298 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_298 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
103# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_298
happyReduction_298 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_298 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap115
happyOut115 HappyAbsSyn
happy_x_1 of { (HappyWrap115 [Pattern PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap116
happyOut116 HappyAbsSyn
happy_x_2 of { (HappyWrap116 [Pattern PName]
happy_var_2) -> 
	([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn118
		 (([Pattern PName]
happy_var_1, [Pattern PName]
happy_var_2)
	)}}

happyReduce_299 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_299 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_299 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
103# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_299
happyReduction_299 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_299 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap117
happyOut117 HappyAbsSyn
happy_x_2 of { (HappyWrap117 [Pattern PName]
happy_var_2) -> 
	([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn118
		 (([], [Pattern PName]
happy_var_2)
	)}

happyReduce_300 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_300 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_300 = Int#
-> HappyAbsSyn
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_0  Int#
104# HappyAbsSyn
happyReduction_300
happyReduction_300 :: HappyAbsSyn
happyReduction_300  =  ([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn119
		 (([],[])
	)

happyReduce_301 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_301 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_301 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
104# HappyAbsSyn -> HappyAbsSyn
happyReduction_301
happyReduction_301 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_301 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap118
happyOut118 HappyAbsSyn
happy_x_1 of { (HappyWrap118 ([Pattern PName], [Pattern PName])
happy_var_1) -> 
	([Pattern PName], [Pattern PName]) -> HappyAbsSyn
happyIn119
		 (([Pattern PName], [Pattern PName])
happy_var_1
	)}

happyReduce_302 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_302 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_302 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
105# HappyAbsSyn -> HappyAbsSyn
happyReduction_302
happyReduction_302 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_302 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	Schema PName -> HappyAbsSyn
happyIn120
		 (Type PName -> Schema PName -> Schema PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Type PName
happy_var_1 (Schema PName -> Schema PName) -> Schema PName -> Schema PName
forall a b. (a -> b) -> a -> b
$ [TParam PName] -> [Prop PName] -> Type PName -> Schema PName
mkSchema [] [] Type PName
happy_var_1
	)}

happyReduce_303 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_303 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_303 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
105# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_303
happyReduction_303 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_303 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap121
happyOut121 HappyAbsSyn
happy_x_1 of { (HappyWrap121 Located [TParam PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	Schema PName -> HappyAbsSyn
happyIn120
		 ((Located [TParam PName], Type PName)
-> Schema PName -> Schema PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [TParam PName]
happy_var_1,Type PName
happy_var_2) (Schema PName -> Schema PName) -> Schema PName -> Schema PName
forall a b. (a -> b) -> a -> b
$ [TParam PName] -> [Prop PName] -> Type PName -> Schema PName
mkSchema (Located [TParam PName] -> [TParam PName]
forall a. Located a -> a
thing Located [TParam PName]
happy_var_1) [] Type PName
happy_var_2
	)}}

happyReduce_304 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_304 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_304 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
105# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_304
happyReduction_304 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_304 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap122
happyOut122 HappyAbsSyn
happy_x_1 of { (HappyWrap122 Located [Prop PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	Schema PName -> HappyAbsSyn
happyIn120
		 ((Located [Prop PName], Type PName) -> Schema PName -> Schema PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [Prop PName]
happy_var_1,Type PName
happy_var_2) (Schema PName -> Schema PName) -> Schema PName -> Schema PName
forall a b. (a -> b) -> a -> b
$ [TParam PName] -> [Prop PName] -> Type PName -> Schema PName
mkSchema [] (Located [Prop PName] -> [Prop PName]
forall a. Located a -> a
thing Located [Prop PName]
happy_var_1) Type PName
happy_var_2
	)}}

happyReduce_305 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_305 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_305 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
105# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_305
happyReduction_305 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_305 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap121
happyOut121 HappyAbsSyn
happy_x_1 of { (HappyWrap121 Located [TParam PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap122
happyOut122 HappyAbsSyn
happy_x_2 of { (HappyWrap122 Located [Prop PName]
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Schema PName -> HappyAbsSyn
happyIn120
		 ((Located [TParam PName], Type PName)
-> Schema PName -> Schema PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [TParam PName]
happy_var_1,Type PName
happy_var_3) (Schema PName -> Schema PName) -> Schema PName -> Schema PName
forall a b. (a -> b) -> a -> b
$ [TParam PName] -> [Prop PName] -> Type PName -> Schema PName
mkSchema (Located [TParam PName] -> [TParam PName]
forall a. Located a -> a
thing Located [TParam PName]
happy_var_1)
                                                          (Located [Prop PName] -> [Prop PName]
forall a. Located a -> a
thing Located [Prop PName]
happy_var_2) Type PName
happy_var_3
	)}}}

happyReduce_306 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_306 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_306 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
106# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_306
happyReduction_306 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_306 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Located [TParam PName] -> HappyAbsSyn
happyIn121
		 (Range -> [TParam PName] -> Located [TParam PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) []
	)}}

happyReduce_307 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_307 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_307 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
106# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_307
happyReduction_307 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_307 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap126
happyOut126 HappyAbsSyn
happy_x_2 of { (HappyWrap126 [TParam PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Located [TParam PName] -> HappyAbsSyn
happyIn121
		 (Range -> [TParam PName] -> Located [TParam PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) ([TParam PName] -> [TParam PName]
forall a. [a] -> [a]
reverse [TParam PName]
happy_var_2)
	)}}}

happyReduce_308 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_308 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_308 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
107# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_308
happyReduction_308 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_308 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap122
happyOut122 HappyAbsSyn
happy_x_1 of { (HappyWrap122 Located [Prop PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap123
happyOut123 HappyAbsSyn
happy_x_2 of { (HappyWrap123 Located [Prop PName]
happy_var_2) -> 
	Located [Prop PName] -> HappyAbsSyn
happyIn122
		 ((Located [Prop PName], Located [Prop PName])
-> Located [Prop PName] -> Located [Prop PName]
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [Prop PName]
happy_var_1,Located [Prop PName]
happy_var_2) (Located [Prop PName] -> Located [Prop PName])
-> Located [Prop PName] -> Located [Prop PName]
forall a b. (a -> b) -> a -> b
$ ([Prop PName] -> [Prop PName])
-> Located [Prop PName] -> Located [Prop PName]
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap ([Prop PName] -> [Prop PName] -> [Prop PName]
forall a. [a] -> [a] -> [a]
++ Located [Prop PName] -> [Prop PName]
forall a. Located a -> a
thing Located [Prop PName]
happy_var_2) Located [Prop PName]
happy_var_1
	)}}

happyReduce_309 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_309 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_309 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
107# HappyAbsSyn -> HappyAbsSyn
happyReduction_309
happyReduction_309 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_309 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap123
happyOut123 HappyAbsSyn
happy_x_1 of { (HappyWrap123 Located [Prop PName]
happy_var_1) -> 
	Located [Prop PName] -> HappyAbsSyn
happyIn122
		 (Located [Prop PName]
happy_var_1
	)}

happyReduce_310 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_310 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_310 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
108# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_310
happyReduction_310 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_310 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Located [Prop PName])
-> (Located [Prop PName] -> ParseM HappyAbsSyn)
-> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
FatArrR ) Text
_)) -> 
	( (Located [Prop PName] -> Located [Prop PName])
-> ParseM (Located [Prop PName]) -> ParseM (Located [Prop PName])
forall a b. (a -> b) -> ParseM a -> ParseM b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap (\Located [Prop PName]
x -> (Located [Prop PName], Range)
-> Located [Prop PName] -> Located [Prop PName]
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [Prop PName]
x,Range
happy_var_2) Located [Prop PName]
x) (Type PName -> ParseM (Located [Prop PName])
mkProp Type PName
happy_var_1))}})
	) (\Located [Prop PName]
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Located [Prop PName] -> HappyAbsSyn
happyIn123 Located [Prop PName]
r))

happyReduce_311 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_311 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_311 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
109# HappyAbsSyn -> HappyAbsSyn
happyReduction_311
happyReduction_311 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_311 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Hash) Text
_)) -> 
	Located Kind -> HappyAbsSyn
happyIn124
		 (Range -> Kind -> Located Kind
forall a. Range -> a -> Located a
Located Range
happy_var_1 Kind
KNum
	)}

happyReduce_312 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_312 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_312 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
109# HappyAbsSyn -> HappyAbsSyn
happyReduction_312
happyReduction_312 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_312 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Op TokenOp
Mul)   Text
_)) -> 
	Located Kind -> HappyAbsSyn
happyIn124
		 (Range -> Kind -> Located Kind
forall a. Range -> a -> Located a
Located Range
happy_var_1 Kind
KType
	)}

happyReduce_313 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_313 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_313 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
109# HappyAbsSyn -> HappyAbsSyn
happyReduction_313
happyReduction_313 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_313 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_Prop) Text
_)) -> 
	Located Kind -> HappyAbsSyn
happyIn124
		 (Range -> Kind -> Located Kind
forall a. Range -> a -> Located a
Located Range
happy_var_1 Kind
KProp
	)}

happyReduce_314 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_314 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_314 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
109# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_314
happyReduction_314 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_314 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_1 of { (HappyWrap124 Located Kind
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_3 of { (HappyWrap124 Located Kind
happy_var_3) -> 
	Located Kind -> HappyAbsSyn
happyIn124
		 ((Kind -> Kind -> Kind)
-> Located Kind -> Located Kind -> Located Kind
forall a b c. (a -> b -> c) -> Located a -> Located b -> Located c
combLoc Kind -> Kind -> Kind
KFun Located Kind
happy_var_1 Located Kind
happy_var_3
	)}}

happyReduce_315 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_315 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_315 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
1# Int#
110# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_315
happyReduction_315 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_315 (HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (TParam PName)
-> (TParam PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	( LIdent -> Maybe Kind -> ParseM (TParam PName)
mkTParam LIdent
happy_var_1 Maybe Kind
forall a. Maybe a
Nothing)})
	) (\TParam PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (TParam PName -> HappyAbsSyn
happyIn125 TParam PName
r))

happyReduce_316 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_316 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_316 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
110# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_316
happyReduction_316 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_316 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (TParam PName)
-> (TParam PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_3 of { (HappyWrap124 Located Kind
happy_var_3) -> 
	( LIdent -> Maybe Kind -> ParseM (TParam PName)
mkTParam ((LIdent, Located Kind) -> LIdent -> LIdent
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (LIdent
happy_var_1,Located Kind
happy_var_3) LIdent
happy_var_1) (Kind -> Maybe Kind
forall a. a -> Maybe a
Just (Located Kind -> Kind
forall a. Located a -> a
thing Located Kind
happy_var_3)))}})
	) (\TParam PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (TParam PName -> HappyAbsSyn
happyIn125 TParam PName
r))

happyReduce_317 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_317 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_317 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
111# HappyAbsSyn -> HappyAbsSyn
happyReduction_317
happyReduction_317 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_317 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap125
happyOut125 HappyAbsSyn
happy_x_1 of { (HappyWrap125 TParam PName
happy_var_1) -> 
	[TParam PName] -> HappyAbsSyn
happyIn126
		 ([TParam PName
happy_var_1]
	)}

happyReduce_318 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_318 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_318 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
111# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_318
happyReduction_318 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_318 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap126
happyOut126 HappyAbsSyn
happy_x_1 of { (HappyWrap126 [TParam PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap125
happyOut125 HappyAbsSyn
happy_x_3 of { (HappyWrap125 TParam PName
happy_var_3) -> 
	[TParam PName] -> HappyAbsSyn
happyIn126
		 (TParam PName
happy_var_3 TParam PName -> [TParam PName] -> [TParam PName]
forall a. a -> [a] -> [a]
: [TParam PName]
happy_var_1
	)}}

happyReduce_319 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_319 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_319 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
112# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_319
happyReduction_319 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_319 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap128
happyOut128 HappyAbsSyn
happy_x_1 of { (HappyWrap128 Type PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Type PName -> HappyAbsSyn
happyIn127
		 ((Type PName, Type PName) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Type PName
happy_var_1,Type PName
happy_var_3) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Type PName -> Type PName -> Type PName
forall n. Type n -> Type n -> Type n
TFun Type PName
happy_var_1 Type PName
happy_var_3
	)}}

happyReduce_320 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_320 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_320 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
112# HappyAbsSyn -> HappyAbsSyn
happyReduction_320
happyReduction_320 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_320 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap128
happyOut128 HappyAbsSyn
happy_x_1 of { (HappyWrap128 Type PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn127
		 (Type PName
happy_var_1
	)}

happyReduce_321 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_321 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_321 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
113# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_321
happyReduction_321 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_321 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap128
happyOut128 HappyAbsSyn
happy_x_1 of { (HappyWrap128 Type PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap69
happyOut69 HappyAbsSyn
happy_x_2 of { (HappyWrap69 Located PName
happy_var_2) -> 
	case HappyAbsSyn -> HappyWrap129
happyOut129 HappyAbsSyn
happy_x_3 of { (HappyWrap129 Type PName
happy_var_3) -> 
	Type PName -> HappyAbsSyn
happyIn128
		 ((Type PName, Type PName) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Type PName
happy_var_1,Type PName
happy_var_3) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Type PName -> Located PName -> Fixity -> Type PName -> Type PName
forall n. Type n -> Located n -> Fixity -> Type n -> Type n
TInfix Type PName
happy_var_1 Located PName
happy_var_2 Fixity
defaultFixity Type PName
happy_var_3
	)}}}

happyReduce_322 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_322 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_322 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
113# HappyAbsSyn -> HappyAbsSyn
happyReduction_322
happyReduction_322 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_322 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap129
happyOut129 HappyAbsSyn
happy_x_1 of { (HappyWrap129 Type PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn128
		 (Type PName
happy_var_1
	)}

happyReduce_323 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_323 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_323 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
114# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_323
happyReduction_323 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_323 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap133
happyOut133 HappyAbsSyn
happy_x_1 of { (HappyWrap133 Located [Type PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap130
happyOut130 HappyAbsSyn
happy_x_2 of { (HappyWrap130 Type PName
happy_var_2) -> 
	Type PName -> HappyAbsSyn
happyIn129
		 ((Located [Type PName], Type PName) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [Type PName]
happy_var_1,Type PName
happy_var_2) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ (Type PName -> Type PName -> Type PName)
-> Type PName -> [Type PName] -> Type PName
forall a b. (a -> b -> b) -> b -> [a] -> b
forall (t :: * -> *) a b.
Foldable t =>
(a -> b -> b) -> b -> t a -> b
foldr Type PName -> Type PName -> Type PName
forall n. Type n -> Type n -> Type n
TSeq Type PName
happy_var_2 ([Type PName] -> [Type PName]
forall a. [a] -> [a]
reverse (Located [Type PName] -> [Type PName]
forall a. Located a -> a
thing Located [Type PName]
happy_var_1))
	)}}

happyReduce_324 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_324 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_324 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
114# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_324
happyReduction_324 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_324 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap132
happyOut132 HappyAbsSyn
happy_x_2 of { (HappyWrap132 [Type PName]
happy_var_2) -> 
	Type PName -> HappyAbsSyn
happyIn129
		 ((Located PName, Type PName) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located PName
happy_var_1,[Type PName] -> Type PName
forall a. HasCallStack => [a] -> a
head [Type PName]
happy_var_2)
                                     (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ PName -> [Type PName] -> Type PName
forall n. n -> [Type n] -> Type n
TUser (Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_1) ([Type PName] -> [Type PName]
forall a. [a] -> [a]
reverse [Type PName]
happy_var_2)
	)}}

happyReduce_325 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_325 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_325 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
114# HappyAbsSyn -> HappyAbsSyn
happyReduction_325
happyReduction_325 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_325 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap130
happyOut130 HappyAbsSyn
happy_x_1 of { (HappyWrap130 Type PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn129
		 (Type PName
happy_var_1
	)}

happyReduce_326 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_326 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_326 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
115# HappyAbsSyn -> HappyAbsSyn
happyReduction_326
happyReduction_326 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_326 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 (Located PName -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located PName
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ PName -> [Type PName] -> Type PName
forall n. n -> [Type n] -> Type n
TUser (Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_1) []
	)}

happyReduce_327 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_327 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_327 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
115# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_327
happyReduction_327 :: p -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_327 p
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_2 of { (HappyWrap68 Located PName
happy_var_2) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 (Range -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Range
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ PName -> [Type PName] -> Type PName
forall n. n -> [Type n] -> Type n
TUser (Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_2) []
	)}}

happyReduce_328 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_328 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_328 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
115# HappyAbsSyn -> HappyAbsSyn
happyReduction_328
happyReduction_328 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_328 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 (Located Token -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Integer -> Type PName
forall n. Integer -> Type n
TNum  (Located Token -> Integer
getNum Located Token
happy_var_1)
	)}

happyReduce_329 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_329 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_329 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
115# HappyAbsSyn -> HappyAbsSyn
happyReduction_329
happyReduction_329 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_329 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (ChrLit {}) Text
_))) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 (Located Token -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Char -> Type PName
forall n. Char -> Type n
TChar (Located Token -> Char
getChr Located Token
happy_var_1)
	)}

happyReduce_330 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_330 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_330 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
115# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_330
happyReduction_330 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_330 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Type PName -> Type PName -> Type PName
forall n. Type n -> Type n -> Type n
TSeq Type PName
happy_var_2 Type PName
forall n. Type n
TBit
	)}}}

happyReduce_331 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_331 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_331 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
115# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_331
happyReduction_331 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_331 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap131
happyOut131 HappyAbsSyn
happy_x_2 of { (HappyWrap131 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) Type PName
happy_var_2
	)}}}

happyReduce_332 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_332 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_332 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
115# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_332
happyReduction_332 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_332 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ [Type PName] -> Type PName
forall n. [Type n] -> Type n
TTuple []
	)}}

happyReduce_333 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_333 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_333 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
115# 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 -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap134
happyOut134 HappyAbsSyn
happy_x_2 of { (HappyWrap134 [Type PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ [Type PName] -> Type PName
forall n. [Type n] -> Type n
TTuple  ([Type PName] -> [Type PName]
forall a. [a] -> [a]
reverse [Type PName]
happy_var_2)
	)}}}

happyReduce_334 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_334 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_334 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
2# Int#
115# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_334
happyReduction_334 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_334 (HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Type PName)
-> (Type PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Type PName) -> Type PName)
-> [Named (Type PName)]
-> ParseM (Type PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_2) RecordMap Ident (Range, Type PName) -> Type PName
forall n. Rec (Type n) -> Type n
TRecord [])}})
	) (\Type PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Type PName -> HappyAbsSyn
happyIn130 Type PName
r))

happyReduce_335 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_335 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_335 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
115# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_335
happyReduction_335 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_335 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Type PName)
-> (Type PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap136
happyOut136 HappyAbsSyn
happy_x_2 of { (HappyWrap136 [Named (Type PName)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	( Range
-> (RecordMap Ident (Range, Type PName) -> Type PName)
-> [Named (Type PName)]
-> ParseM (Type PName)
forall b a.
AddLoc b =>
Range -> (RecordMap Ident (Range, a) -> b) -> [Named a] -> ParseM b
mkRecord (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) RecordMap Ident (Range, Type PName) -> Type PName
forall n. Rec (Type n) -> Type n
TRecord [Named (Type PName)]
happy_var_2)}}})
	) (\Type PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Type PName -> HappyAbsSyn
happyIn130 Type PName
r))

happyReduce_336 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_336 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_336 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
115# HappyAbsSyn -> HappyAbsSyn
happyReduction_336
happyReduction_336 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_336 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
Underscore ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn130
		 (Range -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Range
happy_var_1 Type PName
forall n. Type n
TWild
	)}

happyReduce_337 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_337 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_337 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
116# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_337
happyReduction_337 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_337 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap124
happyOut124 HappyAbsSyn
happy_x_3 of { (HappyWrap124 Located Kind
happy_var_3) -> 
	Type PName -> HappyAbsSyn
happyIn131
		 (Type PName -> Maybe Kind -> Type PName
forall n. Type n -> Maybe Kind -> Type n
TParens Type PName
happy_var_1 (Kind -> Maybe Kind
forall a. a -> Maybe a
Just (Located Kind -> Kind
forall a. Located a -> a
thing Located Kind
happy_var_3))
	)}}

happyReduce_338 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_338 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_338 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
116# HappyAbsSyn -> HappyAbsSyn
happyReduction_338
happyReduction_338 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_338 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn131
		 (Type PName -> Maybe Kind -> Type PName
forall n. Type n -> Maybe Kind -> Type n
TParens Type PName
happy_var_1 Maybe Kind
forall a. Maybe a
Nothing
	)}

happyReduce_339 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_339 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_339 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
117# HappyAbsSyn -> HappyAbsSyn
happyReduction_339
happyReduction_339 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_339 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap130
happyOut130 HappyAbsSyn
happy_x_1 of { (HappyWrap130 Type PName
happy_var_1) -> 
	[Type PName] -> HappyAbsSyn
happyIn132
		 ([ Type PName
happy_var_1 ]
	)}

happyReduce_340 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_340 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_340 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
117# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_340
happyReduction_340 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_340 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap132
happyOut132 HappyAbsSyn
happy_x_1 of { (HappyWrap132 [Type PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap130
happyOut130 HappyAbsSyn
happy_x_2 of { (HappyWrap130 Type PName
happy_var_2) -> 
	[Type PName] -> HappyAbsSyn
happyIn132
		 (Type PName
happy_var_2 Type PName -> [Type PName] -> [Type PName]
forall a. a -> [a] -> [a]
: [Type PName]
happy_var_1
	)}}

happyReduce_341 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_341 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_341 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
118# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_341
happyReduction_341 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_341 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
BracketL) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Located [Type PName] -> HappyAbsSyn
happyIn133
		 (Range -> [Type PName] -> Located [Type PName]
forall a. Range -> a -> Located a
Located (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) [ Type PName
happy_var_2 ]
	)}}}

happyReduce_342 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_342 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_342 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce Int#
4# Int#
118# HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_342
happyReduction_342 :: HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
happyReduction_342 (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 -> HappyWrap133
happyOut133 HappyAbsSyn
happy_x_1 of { (HappyWrap133 Located [Type PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_4 of { (Located Range
happy_var_4 (Token (Sym TokenSym
BracketR) Text
_)) -> 
	Located [Type PName] -> HappyAbsSyn
happyIn133
		 ((Located [Type PName], Range)
-> Located [Type PName] -> Located [Type PName]
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Located [Type PName]
happy_var_1,Range
happy_var_4) (([Type PName] -> [Type PName])
-> Located [Type PName] -> Located [Type PName]
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap (Type PName
happy_var_3 Type PName -> [Type PName] -> [Type PName]
forall a. a -> [a] -> [a]
:) Located [Type PName]
happy_var_1)
	) HappyAbsSyn -> HappyStk HappyAbsSyn -> HappyStk HappyAbsSyn
forall a. a -> HappyStk a -> HappyStk a
`HappyStk` HappyStk HappyAbsSyn
happyRest}}}

happyReduce_343 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_343 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_343 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
119# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_343
happyReduction_343 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_343 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_1 of { (HappyWrap127 Type PName
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	[Type PName] -> HappyAbsSyn
happyIn134
		 ([ Type PName
happy_var_3, Type PName
happy_var_1]
	)}}

happyReduce_344 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_344 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_344 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
119# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_344
happyReduction_344 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_344 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap134
happyOut134 HappyAbsSyn
happy_x_1 of { (HappyWrap134 [Type PName]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	[Type PName] -> HappyAbsSyn
happyIn134
		 (Type PName
happy_var_3 Type PName -> [Type PName] -> [Type PName]
forall a. a -> [a] -> [a]
: [Type PName]
happy_var_1
	)}}

happyReduce_345 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_345 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_345 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
120# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_345
happyReduction_345 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_345 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Named (Type PName) -> HappyAbsSyn
happyIn135
		 (Named { name :: LIdent
name = LIdent
happy_var_1, value :: Type PName
value = Type PName
happy_var_3 }
	)}}

happyReduce_346 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_346 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_346 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
121# HappyAbsSyn -> HappyAbsSyn
happyReduction_346
happyReduction_346 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_346 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap135
happyOut135 HappyAbsSyn
happy_x_1 of { (HappyWrap135 Named (Type PName)
happy_var_1) -> 
	[Named (Type PName)] -> HappyAbsSyn
happyIn136
		 ([Named (Type PName)
happy_var_1]
	)}

happyReduce_347 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_347 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_347 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
121# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_347
happyReduction_347 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_347 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap136
happyOut136 HappyAbsSyn
happy_x_1 of { (HappyWrap136 [Named (Type PName)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap135
happyOut135 HappyAbsSyn
happy_x_3 of { (HappyWrap135 Named (Type PName)
happy_var_3) -> 
	[Named (Type PName)] -> HappyAbsSyn
happyIn136
		 (Named (Type PName)
happy_var_3 Named (Type PName) -> [Named (Type PName)] -> [Named (Type PName)]
forall a. a -> [a] -> [a]
: [Named (Type PName)]
happy_var_1
	)}}

happyReduce_348 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_348 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_348 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
122# HappyAbsSyn -> HappyAbsSyn
happyReduction_348
happyReduction_348 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_348 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Ident [] Text
_) Text
_))) -> 
	LIdent -> HappyAbsSyn
happyIn137
		 (let Token (Ident [Text]
_ Text
str) Text
_ = Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1
                         in Located Token
happy_var_1 { thing = mkIdent str }
	)}

happyReduce_349 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_349 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_349 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
122# HappyAbsSyn -> HappyAbsSyn
happyReduction_349
happyReduction_349 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_349 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_x)       Text
_)) -> 
	LIdent -> HappyAbsSyn
happyIn137
		 (Located { srcRange :: Range
srcRange = Range
happy_var_1, thing :: Ident
thing = Text -> Ident
mkIdent Text
"x" }
	)}

happyReduce_350 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_350 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_350 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
122# HappyAbsSyn -> HappyAbsSyn
happyReduction_350
happyReduction_350 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_350 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_private)   Text
_)) -> 
	LIdent -> HappyAbsSyn
happyIn137
		 (Located { srcRange :: Range
srcRange = Range
happy_var_1, thing :: Ident
thing = Text -> Ident
mkIdent Text
"private" }
	)}

happyReduce_351 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_351 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_351 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
122# HappyAbsSyn -> HappyAbsSyn
happyReduction_351
happyReduction_351 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_351 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_as)        Text
_)) -> 
	LIdent -> HappyAbsSyn
happyIn137
		 (Located { srcRange :: Range
srcRange = Range
happy_var_1, thing :: Ident
thing = Text -> Ident
mkIdent Text
"as" }
	)}

happyReduce_352 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_352 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_352 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
122# HappyAbsSyn -> HappyAbsSyn
happyReduction_352
happyReduction_352 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_352 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (KW TokenKW
KW_hiding)    Text
_)) -> 
	LIdent -> HappyAbsSyn
happyIn137
		 (Located { srcRange :: Range
srcRange = Range
happy_var_1, thing :: Ident
thing = Text -> Ident
mkIdent Text
"hiding" }
	)}

happyReduce_353 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_353 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_353 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
123# HappyAbsSyn -> HappyAbsSyn
happyReduction_353
happyReduction_353 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_353 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn138
		 ((Ident -> PName) -> LIdent -> Located PName
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap Ident -> PName
mkUnqual LIdent
happy_var_1
	)}

happyReduce_354 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_354 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_354 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
124# HappyAbsSyn -> HappyAbsSyn
happyReduction_354
happyReduction_354 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_354 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	Located ModName -> HappyAbsSyn
happyIn139
		 ((Ident -> ModName) -> LIdent -> Located ModName
forall a b. (a -> b) -> Located a -> Located b
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap ([Text] -> ModName
mkModName ([Text] -> ModName) -> (Ident -> [Text]) -> Ident -> ModName
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (Text -> [Text] -> [Text]
forall a. a -> [a] -> [a]
:[]) (Text -> [Text]) -> (Ident -> Text) -> Ident -> [Text]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Ident -> Text
identText) LIdent
happy_var_1
	)}

happyReduce_355 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_355 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_355 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
124# HappyAbsSyn -> HappyAbsSyn
happyReduction_355
happyReduction_355 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_355 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token  Ident{}     Text
_))) -> 
	Located ModName -> HappyAbsSyn
happyIn139
		 (let Token (Ident [Text]
ns Text
i) Text
_ = Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1
                                     in [Text] -> ModName
mkModName ([Text]
ns [Text] -> [Text] -> [Text]
forall a. [a] -> [a] -> [a]
++ [Text
i]) ModName -> Located Token -> Located ModName
forall a b. a -> Located b -> Located a
forall (f :: * -> *) a b. Functor f => a -> f b -> f a
A.<$ Located Token
happy_var_1
	)}

happyReduce_356 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_356 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_356 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
125# HappyAbsSyn -> HappyAbsSyn
happyReduction_356
happyReduction_356 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_356 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap139
happyOut139 HappyAbsSyn
happy_x_1 of { (HappyWrap139 Located ModName
happy_var_1) -> 
	Located ModName -> HappyAbsSyn
happyIn140
		 (Located ModName
happy_var_1
	)}

happyReduce_357 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_357 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_357 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
125# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_357
happyReduction_357 :: HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_357 HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap139
happyOut139 HappyAbsSyn
happy_x_2 of { (HappyWrap139 Located ModName
happy_var_2) -> 
	Located ModName -> HappyAbsSyn
happyIn140
		 (Located ModName
happy_var_2
	)}

happyReduce_358 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_358 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_358 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
126# HappyAbsSyn -> HappyAbsSyn
happyReduction_358
happyReduction_358 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_358 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap138
happyOut138 HappyAbsSyn
happy_x_1 of { (HappyWrap138 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn141
		 (Located PName
happy_var_1
	)}

happyReduce_359 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_359 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_359 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
126# HappyAbsSyn -> HappyAbsSyn
happyReduction_359
happyReduction_359 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_359 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token  Ident{}     Text
_))) -> 
	Located PName -> HappyAbsSyn
happyIn141
		 (let Token (Ident [Text]
ns Text
i) Text
_ = Located Token -> Token
forall a. Located a -> a
thing Located Token
happy_var_1
                                     in ModName -> Ident -> PName
mkQual ([Text] -> ModName
mkModName [Text]
ns) (Text -> Ident
mkIdent Text
i) PName -> Located Token -> Located PName
forall a b. a -> Located b -> Located a
forall (f :: * -> *) a b. Functor f => a -> f b -> f a
A.<$ Located Token
happy_var_1
	)}

happyReduce_360 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_360 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_360 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
127# HappyAbsSyn -> HappyAbsSyn
happyReduction_360
happyReduction_360 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_360 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn142
		 (Located PName
happy_var_1
	)}

happyReduce_361 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_361 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_361 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
127# HappyAbsSyn -> HappyAbsSyn
happyReduction_361
happyReduction_361 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_361 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_1 of { (HappyWrap68 Located PName
happy_var_1) -> 
	Located PName -> HappyAbsSyn
happyIn142
		 (Located PName
happy_var_1
	)}

happyReduce_362 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_362 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_362 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
127# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p} {p}. p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_362
happyReduction_362 :: p -> HappyAbsSyn -> p -> HappyAbsSyn
happyReduction_362 p
happy_x_3
	HappyAbsSyn
happy_x_2
	p
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap68
happyOut68 HappyAbsSyn
happy_x_2 of { (HappyWrap68 Located PName
happy_var_2) -> 
	Located PName -> HappyAbsSyn
happyIn142
		 (Located PName
happy_var_2
	)}

happyReduce_363 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_363 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_363 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
128# HappyAbsSyn -> HappyAbsSyn
happyReduction_363
happyReduction_363 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_363 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap141
happyOut141 HappyAbsSyn
happy_x_1 of { (HappyWrap141 Located PName
happy_var_1) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 (Located PName -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located PName
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ PName -> [Type PName] -> Type PName
forall n. n -> [Type n] -> Type n
TUser (Located PName -> PName
forall a. Located a -> a
thing Located PName
happy_var_1) []
	)}

happyReduce_364 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_364 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_364 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
128# HappyAbsSyn -> HappyAbsSyn
happyReduction_364
happyReduction_364 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_364 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (happy_var_1 :: Located Token
happy_var_1@(Located Range
_ (Token (Num   {}) Text
_))) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 (Located Token -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at Located Token
happy_var_1 (Type PName -> Type PName) -> Type PName -> Type PName
forall a b. (a -> b) -> a -> b
$ Integer -> Type PName
forall n. Integer -> Type n
TNum  (Located Token -> Integer
getNum Located Token
happy_var_1)
	)}

happyReduce_365 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_365 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_365 = Int#
-> Int#
-> (HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyMonadReduce Int#
3# Int#
128# HappyStk HappyAbsSyn -> Located Token -> ParseM HappyAbsSyn
forall {p}. HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_365
happyReduction_365 :: HappyStk HappyAbsSyn -> p -> ParseM HappyAbsSyn
happyReduction_365 (HappyAbsSyn
happy_x_3 `HappyStk`
	HappyAbsSyn
happy_x_2 `HappyStk`
	HappyAbsSyn
happy_x_1 `HappyStk`
	HappyStk HappyAbsSyn
happyRest) p
tk
	 = ParseM (Type PName)
-> (Type PName -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen ((case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
ParenL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
ParenR  ) Text
_)) -> 
	( Range -> Type PName -> ParseM (Type PName)
validDemotedType (Range -> Range -> Range
rComb Range
happy_var_1 Range
happy_var_3) Type PName
happy_var_2)}}})
	) (\Type PName
r -> HappyAbsSyn -> ParseM HappyAbsSyn
forall a. a -> ParseM a
happyReturn (Type PName -> HappyAbsSyn
happyIn143 Type PName
r))

happyReduce_366 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_366 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_366 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_2  Int#
128# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_366
happyReduction_366 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_366 HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_2 of { (Located Range
happy_var_2 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_2) ([Named (Type PName)] -> Type PName
forall n. [Named (Type n)] -> Type n
TTyApp [])
	)}}

happyReduce_367 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_367 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_367 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
128# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_367
happyReduction_367 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_367 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap145
happyOut145 HappyAbsSyn
happy_x_2 of { (HappyWrap145 [Named (Type PName)]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 ((Range, Range) -> Type PName -> Type PName
forall l t. (HasLoc l, AddLoc t) => l -> t -> t
at (Range
happy_var_1,Range
happy_var_3) ([Named (Type PName)] -> Type PName
forall n. [Named (Type n)] -> Type n
TTyApp ([Named (Type PName)] -> [Named (Type PName)]
forall a. [a] -> [a]
reverse [Named (Type PName)]
happy_var_2))
	)}}}

happyReduce_368 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_368 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_368 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
128# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_368
happyReduction_368 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_368 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_2 of { (HappyWrap127 Type PName
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 (Maybe Range -> [Type PName] -> Type PName
anonTyApp ((Range, Range) -> Maybe Range
forall t. HasLoc t => t -> Maybe Range
getLoc (Range
happy_var_1,Range
happy_var_3)) [Type PName
happy_var_2]
	)}}}

happyReduce_369 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_369 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_369 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
128# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_369
happyReduction_369 :: HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
happyReduction_369 HappyAbsSyn
happy_x_3
	HappyAbsSyn
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_1 of { (Located Range
happy_var_1 (Token (Sym TokenSym
CurlyL  ) Text
_)) -> 
	case HappyAbsSyn -> HappyWrap134
happyOut134 HappyAbsSyn
happy_x_2 of { (HappyWrap134 [Type PName]
happy_var_2) -> 
	case HappyAbsSyn -> Located Token
happyOutTok HappyAbsSyn
happy_x_3 of { (Located Range
happy_var_3 (Token (Sym TokenSym
CurlyR  ) Text
_)) -> 
	Type PName -> HappyAbsSyn
happyIn143
		 (Maybe Range -> [Type PName] -> Type PName
anonTyApp ((Range, Range) -> Maybe Range
forall t. HasLoc t => t -> Maybe Range
getLoc (Range
happy_var_1,Range
happy_var_3)) ([Type PName] -> [Type PName]
forall a. [a] -> [a]
reverse [Type PName]
happy_var_2)
	)}}}

happyReduce_370 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_370 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_370 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
129# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_370
happyReduction_370 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_370 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap137
happyOut137 HappyAbsSyn
happy_x_1 of { (HappyWrap137 LIdent
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap127
happyOut127 HappyAbsSyn
happy_x_3 of { (HappyWrap127 Type PName
happy_var_3) -> 
	Named (Type PName) -> HappyAbsSyn
happyIn144
		 (Named { name :: LIdent
name = LIdent
happy_var_1, value :: Type PName
value = Type PName
happy_var_3 }
	)}}

happyReduce_371 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_371 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_371 = Int#
-> (HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_1  Int#
130# HappyAbsSyn -> HappyAbsSyn
happyReduction_371
happyReduction_371 :: HappyAbsSyn -> HappyAbsSyn
happyReduction_371 HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap144
happyOut144 HappyAbsSyn
happy_x_1 of { (HappyWrap144 Named (Type PName)
happy_var_1) -> 
	[Named (Type PName)] -> HappyAbsSyn
happyIn145
		 ([Named (Type PName)
happy_var_1]
	)}

happyReduce_372 :: () => Happy_GHC_Exts.Int# -> Located Token -> Happy_GHC_Exts.Int# -> Happy_IntList -> HappyStk (HappyAbsSyn ) -> ParseM (HappyAbsSyn )
happyReduce_372 :: Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyReduce_372 = Int#
-> (HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn)
-> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happySpecReduce_3  Int#
130# HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn -> HappyAbsSyn
forall {p}. HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_372
happyReduction_372 :: HappyAbsSyn -> p -> HappyAbsSyn -> HappyAbsSyn
happyReduction_372 HappyAbsSyn
happy_x_3
	p
happy_x_2
	HappyAbsSyn
happy_x_1
	 =  case HappyAbsSyn -> HappyWrap145
happyOut145 HappyAbsSyn
happy_x_1 of { (HappyWrap145 [Named (Type PName)]
happy_var_1) -> 
	case HappyAbsSyn -> HappyWrap144
happyOut144 HappyAbsSyn
happy_x_3 of { (HappyWrap144 Named (Type PName)
happy_var_3) -> 
	[Named (Type PName)] -> HappyAbsSyn
happyIn145
		 (Named (Type PName)
happy_var_3 Named (Type PName) -> [Named (Type PName)] -> [Named (Type PName)]
forall a. a -> [a] -> [a]
: [Named (Type PName)]
happy_var_1
	)}}

happyNewToken :: Int# -> Happy_IntList -> HappyStk HappyAbsSyn -> ParseM HappyAbsSyn
happyNewToken Int#
action Happy_IntList
sts HappyStk HappyAbsSyn
stk
	= (Located Token -> ParseM HappyAbsSyn) -> ParseM HappyAbsSyn
forall a. (Located Token -> ParseM a) -> ParseM a
lexerP(\Located Token
tk -> 
	let cont :: Int# -> ParseM HappyAbsSyn
cont Int#
i = Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyDoAction Int#
i Located Token
tk Int#
action Happy_IntList
sts HappyStk HappyAbsSyn
stk in
	case Located Token
tk of {
	Located Range
_ (Token TokenT
EOF Text
_) -> Int#
-> Located Token
-> Int#
-> Happy_IntList
-> HappyStk HappyAbsSyn
-> ParseM HappyAbsSyn
happyDoAction Int#
76# Located Token
tk Int#
action Happy_IntList
sts HappyStk HappyAbsSyn
stk;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (Num   {}) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
1#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (Frac  {}) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
2#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (StrLit {}) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
3#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (ChrLit {}) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
4#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (Ident [] Text
_) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
5#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token  Ident{}     Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
6#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token  (Selector SelectorType
_) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
7#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_include)   Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
8#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_import)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
9#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_as)        Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
10#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_hiding)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
11#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_private)   Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
12#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_parameter) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
13#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_property)  Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
14#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_infix)     Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
15#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_infixl)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
16#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_infixr)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
17#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_type   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
18#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_newtype) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
19#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_enum) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
20#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_module ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
21#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_submodule ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
22#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_where  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
23#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_let    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
24#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_if     ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
25#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_then   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
26#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_else   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
27#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_case) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
28#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_of) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
29#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_interface) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
30#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_x)       Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
31#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_down)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
32#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_by)      Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
33#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_primitive) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
34#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_constraint) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
35#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_foreign) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
36#;
	Located Range
happy_dollar_dollar (Token (KW TokenKW
KW_Prop) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
37#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
BracketL) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
38#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
BracketR) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
39#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
ArrL    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
40#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
DotDot  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
41#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
DotDotDot) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
42#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
DotDotLt) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
43#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
DotDotGt) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
44#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Bar     ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
45#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Lt      ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
46#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Gt      ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
47#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
ParenL  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
48#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
ParenR  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
49#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Comma   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
50#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Semi    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
51#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
CurlyL  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
52#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
CurlyR  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
53#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
TriL    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
54#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
TriR    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
55#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
EqDef   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
56#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
BackTick) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
57#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Colon   ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
58#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
ArrR    ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
59#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
FatArrR ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
60#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Lambda  ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
61#;
	Located Range
happy_dollar_dollar (Token (Sym TokenSym
Underscore ) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
62#;
	Located Range
happy_dollar_dollar (Token (Virt TokenV
VCurlyL)  Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
63#;
	Located Range
happy_dollar_dollar (Token (Virt TokenV
VCurlyR)  Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
64#;
	Located Range
happy_dollar_dollar (Token (Virt TokenV
VSemi)    Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
65#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Plus)  Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
66#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Mul)   Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
67#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Exp)   Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
68#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Minus) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
69#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Complement) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
70#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
Hash) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
71#;
	Located Range
happy_dollar_dollar (Token (Op TokenOp
At) Text
_) -> Int# -> ParseM HappyAbsSyn
cont Int#
72#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (Op (Other [] Text
_)) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
73#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (Op  Other{}   )  Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
74#;
	happy_dollar_dollar :: Located Token
happy_dollar_dollar@(Located Range
_ (Token (White TokenW
DocStr) Text
_)) -> Int# -> ParseM HappyAbsSyn
cont Int#
75#;
	Located Token
_ -> (Located Token, [String]) -> ParseM HappyAbsSyn
forall a. (Located Token, [String]) -> ParseM a
happyError' (Located Token
tk, [])
	})

happyError_ :: [String] -> Int# -> Located Token -> ParseM a
happyError_ [String]
explist Int#
76# Located Token
tk = (Located Token, [String]) -> ParseM a
forall a. (Located Token, [String]) -> ParseM a
happyError' (Located Token
tk, [String]
explist)
happyError_ [String]
explist Int#
_ Located Token
tk = (Located Token, [String]) -> ParseM a
forall a. (Located Token, [String]) -> ParseM a
happyError' (Located Token
tk, [String]
explist)

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

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

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

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

happyThen1 :: () => ParseM a -> (a -> ParseM b) -> ParseM b
happyThen1 :: forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen1 = ParseM a -> (a -> ParseM b) -> ParseM b
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen
happyReturn1 :: () => a -> ParseM a
happyReturn1 :: forall a. a -> ParseM a
happyReturn1 = a -> ParseM a
forall a. a -> ParseM a
happyReturn
happyError' :: () => ((Located Token), [Prelude.String]) -> ParseM a
happyError' :: forall a. (Located Token, [String]) -> ParseM a
happyError' (Located Token, [String])
tk = (\(Located Token
tokens, [String]
explist) -> ParseM a
forall a. ParseM a
happyError) (Located Token, [String])
tk
top_module :: ParseM [Module PName]
top_module = ParseM [Module PName]
happySomeParser where
 happySomeParser :: ParseM [Module PName]
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM [Module PName]) -> ParseM [Module PName]
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
0#) (\HappyAbsSyn
x -> [Module PName] -> ParseM [Module PName]
forall a. a -> ParseM a
happyReturn (let {(HappyWrap15 [Module PName]
x') = HappyAbsSyn -> HappyWrap15
happyOut15 HappyAbsSyn
x} in [Module PName]
x'))

program :: ParseM (Program PName)
program = ParseM (Program PName)
happySomeParser where
 happySomeParser :: ParseM (Program PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Program PName))
-> ParseM (Program PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
1#) (\HappyAbsSyn
x -> Program PName -> ParseM (Program PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap32 Program PName
x') = HappyAbsSyn -> HappyWrap32
happyOut32 HappyAbsSyn
x} in Program PName
x'))

programLayout :: ParseM (Program PName)
programLayout = ParseM (Program PName)
happySomeParser where
 happySomeParser :: ParseM (Program PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Program PName))
-> ParseM (Program PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
2#) (\HappyAbsSyn
x -> Program PName -> ParseM (Program PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap33 Program PName
x') = HappyAbsSyn -> HappyWrap33
happyOut33 HappyAbsSyn
x} in Program PName
x'))

expr :: ParseM (Expr PName)
expr = ParseM (Expr PName)
happySomeParser where
 happySomeParser :: ParseM (Expr PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Expr PName)) -> ParseM (Expr PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
3#) (\HappyAbsSyn
x -> Expr PName -> ParseM (Expr PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap73 Expr PName
x') = HappyAbsSyn -> HappyWrap73
happyOut73 HappyAbsSyn
x} in Expr PName
x'))

decl :: ParseM (Decl PName)
decl = ParseM (Decl PName)
happySomeParser where
 happySomeParser :: ParseM (Decl PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Decl PName)) -> ParseM (Decl PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
4#) (\HappyAbsSyn
x -> Decl PName -> ParseM (Decl PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap49 Decl PName
x') = HappyAbsSyn -> HappyWrap49
happyOut49 HappyAbsSyn
x} in Decl PName
x'))

decls :: ParseM [Decl PName]
decls = ParseM [Decl PName]
happySomeParser where
 happySomeParser :: ParseM [Decl PName]
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM [Decl PName]) -> ParseM [Decl PName]
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
5#) (\HappyAbsSyn
x -> [Decl PName] -> ParseM [Decl PName]
forall a. a -> ParseM a
happyReturn (let {(HappyWrap64 [Decl PName]
x') = HappyAbsSyn -> HappyWrap64
happyOut64 HappyAbsSyn
x} in [Decl PName]
x'))

declsLayout :: ParseM [Decl PName]
declsLayout = ParseM [Decl PName]
happySomeParser where
 happySomeParser :: ParseM [Decl PName]
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM [Decl PName]) -> ParseM [Decl PName]
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
6#) (\HappyAbsSyn
x -> [Decl PName] -> ParseM [Decl PName]
forall a. a -> ParseM a
happyReturn (let {(HappyWrap66 [Decl PName]
x') = HappyAbsSyn -> HappyWrap66
happyOut66 HappyAbsSyn
x} in [Decl PName]
x'))

letDecl :: ParseM (Decl PName)
letDecl = ParseM (Decl PName)
happySomeParser where
 happySomeParser :: ParseM (Decl PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Decl PName)) -> ParseM (Decl PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
7#) (\HappyAbsSyn
x -> Decl PName -> ParseM (Decl PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap51 Decl PName
x') = HappyAbsSyn -> HappyWrap51
happyOut51 HappyAbsSyn
x} in Decl PName
x'))

repl :: ParseM (ReplInput PName)
repl = ParseM (ReplInput PName)
happySomeParser where
 happySomeParser :: ParseM (ReplInput PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (ReplInput PName))
-> ParseM (ReplInput PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
8#) (\HappyAbsSyn
x -> ReplInput PName -> ParseM (ReplInput PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap67 ReplInput PName
x') = HappyAbsSyn -> HappyWrap67
happyOut67 HappyAbsSyn
x} in ReplInput PName
x'))

schema :: ParseM (Schema PName)
schema = ParseM (Schema PName)
happySomeParser where
 happySomeParser :: ParseM (Schema PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Schema PName)) -> ParseM (Schema PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
9#) (\HappyAbsSyn
x -> Schema PName -> ParseM (Schema PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap120 Schema PName
x') = HappyAbsSyn -> HappyWrap120
happyOut120 HappyAbsSyn
x} in Schema PName
x'))

modName :: ParseM (Located ModName)
modName = ParseM (Located ModName)
happySomeParser where
 happySomeParser :: ParseM (Located ModName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Located ModName))
-> ParseM (Located ModName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
10#) (\HappyAbsSyn
x -> Located ModName -> ParseM (Located ModName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap140 Located ModName
x') = HappyAbsSyn -> HappyWrap140
happyOut140 HappyAbsSyn
x} in Located ModName
x'))

helpName :: ParseM (Located PName)
helpName = ParseM (Located PName)
happySomeParser where
 happySomeParser :: ParseM (Located PName)
happySomeParser = ParseM HappyAbsSyn
-> (HappyAbsSyn -> ParseM (Located PName))
-> ParseM (Located PName)
forall a b. ParseM a -> (a -> ParseM b) -> ParseM b
happyThen (Int# -> ParseM HappyAbsSyn
happyParse Int#
11#) (\HappyAbsSyn
x -> Located PName -> ParseM (Located PName)
forall a. a -> ParseM a
happyReturn (let {(HappyWrap142 Located PName
x') = HappyAbsSyn -> HappyWrap142
happyOut142 HappyAbsSyn
x} in Located PName
x'))

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


parseModName :: String -> Maybe ModName
parseModName :: String -> Maybe ModName
parseModName String
txt =
  case Config
-> ParseM (Located ModName)
-> String
-> Either ParseError (Located ModName)
forall a. Config -> ParseM a -> String -> Either ParseError a
parseString Config
defaultConfig { cfgModuleScope = False } ParseM (Located ModName)
modName String
txt of
    Right Located ModName
a -> ModName -> Maybe ModName
forall a. a -> Maybe a
Just (Located ModName -> ModName
forall a. Located a -> a
thing Located ModName
a)
    Left ParseError
_  -> Maybe ModName
forall a. Maybe a
Nothing

parseHelpName :: String -> Maybe PName
parseHelpName :: String -> Maybe PName
parseHelpName String
txt =
  case Config
-> ParseM (Located PName)
-> String
-> Either ParseError (Located PName)
forall a. Config -> ParseM a -> String -> Either ParseError a
parseString Config
defaultConfig { cfgModuleScope = False } ParseM (Located PName)
helpName String
txt of
    Right Located PName
a -> PName -> Maybe PName
forall a. a -> Maybe a
Just (Located PName -> PName
forall a. Located a -> a
thing Located PName
a)
    Left ParseError
_  -> Maybe PName
forall a. Maybe a
Nothing

addImplicitIncludes :: Config -> Program PName -> Program PName
addImplicitIncludes :: Config -> Program PName -> Program PName
addImplicitIncludes Config
cfg (Program [TopDecl PName]
ds) =
  [TopDecl PName] -> Program PName
forall name. [TopDecl name] -> Program name
Program ([TopDecl PName] -> Program PName)
-> [TopDecl PName] -> Program PName
forall a b. (a -> b) -> a -> b
$ (String -> TopDecl PName) -> [String] -> [TopDecl PName]
forall a b. (a -> b) -> [a] -> [b]
map String -> TopDecl PName
forall {name}. String -> TopDecl name
path (Config -> [String]
cfgAutoInclude Config
cfg) [TopDecl PName] -> [TopDecl PName] -> [TopDecl PName]
forall a. [a] -> [a] -> [a]
++ [TopDecl PName]
ds
  where path :: String -> TopDecl name
path String
p = Located String -> TopDecl name
forall name. Located String -> TopDecl name
Include Located { srcRange :: Range
srcRange = Range
rng, thing :: String
thing = String
p }
        rng :: Range
rng    = Range { source :: String
source = Config -> String
cfgSource Config
cfg, from :: Position
from = Position
start, to :: Position
to = Position
start }


parseProgramWith :: Config -> Text -> Either ParseError (Program PName)
parseProgramWith :: Config -> Text -> Either ParseError (Program PName)
parseProgramWith Config
cfg Text
s = case Text -> Either ParseError (Program PName)
res Text
s of
                          Left ParseError
err -> ParseError -> Either ParseError (Program PName)
forall a b. a -> Either a b
Left ParseError
err
                          Right Program PName
a  -> Program PName -> Either ParseError (Program PName)
forall a b. b -> Either a b
Right (Config -> Program PName -> Program PName
addImplicitIncludes Config
cfg Program PName
a)
  where
  res :: Text -> Either ParseError (Program PName)
res = Config
-> ParseM (Program PName)
-> Text
-> Either ParseError (Program PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg (ParseM (Program PName)
 -> Text -> Either ParseError (Program PName))
-> ParseM (Program PName)
-> Text
-> Either ParseError (Program PName)
forall a b. (a -> b) -> a -> b
$ case Config -> Layout
cfgLayout Config
cfg of
                      Layout
Layout   -> ParseM (Program PName)
programLayout
                      Layout
NoLayout -> ParseM (Program PName)
program

parseModule :: Config -> Text -> Either ParseError [Module PName]
parseModule :: Config -> Text -> Either ParseError [Module PName]
parseModule Config
cfg = Config
-> ParseM [Module PName]
-> Text
-> Either ParseError [Module PName]
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = True } ParseM [Module PName]
top_module

parseProgram :: Layout -> Text -> Either ParseError (Program PName)
parseProgram :: Layout -> Text -> Either ParseError (Program PName)
parseProgram Layout
l = Config -> Text -> Either ParseError (Program PName)
parseProgramWith Config
defaultConfig { cfgLayout = l }

parseExprWith :: Config -> Text -> Either ParseError (Expr PName)
parseExprWith :: Config -> Text -> Either ParseError (Expr PName)
parseExprWith Config
cfg = Config
-> ParseM (Expr PName) -> Text -> Either ParseError (Expr PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = False } ParseM (Expr PName)
expr

parseExpr :: Text -> Either ParseError (Expr PName)
parseExpr :: Text -> Either ParseError (Expr PName)
parseExpr = Config -> Text -> Either ParseError (Expr PName)
parseExprWith Config
defaultConfig

parseDeclWith :: Config -> Text -> Either ParseError (Decl PName)
parseDeclWith :: Config -> Text -> Either ParseError (Decl PName)
parseDeclWith Config
cfg = Config
-> ParseM (Decl PName) -> Text -> Either ParseError (Decl PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = False } ParseM (Decl PName)
decl

parseDecl :: Text -> Either ParseError (Decl PName)
parseDecl :: Text -> Either ParseError (Decl PName)
parseDecl = Config -> Text -> Either ParseError (Decl PName)
parseDeclWith Config
defaultConfig

parseDeclsWith :: Config -> Text -> Either ParseError [Decl PName]
parseDeclsWith :: Config -> Text -> Either ParseError [Decl PName]
parseDeclsWith Config
cfg = Config
-> ParseM [Decl PName] -> Text -> Either ParseError [Decl PName]
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = ms } ParseM [Decl PName]
decls'
  where (Bool
ms, ParseM [Decl PName]
decls') = case Config -> Layout
cfgLayout Config
cfg of
                         Layout
Layout   -> (Bool
True, ParseM [Decl PName]
declsLayout)
                         Layout
NoLayout -> (Bool
False, ParseM [Decl PName]
decls)

parseDecls :: Text -> Either ParseError [Decl PName]
parseDecls :: Text -> Either ParseError [Decl PName]
parseDecls = Config -> Text -> Either ParseError [Decl PName]
parseDeclsWith Config
defaultConfig

parseLetDeclWith :: Config -> Text -> Either ParseError (Decl PName)
parseLetDeclWith :: Config -> Text -> Either ParseError (Decl PName)
parseLetDeclWith Config
cfg = Config
-> ParseM (Decl PName) -> Text -> Either ParseError (Decl PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = False } ParseM (Decl PName)
letDecl

parseLetDecl :: Text -> Either ParseError (Decl PName)
parseLetDecl :: Text -> Either ParseError (Decl PName)
parseLetDecl = Config -> Text -> Either ParseError (Decl PName)
parseLetDeclWith Config
defaultConfig

parseReplWith :: Config -> Text -> Either ParseError (ReplInput PName)
parseReplWith :: Config -> Text -> Either ParseError (ReplInput PName)
parseReplWith Config
cfg = Config
-> ParseM (ReplInput PName)
-> Text
-> Either ParseError (ReplInput PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = False } ParseM (ReplInput PName)
repl

parseRepl :: Text -> Either ParseError (ReplInput PName)
parseRepl :: Text -> Either ParseError (ReplInput PName)
parseRepl = Config -> Text -> Either ParseError (ReplInput PName)
parseReplWith Config
defaultConfig

parseSchemaWith :: Config -> Text -> Either ParseError (Schema PName)
parseSchemaWith :: Config -> Text -> Either ParseError (Schema PName)
parseSchemaWith Config
cfg = Config
-> ParseM (Schema PName)
-> Text
-> Either ParseError (Schema PName)
forall a. Config -> ParseM a -> Text -> Either ParseError a
parse Config
cfg { cfgModuleScope = False } ParseM (Schema PName)
schema

parseSchema :: Text -> Either ParseError (Schema PName)
parseSchema :: Text -> Either ParseError (Schema PName)
parseSchema = Config -> Text -> Either ParseError (Schema PName)
parseSchemaWith Config
defaultConfig

-- vim: ft=haskell
{-# 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.