packages feed

BNFC 2.9.4 → 2.9.4.1

raw patch · 26 files changed

+971/−1106 lines, 26 filesdep +transformersdep −doctestdep ~basedep ~mtlsetup-changedPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependencies added: transformers

Dependencies removed: doctest

Dependency ranges changed: base, mtl

API changes (from Hackage documentation)

+ BNFC.Options: Ansi :: Ansi
+ BNFC.Options: BeyondAnsi :: Ansi
+ BNFC.Options: [ansi] :: SharedOptions -> Ansi
+ BNFC.Options: data Ansi
+ BNFC.Options: instance GHC.Classes.Eq BNFC.Options.Ansi
+ BNFC.Options: instance GHC.Classes.Ord BNFC.Options.Ansi
+ BNFC.Options: instance GHC.Show.Show BNFC.Options.Ansi
- BNFC.Lex: alexScan :: AlexInput -> Int -> AlexReturn (Posn -> String -> Token)
+ BNFC.Lex: alexScan :: (Posn, Char, [Byte], String) -> Int -> AlexReturn (Posn -> String -> Token)
- BNFC.Lex: alexScanUser :: t -> AlexInput -> Int -> AlexReturn (Posn -> String -> Token)
+ BNFC.Lex: alexScanUser :: t -> (Posn, Char, [Byte], String) -> Int -> AlexReturn (Posn -> String -> Token)
- BNFC.Options: Options :: FilePath -> String -> FilePath -> Bool -> Target -> Maybe String -> InPackage -> RecordPositions -> Bool -> Bool -> Bool -> AlexVersion -> TokenText -> HappyMode -> Int -> Bool -> OCamlParser -> JavaLexerParser -> Bool -> Bool -> SharedOptions
+ BNFC.Options: Options :: FilePath -> String -> FilePath -> Bool -> Target -> Maybe String -> InPackage -> RecordPositions -> Ansi -> Bool -> Bool -> Bool -> AlexVersion -> TokenText -> HappyMode -> Int -> Bool -> OCamlParser -> JavaLexerParser -> Bool -> Bool -> SharedOptions

Files

BNFC.cabal view
@@ -1,9 +1,13 @@ Name: BNFC-Version: 2.9.4+Version: 2.9.4.1 cabal-version: 2.0-  -- >=1.24 for the custom-setup section-  -- >=2.0  for the build-tools: hspec-discover-build-type: Custom+  -- >=2.0  for build-tool-depends: hspec-discover+  -- Andreas, 2022-12-16, issue #429:+  -- Putting cabal-version: x.y could mean putting extra-deps: [Cabal-x.y]+  -- into stack-a.b.c.yaml if that snapshot does not have Cabal at least x.y.+  -- This will then require a Setup.[l]hs file with stack even for build-type: Simple.+  -- Shunning this extra effort, we only support stack snapshot that have a sufficient Cabal.+build-type: Simple category: Parsing Copyright: (c) Andreas Abel, Jonas Almström Duregård, Krasimir Angelov, Jean-Philippe Bernardy, Björn Bringert, Johan Broberg, Kyle Butt, Paul Callaghan, Grégoire Détrez, Markus Forsberg, Ola Frid, Peter Gammie, Thomas Hallgren, Pascal Hof, Simon Huber, Patrik Jansson, Kristofer Johannisson, Antti-Juhani Kaijanaho, Andreas Lööw, Justin Meiners, Kent Mein, Ulf Norell, Gabriele Paganelli, Michael Pellauer, Fabian Ruch, and Aarne Ranta 2002 - 2021. Free software under the BSD 3-clause license. License: BSD3@@ -26,16 +30,18 @@   an XML representation,   a LaTeX file containing a readable specification of the language. +-- Support range when build with cabal tested-with:-  GHC == 7.10.3-  GHC == 8.0.2-  GHC == 8.2.2-  GHC == 8.4.4-  GHC == 8.6.5-  GHC == 8.8.4-  GHC == 8.10.7+  GHC == 9.4.3+  GHC == 9.2.5   GHC == 9.0.2-  GHC == 9.2.1+  GHC == 8.10.7+  GHC == 8.8.4+  GHC == 8.6.5+  GHC == 8.4.4+  GHC == 8.2.2+  GHC == 8.0.2+  GHC == 7.10.3  Extra-source-files:   README.md@@ -44,41 +50,21 @@   Makefile   src/BNFC.cf   src/Makefile-  stack-9.2.1.yaml+  -- Support range when build with stack+  stack-9.4.3.yaml+  stack-9.2.5.yaml   stack-9.0.2.yaml-  stack-9.0.1.yaml   stack-8.10.7.yaml-  stack-8.10.4.yaml-  stack-8.10.3.yaml-  stack-8.10.2.yaml   stack-8.8.4.yaml-  stack-8.8.3.yaml-  stack-8.8.2.yaml   stack-8.6.5.yaml-  stack-8.6.4.yaml   stack-8.4.4.yaml   stack-8.2.2.yaml-  stack-8.0.2.yaml-  stack-7.10.3.yaml  Source-repository head   type:     git   location: git://github.com/BNFC/bnfc.git   subdir:   source -Source-repository this-  type:     git-  location: git://github.com/BNFC/bnfc.git-  subdir:   source-  tag:      v2.9.4---- Setup using https://github.com/haskellari/cabal-doctest-custom-setup- setup-depends:-   base >= 4 && <5,-   Cabal >= 2.0,-   cabal-doctest >= 1 && < 1.1- executable bnfc   default-language:  Haskell2010   main-is:           Main.hs@@ -118,6 +104,8 @@     , process     , string-qq     , time+    , transformers+        -- for Control.Monad.IO.Class, which is in base >= 4.9 but not below   if impl(ghc < 8.0)     build-depends:       semigroups@@ -130,10 +118,12 @@     -Wall     -fno-warn-dodgy-imports     -fno-warn-name-shadowing+    -- for cabal repl -w doctest :+    -fno-warn-type-defaults   if impl(ghc >= 8.0)     ghc-options:       -Wcompat-  if impl(ghc == 9.2.1)+  if impl(ghc >= 9.2)     ghc-options:       -Wno-incomplete-uni-patterns   default-extensions:@@ -152,6 +142,7 @@     RecordWildCards     ScopedTypeVariables     TupleSections+    TypeOperators   -- 2021-01-22 The following autogen section seems wrong, breaks Haskell CI:   -- E.g. https://github.com/BNFC/bnfc/runs/1750769442?check_suite_focus=true   -- autogen-modules:@@ -340,18 +331,3 @@   autogen-modules:     -- Generated by cabal     Paths_BNFC--test-suite doctests-  default-language:   Haskell2010-  type:               exitcode-stdio-1.0-  ghc-options:        -threaded-  default-extensions: CPP-  main-is:            doctests.hs-  build-depends:      base-    , filepath-    , BNFC-      -- The dependency BNFC ensures the build of the library first-      -- and hence, the presence of Build_doctests.-      -- See https://hackage.haskell.org/package/cabal-doctest-    , doctest >= 0.8-  hs-source-dirs:     test
CHANGELOG.md view
@@ -1,8 +1,20 @@+# 2.9.4.1++Andreas Abel <andreas.abel@gu.se>,  December 2022++* C/C++: allow space characters in token definitions again [[#431](https://github.com/BNFC/bnfc/issues/431)]+  (regression in 2.9.0)+* installation: get rid of `cabal-doctest` dependency [[#429](https://github.com/BNFC/bnfc/issues/429)]++Tested GHC versions:+* with `cabal`, GHC 7.10 - 9.4+* with `stack`, GHC 8.2  - 9.4+ # 2.9.4  Andreas Abel <andreas.abel@gu.se>,  February 2022 -* LBNF: empty tokens types are now forbidden [#388]+* LBNF: empty token types are now forbidden [#388] * Agda: support position information via `--functor` [#405] * C/C++: use `size_t` and `-Wsign-conversion` [#391] * C++: repair broken `--line-numbers` [#390], regression in 2.9.2 by [#349]
Makefile view
@@ -5,36 +5,49 @@ # Cabal options (to be overwritten from the command line) CABAL_OPTS           = CABAL_BUILDDIR_SUFFIX=-CABAL_BUILD_OPTS     = --builddir=dist-ghc-$(GHC_VERSION)$(CABAL_BUILDDIR_SUFFIX)+CABAL_BUILD_OPTS     = --enable-tests+# --builddir=dist-ghc-$(GHC_VERSION)$(CABAL_BUILDDIR_SUFFIX) CABAL_CONFIGURE_OPTS = --enable-tests-CABAL_INSTALL_OPTS   = $(CABAL_CONFIGURE_OPTS) $(CABAL_BUILD_OPTS)+CABAL_INSTALL_OPTS   = $(CABAL_CONFIGURE_OPTS) $(CABAL_BUILD_OPTS) --overwrite-policy=always CABAL_TEST_OPTS      = $(CABAL_BUILD_OPTS)  CABAL                = cabal $(CABAL_OPTS)-CABAL_CONFIGURE      = $(CABAL) v1-configure $(CABAL_CONFIGURE_OPTS)-CABAL_BUILD          = $(CABAL) v1-build     $(CABAL_BUILD_OPTS)-CABAL_INSTALL        = $(CABAL) v1-install   $(CABAL_INSTALL_OPTS)-CABAL_TEST           = $(CABAL) v1-test      $(CABAL_TEST_OPTS)+CABAL_CONFIGURE      = $(CABAL) configure $(CABAL_CONFIGURE_OPTS)+CABAL_BUILD          = $(CABAL) build     $(CABAL_BUILD_OPTS)+CABAL_INSTALL        = $(CABAL) install   $(CABAL_INSTALL_OPTS)+CABAL_TEST           = $(CABAL) test      $(CABAL_TEST_OPTS)  # Name for binary distribution (e.g. bnfc-2.4.5-linux32) BDIST_TAG=bnfc-${BNFC_VERSION}-$(shell uname -s)-$(shell uname -m)  .PHONY: default build install doc test bdist show-version debug weed TAGS -default: install test+default: build cabal-test doctest-quick  build:-	$(CABAL_CONFIGURE) && $(CABAL_BUILD)+	$(CABAL_BUILD)  install: 	$(CABAL_INSTALL) -test:+test: build cabal-test doctest++cabal-test: 	$(CABAL_TEST) -haddock doc:-	$(CABAL) v1-haddock --hyperlink-source-# --executables --internal+doctest: build doctest-install doctest-quick++doctest-install:+	cabal install doctest --program-suffix=-${GHC_VERSION}++doctest-quick:+	cabal repl -w doctest-${GHC_VERSION}+# --ghc-options=-Wno-type-defaults needed due to OverloadedStrings.+# But it does not get used here, needs to go into cabal file.+# see: https://github.com/sol/doctest/issues/390++haddock:+	$(CABAL) haddock  # See https://hackage.haskell.org/package/weeder # weeder can find dead code starting from the .hie files
README.md view
@@ -34,8 +34,8 @@  You need a running installation of [stack](https://docs.haskellstack.org/en/stable/install_and_upgrade/).-To install and run the latest version of [bnfc from-stackage](https://www.stackage.org/package/BNFC),+To install and run the latest version of+[bnfc from stackage](https://www.stackage.org/package/BNFC), enter at the command line:  ```@@ -48,7 +48,7 @@ You need a running installation of a recent version of [GHC](https://www.haskell.org/ghc/) and [Cabal](https://www.haskell.org/cabal/), most easily available via the-[Haskell Platform](https://www.haskell.org/platform/).  To install and+[GHCup](https://www.haskell.org/ghcup/).  To install [bnfc from hackage](https://hackage.haskell.org/package/BNFC), enter at the command line: ```@@ -58,9 +58,9 @@  ### Installing the development version -To install the [development version of-bnfc](https://github.com/BNFC/bnfc) with the latest bugfixes (and-regressions ;-)):+To install the+[development version of bnfc](https://github.com/BNFC/bnfc)+with the latest bugfixes (and regressions ;-)): ```   git clone https://github.com/BNFC/bnfc.git   cd bnfc/source@@ -71,9 +71,9 @@ ``` or ```-  stack install --stack-yaml stack-8.10.3.yaml+  stack install --stack-yaml stack-8.10.7.yaml ```-(replace `8.10.3` with your GHC version, and if you want to build with+(replace `8.10.7` with your GHC version, and if you want to build with your installed GHC then add flag `--system-ghc`).  Mini tutorial
− Setup.lhs
@@ -1,10 +0,0 @@-#!/usr/bin/env runghc--> module Main where->-> import Distribution.Extra.Doctest (defaultMainWithDoctests)->-> main :: IO ()-> main = defaultMainWithDoctests "doctests"--This generates the module Build_doctests.
src/BNFC/Backend/Base.hs view
@@ -16,9 +16,11 @@   ) where  import Control.Arrow    ( (&&&) )-import Control.Monad.Writer+import Control.Monad.IO.Class ( liftIO )+import Control.Monad.Writer   ( WriterT, execWriterT, tell )  import Data.Char        ( isSpace )+import Data.Foldable    ( forM_ ) import Data.Function    ( on ) import qualified Data.List as List 
src/BNFC/Backend/C/RegToFlex.hs view
@@ -81,4 +81,4 @@   | otherwise               = showLitChar c ""   where   reserved :: String-  reserved = "$+-*=<>[](){}!?.,;:^~|&%#/\\$_@\""+  reserved = " $+-*=<>[](){}!?.,;:^~|&%#/\\$_@\""
src/BNFC/Lex.hs view
@@ -341,13 +341,13 @@                         , 0x80 + oc Data.Bits..&. 0x3f                         ] -alex_action_3 =  tok (eitherResIdent TV) -alex_action_4 =  tok (eitherResIdent T_Identifier) -alex_action_5 =  tok (eitherResIdent TV) -alex_action_6 =  tok (TL . unescapeInitTail) -alex_action_7 =  tok TC -alex_action_8 =  tok TI -alex_action_9 =  tok TD +alex_action_3 =  tok (eitherResIdent TV)+alex_action_4 =  tok (eitherResIdent T_Identifier)+alex_action_5 =  tok (eitherResIdent TV)+alex_action_6 =  tok (TL . unescapeInitTail)+alex_action_7 =  tok TC+alex_action_8 =  tok TI+alex_action_9 =  tok TD {-# LINE 1 "templates/GenericTemplate.hs" #-} -- ----------------------------------------------------------------------------- -- ALEX TEMPLATE@@ -565,32 +565,4 @@   = AlexAccNone   | AlexAcc Int   | AlexAccSkip---------------------------- 
src/BNFC/Options.hs view
@@ -13,6 +13,7 @@   , defaultOptions, isDefault, printOptions   , AlexVersion(..), HappyMode(..), OCamlParser(..), JavaLexerParser(..)   , RecordPositions(..), TokenText(..)+  , Ansi(..)   , InPackage   , removedIn290   , translateOldOptions@@ -97,9 +98,14 @@ data JavaLexerParser = JLexCup | JFlexCup | Antlr4     deriving (Eq,Show,Ord) +-- | Line numbers or not? data RecordPositions = RecordPositions | NoRecordPositions     deriving (Eq,Show,Ord) +-- | Restrict to ANSI standard (C/C++)?+data Ansi = Ansi | BeyondAnsi+    deriving (Eq, Ord, Show)+ -- | Package name (C++ and Java backends). type InPackage = Maybe String @@ -122,6 +128,7 @@   , make        :: Maybe String    -- ^ The name of the Makefile to generate or Nothing for no Makefile.   , inPackage   :: InPackage       -- ^ The hierarchical package to put the modules in, or Nothing.   , linenumbers :: RecordPositions -- ^ Add and set line_number field for syntax classes+  , ansi        :: Ansi            -- ^ Restrict to the ANSI language standard (C/C++)?   --- Haskell specific:   , inDir         :: Bool        -- ^ Option @-d@.   , functor       :: Bool        -- ^ Option @--functor@.  Make AST functorial?@@ -155,6 +162,7 @@   , make            = Nothing   , inPackage       = Nothing   , linenumbers     = NoRecordPositions+  , ansi            = BeyondAnsi   -- Haskell specific   , inDir           = False   , functor         = False@@ -211,6 +219,7 @@   , [ "--makefile=" ++ m  | m <- maybeToList $ make opts        ]   , [ "-p " ++ p          | p <- maybeToList $ inPackage opts   ]   , unlessDefault linenumbers opts $ const [ "-l" ]+  , unlessDefault ansi opts $ const [ "--ansi" ]   -- Haskell options:   , [ "-d"                | inDir opts                          ]   , [ "--functor"         | functor opts                        ]@@ -313,6 +322,10 @@         , "(Note: Java requires cup version 0.11b-2014-06-11 or greater.)"         ]     , [TargetC, TargetCpp, TargetJava] )+  , ( Option [] ["ansi"] (NoArg (\o -> o{ ansi = Ansi })) $ unlines+        [ "Restrict to ANSI language standard"+        ]+    , [TargetCpp] )  -- In the future maybe also: TargetC   , ( Option ['p'] ["name-space"]       (ReqArg (\n o -> o {inPackage = Just n}) "NAMESPACE")           "Prepend NAMESPACE to the package/module name"
src/BNFC/Par.hs view
@@ -303,870 +303,870 @@ happyTable = HappyA# "\x00\x00\x35\x00\x1d\x00\x35\x00\xa8\x00\x94\x00\x4b\x00\x4b\x00\x1a\x00\x96\x00\x97\x00\x36\x00\xff\xff\x4b\x00\x1e\x00\xa9\x00\x4b\x00\x1f\x00\x98\x00\x4c\x00\x78\x00\x9c\x00\x20\x00\x93\x00\x21\x00\x1a\x00\xb0\x00\x22\x00\x23\x00\xa6\x00\x40\x00\x57\x00\x37\x00\x36\x00\x37\x00\x25\x00\x26\x00\x24\x00\x25\x00\x1a\x00\x6f\x00\x1a\x00\x41\x00\x58\x00\x57\x00\x59\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x65\x00\x1b\x00\x66\x00\x67\x00\x58\x00\x94\x00\x59\x00\x68\x00\x69\x00\x6a\x00\xff\xff\x6b\x00\x6c\x00\x57\x00\x9f\x00\x26\x00\x37\x00\x1a\x00\x42\x00\x43\x00\x36\x00\x37\x00\x37\x00\x1a\x00\x50\x00\x58\x00\x4f\x00\x59\x00\x50\x00\x61\x00\x62\x00\x63\x00\x64\x00\x53\x00\x65\x00\x37\x00\x66\x00\x67\x00\x1d\x00\x50\x00\x1a\x00\x68\x00\x69\x00\x6a\x00\x1a\x00\x6b\x00\x6c\x00\x54\x00\x51\x00\x52\x00\x1e\x00\x94\x00\x2d\x00\x1f\x00\x1a\x00\x55\x00\x37\x00\x1a\x00\x20\x00\x1a\x00\x21\x00\x36\x00\x1a\x00\x22\x00\x23\x00\x29\x00\x2a\x00\x28\x00\x26\x00\x9a\x00\x2a\x00\x28\x00\x26\x00\x24\x00\x25\x00\x1a\x00\x93\x00\x1a\x00\xff\xff\xb5\x00\x2a\x00\x28\x00\x26\x00\x91\x00\xba\x00\x2a\x00\x28\x00\x26\x00\x27\x00\x28\x00\x26\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x9e\x00\x28\x00\x26\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\xff\xff\x3d\x00\x8b\x00\x3e\x00\x7a\x00\xff\xff\x3d\x00\x7b\x00\x8e\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x3d\x00\x36\x00\x8b\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x50\x00\x8a\x00\x96\x00\x97\x00\x44\x00\x45\x00\x46\x00\x47\x00\x89\x00\x51\x00\x85\x00\x98\x00\x44\x00\x45\x00\x46\x00\x8c\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x2d\x00\x2e\x00\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x2f\x00\x30\x00\x31\x00\x36\x00\x44\x00\x45\x00\x46\x00\xa4\x00\xff\xff\x50\x00\x85\x00\x32\x00\x33\x00\x37\x00\x32\x00\xa0\x00\x2d\x00\x2e\x00\x51\x00\xad\x00\x84\x00\x2f\x00\x30\x00\x31\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x82\x00\x32\x00\xb9\x00\x54\x00\x6f\x00\x70\x00\x6d\x00\x4a\x00\x45\x00\x46\x00\x83\x00\x5f\x00\x8d\x00\x45\x00\x46\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x43\x00\xff\xff\x37\x00\xa5\x00\x45\x00\x46\x00\x2d\x00\x2e\x00\xc2\x00\x45\x00\x46\x00\x2f\x00\x30\x00\x31\x00\x49\x00\x46\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x54\x00\x36\x00\x6c\x00\x6d\x00\x37\x00\x54\x00\x2e\x00\x54\x00\x5f\x00\x71\x00\x6d\x00\x37\x00\x5b\x00\x7b\x00\x48\x00\x5f\x00\x54\x00\x54\x00\xb6\x00\x6d\x00\x5e\x00\x2d\x00\x2e\x00\x78\x00\x5f\x00\x5f\x00\x2f\x00\x5c\x00\x31\x00\x2d\x00\x2e\x00\x37\x00\x2d\x00\x2e\x00\x2f\x00\x91\x00\x31\x00\x2f\x00\xc1\x00\x31\x00\x2d\x00\x2e\x00\x2d\x00\x2d\x00\x2e\x00\x2f\x00\xc5\x00\x31\x00\x5d\x00\x2e\x00\x31\x00\x2e\x00\x37\x00\x2e\x00\xff\xff\x59\x00\x5a\x00\x59\x00\x7c\x00\x59\x00\xa9\x00\x2e\x00\x2e\x00\x2e\x00\x2e\x00\x2e\x00\x2e\x00\x8f\x00\x7d\x00\xb4\x00\xb3\x00\xaa\x00\xbb\x00\x73\x00\xb3\x00\xff\xff\x37\x00\x36\x00\xb0\x00\x36\x00\xa4\x00\x43\x00\x37\x00\xa3\x00\x36\x00\x36\x00\xa2\x00\x9e\x00\x9d\x00\x93\x00\xc0\x00\xbf\x00\x94\x00\x36\x00\xc5\x00\xbe\x00\xc1\x00\x2d\x00\x99\x00\x2b\x00\x98\x00\x4d\x00\x87\x00\x86\x00\x75\x00\x80\x00\x7f\x00\xc3\x00\x7e\x00\x76\x00\x73\x00\x74\x00\xb1\x00\xae\x00\xac\x00\xab\x00\x00\x00\xbc\x00\xb8\x00\xb7\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#  happyReduceArr = Happy_Data_Array.array (24, 111) [-	(24 , happyReduce_24),-	(25 , happyReduce_25),-	(26 , happyReduce_26),-	(27 , happyReduce_27),-	(28 , happyReduce_28),-	(29 , happyReduce_29),-	(30 , happyReduce_30),-	(31 , happyReduce_31),-	(32 , happyReduce_32),-	(33 , happyReduce_33),-	(34 , happyReduce_34),-	(35 , happyReduce_35),-	(36 , happyReduce_36),-	(37 , happyReduce_37),-	(38 , happyReduce_38),-	(39 , happyReduce_39),-	(40 , happyReduce_40),-	(41 , happyReduce_41),-	(42 , happyReduce_42),-	(43 , happyReduce_43),-	(44 , happyReduce_44),-	(45 , happyReduce_45),-	(46 , happyReduce_46),-	(47 , happyReduce_47),-	(48 , happyReduce_48),-	(49 , happyReduce_49),-	(50 , happyReduce_50),-	(51 , happyReduce_51),-	(52 , happyReduce_52),-	(53 , happyReduce_53),-	(54 , happyReduce_54),-	(55 , happyReduce_55),-	(56 , happyReduce_56),-	(57 , happyReduce_57),-	(58 , happyReduce_58),-	(59 , happyReduce_59),-	(60 , happyReduce_60),-	(61 , happyReduce_61),-	(62 , happyReduce_62),-	(63 , happyReduce_63),-	(64 , happyReduce_64),-	(65 , happyReduce_65),-	(66 , happyReduce_66),-	(67 , happyReduce_67),-	(68 , happyReduce_68),-	(69 , happyReduce_69),-	(70 , happyReduce_70),-	(71 , happyReduce_71),-	(72 , happyReduce_72),-	(73 , happyReduce_73),-	(74 , happyReduce_74),-	(75 , happyReduce_75),-	(76 , happyReduce_76),-	(77 , happyReduce_77),-	(78 , happyReduce_78),-	(79 , happyReduce_79),-	(80 , happyReduce_80),-	(81 , happyReduce_81),-	(82 , happyReduce_82),-	(83 , happyReduce_83),-	(84 , happyReduce_84),-	(85 , happyReduce_85),-	(86 , happyReduce_86),-	(87 , happyReduce_87),-	(88 , happyReduce_88),-	(89 , happyReduce_89),-	(90 , happyReduce_90),-	(91 , happyReduce_91),-	(92 , happyReduce_92),-	(93 , happyReduce_93),-	(94 , happyReduce_94),-	(95 , happyReduce_95),-	(96 , happyReduce_96),-	(97 , happyReduce_97),-	(98 , happyReduce_98),-	(99 , happyReduce_99),-	(100 , happyReduce_100),-	(101 , happyReduce_101),-	(102 , happyReduce_102),-	(103 , happyReduce_103),-	(104 , happyReduce_104),-	(105 , happyReduce_105),-	(106 , happyReduce_106),-	(107 , happyReduce_107),-	(108 , happyReduce_108),-	(109 , happyReduce_109),-	(110 , happyReduce_110),-	(111 , happyReduce_111)-	]--happy_n_terms = 46 :: Prelude.Int-happy_n_nonterms = 29 :: Prelude.Int--happyReduce_24 = happySpecReduce_1  0# happyReduction_24-happyReduction_24 happy_x_1-	 =  case happyOutTok happy_x_1 of { (PT _ (TC happy_var_1)) -> -	happyIn27-		 ((read happy_var_1) :: Char-	)}--happyReduce_25 = happySpecReduce_1  1# happyReduction_25-happyReduction_25 happy_x_1-	 =  case happyOutTok happy_x_1 of { (PT _ (TD happy_var_1)) -> -	happyIn28-		 ((read happy_var_1) :: Double-	)}--happyReduce_26 = happySpecReduce_1  2# happyReduction_26-happyReduction_26 happy_x_1-	 =  case happyOutTok happy_x_1 of { (PT _ (TI happy_var_1)) -> -	happyIn29-		 ((read happy_var_1) :: Integer-	)}--happyReduce_27 = happySpecReduce_1  3# happyReduction_27-happyReduction_27 happy_x_1-	 =  case happyOutTok happy_x_1 of { (PT _ (TL happy_var_1)) -> -	happyIn30-		 (happy_var_1-	)}--happyReduce_28 = happySpecReduce_1  4# happyReduction_28-happyReduction_28 happy_x_1-	 =  case happyOutTok happy_x_1 of { happy_var_1 -> -	happyIn31-		 (BNFC.Abs.Identifier (mkPosToken happy_var_1)-	)}--happyReduce_29 = happySpecReduce_1  5# happyReduction_29-happyReduction_29 happy_x_1-	 =  case happyOut33 happy_x_1 of { (HappyWrap33 happy_var_1) -> -	happyIn32-		 (BNFC.Abs.Grammar happy_var_1-	)}--happyReduce_30 = happySpecReduce_0  6# happyReduction_30-happyReduction_30  =  happyIn33-		 ([]-	)--happyReduce_31 = happySpecReduce_1  6# happyReduction_31-happyReduction_31 happy_x_1-	 =  case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) -> -	happyIn33-		 ((:[]) happy_var_1-	)}--happyReduce_32 = happySpecReduce_3  6# happyReduction_32-happyReduction_32 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) -> -	case happyOut33 happy_x_3 of { (HappyWrap33 happy_var_3) -> -	happyIn33-		 ((:) happy_var_1 happy_var_3-	)}}--happyReduce_33 = happySpecReduce_2  6# happyReduction_33-happyReduction_33 happy_x_2-	happy_x_1-	 =  case happyOut33 happy_x_2 of { (HappyWrap33 happy_var_2) -> -	happyIn33-		 (happy_var_2-	)}--happyReduce_34 = happyReduce 5# 7# happyReduction_34-happyReduction_34 (happy_x_5 `HappyStk`-	happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut39 happy_x_1 of { (HappyWrap39 happy_var_1) -> -	case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) -> -	case happyOut36 happy_x_5 of { (HappyWrap36 happy_var_5) -> -	happyIn34-		 (BNFC.Abs.Rule happy_var_1 happy_var_3 happy_var_5-	) `HappyStk` happyRest}}}--happyReduce_35 = happySpecReduce_2  7# happyReduction_35-happyReduction_35 happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	happyIn34-		 (BNFC.Abs.Comment happy_var_2-	)}--happyReduce_36 = happySpecReduce_3  7# happyReduction_36-happyReduction_36 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	case happyOut30 happy_x_3 of { (HappyWrap30 happy_var_3) -> -	happyIn34-		 (BNFC.Abs.Comments happy_var_2 happy_var_3-	)}}--happyReduce_37 = happyReduce 6# 7# happyReduction_37-happyReduction_37 (happy_x_6 `HappyStk`-	happy_x_5 `HappyStk`-	happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut39 happy_x_2 of { (HappyWrap39 happy_var_2) -> -	case happyOut37 happy_x_4 of { (HappyWrap37 happy_var_4) -> -	case happyOut36 happy_x_6 of { (HappyWrap36 happy_var_6) -> -	happyIn34-		 (BNFC.Abs.Internal happy_var_2 happy_var_4 happy_var_6-	) `HappyStk` happyRest}}}--happyReduce_38 = happySpecReduce_3  7# happyReduction_38-happyReduction_38 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) -> -	case happyOut52 happy_x_3 of { (HappyWrap52 happy_var_3) -> -	happyIn34-		 (BNFC.Abs.Token happy_var_2 happy_var_3-	)}}--happyReduce_39 = happyReduce 4# 7# happyReduction_39-happyReduction_39 (happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut31 happy_x_3 of { (HappyWrap31 happy_var_3) -> -	case happyOut52 happy_x_4 of { (HappyWrap52 happy_var_4) -> -	happyIn34-		 (BNFC.Abs.PosToken happy_var_3 happy_var_4-	) `HappyStk` happyRest}}--happyReduce_40 = happySpecReduce_2  7# happyReduction_40-happyReduction_40 happy_x_2-	happy_x_1-	 =  case happyOut38 happy_x_2 of { (HappyWrap38 happy_var_2) -> -	happyIn34-		 (BNFC.Abs.Entryp happy_var_2-	)}--happyReduce_41 = happyReduce 4# 7# happyReduction_41-happyReduction_41 (happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut51 happy_x_2 of { (HappyWrap51 happy_var_2) -> -	case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) -> -	case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) -> -	happyIn34-		 (BNFC.Abs.Separator happy_var_2 happy_var_3 happy_var_4-	) `HappyStk` happyRest}}}--happyReduce_42 = happyReduce 4# 7# happyReduction_42-happyReduction_42 (happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut51 happy_x_2 of { (HappyWrap51 happy_var_2) -> -	case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) -> -	case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) -> -	happyIn34-		 (BNFC.Abs.Terminator happy_var_2 happy_var_3 happy_var_4-	) `HappyStk` happyRest}}}--happyReduce_43 = happyReduce 6# 7# happyReduction_43-happyReduction_43 (happy_x_6 `HappyStk`-	happy_x_5 `HappyStk`-	happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut37 happy_x_2 of { (HappyWrap37 happy_var_2) -> -	case happyOut30 happy_x_3 of { (HappyWrap30 happy_var_3) -> -	case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) -> -	case happyOut42 happy_x_5 of { (HappyWrap42 happy_var_5) -> -	case happyOut51 happy_x_6 of { (HappyWrap51 happy_var_6) -> -	happyIn34-		 (BNFC.Abs.Delimiters happy_var_2 happy_var_3 happy_var_4 happy_var_5 happy_var_6-	) `HappyStk` happyRest}}}}}--happyReduce_44 = happySpecReduce_3  7# happyReduction_44-happyReduction_44 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) -> -	case happyOut29 happy_x_3 of { (HappyWrap29 happy_var_3) -> -	happyIn34-		 (BNFC.Abs.Coercions happy_var_2 happy_var_3-	)}}--happyReduce_45 = happyReduce 4# 7# happyReduction_45-happyReduction_45 (happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) -> -	case happyOut50 happy_x_4 of { (HappyWrap50 happy_var_4) -> -	happyIn34-		 (BNFC.Abs.Rules happy_var_2 happy_var_4-	) `HappyStk` happyRest}}--happyReduce_46 = happyReduce 5# 7# happyReduction_46-happyReduction_46 (happy_x_5 `HappyStk`-	happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) -> -	case happyOut41 happy_x_3 of { (HappyWrap41 happy_var_3) -> -	case happyOut44 happy_x_5 of { (HappyWrap44 happy_var_5) -> -	happyIn34-		 (BNFC.Abs.Function happy_var_2 happy_var_3 happy_var_5-	) `HappyStk` happyRest}}}--happyReduce_47 = happySpecReduce_2  7# happyReduction_47-happyReduction_47 happy_x_2-	happy_x_1-	 =  case happyOut43 happy_x_2 of { (HappyWrap43 happy_var_2) -> -	happyIn34-		 (BNFC.Abs.Layout happy_var_2-	)}--happyReduce_48 = happySpecReduce_3  7# happyReduction_48-happyReduction_48 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut43 happy_x_3 of { (HappyWrap43 happy_var_3) -> -	happyIn34-		 (BNFC.Abs.LayoutStop happy_var_3-	)}--happyReduce_49 = happySpecReduce_2  7# happyReduction_49-happyReduction_49 happy_x_2-	happy_x_1-	 =  happyIn34-		 (BNFC.Abs.LayoutTop-	)--happyReduce_50 = happySpecReduce_1  8# happyReduction_50-happyReduction_50 happy_x_1-	 =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) -> -	happyIn35-		 (BNFC.Abs.Terminal happy_var_1-	)}--happyReduce_51 = happySpecReduce_1  8# happyReduction_51-happyReduction_51 happy_x_1-	 =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) -> -	happyIn35-		 (BNFC.Abs.NTerminal happy_var_1-	)}--happyReduce_52 = happySpecReduce_0  9# happyReduction_52-happyReduction_52  =  happyIn36-		 ([]-	)--happyReduce_53 = happySpecReduce_2  9# happyReduction_53-happyReduction_53 happy_x_2-	happy_x_1-	 =  case happyOut35 happy_x_1 of { (HappyWrap35 happy_var_1) -> -	case happyOut36 happy_x_2 of { (HappyWrap36 happy_var_2) -> -	happyIn36-		 ((:) happy_var_1 happy_var_2-	)}}--happyReduce_54 = happySpecReduce_3  10# happyReduction_54-happyReduction_54 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut37 happy_x_2 of { (HappyWrap37 happy_var_2) -> -	happyIn37-		 (BNFC.Abs.ListCat happy_var_2-	)}--happyReduce_55 = happySpecReduce_1  10# happyReduction_55-happyReduction_55 happy_x_1-	 =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) -> -	happyIn37-		 (BNFC.Abs.IdCat happy_var_1-	)}--happyReduce_56 = happySpecReduce_0  11# happyReduction_56-happyReduction_56  =  happyIn38-		 ([]-	)--happyReduce_57 = happySpecReduce_1  11# happyReduction_57-happyReduction_57 happy_x_1-	 =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) -> -	happyIn38-		 ((:[]) happy_var_1-	)}--happyReduce_58 = happySpecReduce_3  11# happyReduction_58-happyReduction_58 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) -> -	case happyOut38 happy_x_3 of { (HappyWrap38 happy_var_3) -> -	happyIn38-		 ((:) happy_var_1 happy_var_3-	)}}--happyReduce_59 = happySpecReduce_1  12# happyReduction_59-happyReduction_59 happy_x_1-	 =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) -> -	happyIn39-		 (BNFC.Abs.Id happy_var_1-	)}--happyReduce_60 = happySpecReduce_1  12# happyReduction_60-happyReduction_60 happy_x_1-	 =  happyIn39-		 (BNFC.Abs.Wild-	)--happyReduce_61 = happySpecReduce_2  12# happyReduction_61-happyReduction_61 happy_x_2-	happy_x_1-	 =  happyIn39-		 (BNFC.Abs.ListE-	)--happyReduce_62 = happySpecReduce_3  12# happyReduction_62-happyReduction_62 happy_x_3-	happy_x_2-	happy_x_1-	 =  happyIn39-		 (BNFC.Abs.ListCons-	)--happyReduce_63 = happyReduce 5# 12# happyReduction_63-happyReduction_63 (happy_x_5 `HappyStk`-	happy_x_4 `HappyStk`-	happy_x_3 `HappyStk`-	happy_x_2 `HappyStk`-	happy_x_1 `HappyStk`-	happyRest)-	 = happyIn39-		 (BNFC.Abs.ListOne-	) `HappyStk` happyRest--happyReduce_64 = happySpecReduce_1  13# happyReduction_64-happyReduction_64 happy_x_1-	 =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) -> -	happyIn40-		 (BNFC.Abs.Arg happy_var_1-	)}--happyReduce_65 = happySpecReduce_0  14# happyReduction_65-happyReduction_65  =  happyIn41-		 ([]-	)--happyReduce_66 = happySpecReduce_2  14# happyReduction_66-happyReduction_66 happy_x_2-	happy_x_1-	 =  case happyOut40 happy_x_1 of { (HappyWrap40 happy_var_1) -> -	case happyOut41 happy_x_2 of { (HappyWrap41 happy_var_2) -> -	happyIn41-		 ((:) happy_var_1 happy_var_2-	)}}--happyReduce_67 = happySpecReduce_0  15# happyReduction_67-happyReduction_67  =  happyIn42-		 (BNFC.Abs.SepNone-	)--happyReduce_68 = happySpecReduce_2  15# happyReduction_68-happyReduction_68 happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	happyIn42-		 (BNFC.Abs.SepTerm happy_var_2-	)}--happyReduce_69 = happySpecReduce_2  15# happyReduction_69-happyReduction_69 happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	happyIn42-		 (BNFC.Abs.SepSepar happy_var_2-	)}--happyReduce_70 = happySpecReduce_1  16# happyReduction_70-happyReduction_70 happy_x_1-	 =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) -> -	happyIn43-		 ((:[]) happy_var_1-	)}--happyReduce_71 = happySpecReduce_3  16# happyReduction_71-happyReduction_71 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) -> -	case happyOut43 happy_x_3 of { (HappyWrap43 happy_var_3) -> -	happyIn43-		 ((:) happy_var_1 happy_var_3-	)}}--happyReduce_72 = happySpecReduce_3  17# happyReduction_72-happyReduction_72 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut45 happy_x_1 of { (HappyWrap45 happy_var_1) -> -	case happyOut44 happy_x_3 of { (HappyWrap44 happy_var_3) -> -	happyIn44-		 (BNFC.Abs.Cons happy_var_1 happy_var_3-	)}}--happyReduce_73 = happySpecReduce_1  17# happyReduction_73-happyReduction_73 happy_x_1-	 =  case happyOut45 happy_x_1 of { (HappyWrap45 happy_var_1) -> -	happyIn44-		 (happy_var_1-	)}--happyReduce_74 = happySpecReduce_2  18# happyReduction_74-happyReduction_74 happy_x_2-	happy_x_1-	 =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) -> -	case happyOut48 happy_x_2 of { (HappyWrap48 happy_var_2) -> -	happyIn45-		 (BNFC.Abs.App happy_var_1 happy_var_2-	)}}--happyReduce_75 = happySpecReduce_1  18# happyReduction_75-happyReduction_75 happy_x_1-	 =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) -> -	happyIn45-		 (happy_var_1-	)}--happyReduce_76 = happySpecReduce_1  19# happyReduction_76-happyReduction_76 happy_x_1-	 =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) -> -	happyIn46-		 (BNFC.Abs.Var happy_var_1-	)}--happyReduce_77 = happySpecReduce_1  19# happyReduction_77-happyReduction_77 happy_x_1-	 =  case happyOut29 happy_x_1 of { (HappyWrap29 happy_var_1) -> -	happyIn46-		 (BNFC.Abs.LitInt happy_var_1-	)}--happyReduce_78 = happySpecReduce_1  19# happyReduction_78-happyReduction_78 happy_x_1-	 =  case happyOut27 happy_x_1 of { (HappyWrap27 happy_var_1) -> -	happyIn46-		 (BNFC.Abs.LitChar happy_var_1-	)}--happyReduce_79 = happySpecReduce_1  19# happyReduction_79-happyReduction_79 happy_x_1-	 =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) -> -	happyIn46-		 (BNFC.Abs.LitString happy_var_1-	)}--happyReduce_80 = happySpecReduce_1  19# happyReduction_80-happyReduction_80 happy_x_1-	 =  case happyOut28 happy_x_1 of { (HappyWrap28 happy_var_1) -> -	happyIn46-		 (BNFC.Abs.LitDouble happy_var_1-	)}--happyReduce_81 = happySpecReduce_3  19# happyReduction_81-happyReduction_81 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut47 happy_x_2 of { (HappyWrap47 happy_var_2) -> -	happyIn46-		 (BNFC.Abs.List happy_var_2-	)}--happyReduce_82 = happySpecReduce_3  19# happyReduction_82-happyReduction_82 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut44 happy_x_2 of { (HappyWrap44 happy_var_2) -> -	happyIn46-		 (happy_var_2-	)}--happyReduce_83 = happySpecReduce_0  20# happyReduction_83-happyReduction_83  =  happyIn47-		 ([]-	)--happyReduce_84 = happySpecReduce_1  20# happyReduction_84-happyReduction_84 happy_x_1-	 =  case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) -> -	happyIn47-		 ((:[]) happy_var_1-	)}--happyReduce_85 = happySpecReduce_3  20# happyReduction_85-happyReduction_85 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) -> -	case happyOut47 happy_x_3 of { (HappyWrap47 happy_var_3) -> -	happyIn47-		 ((:) happy_var_1 happy_var_3-	)}}--happyReduce_86 = happySpecReduce_1  21# happyReduction_86-happyReduction_86 happy_x_1-	 =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) -> -	happyIn48-		 ((:[]) happy_var_1-	)}--happyReduce_87 = happySpecReduce_2  21# happyReduction_87-happyReduction_87 happy_x_2-	happy_x_1-	 =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) -> -	case happyOut48 happy_x_2 of { (HappyWrap48 happy_var_2) -> -	happyIn48-		 ((:) happy_var_1 happy_var_2-	)}}--happyReduce_88 = happySpecReduce_1  22# happyReduction_88-happyReduction_88 happy_x_1-	 =  case happyOut36 happy_x_1 of { (HappyWrap36 happy_var_1) -> -	happyIn49-		 (BNFC.Abs.RHS happy_var_1-	)}--happyReduce_89 = happySpecReduce_1  23# happyReduction_89-happyReduction_89 happy_x_1-	 =  case happyOut49 happy_x_1 of { (HappyWrap49 happy_var_1) -> -	happyIn50-		 ((:[]) happy_var_1-	)}--happyReduce_90 = happySpecReduce_3  23# happyReduction_90-happyReduction_90 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut49 happy_x_1 of { (HappyWrap49 happy_var_1) -> -	case happyOut50 happy_x_3 of { (HappyWrap50 happy_var_3) -> -	happyIn50-		 ((:) happy_var_1 happy_var_3-	)}}--happyReduce_91 = happySpecReduce_1  24# happyReduction_91-happyReduction_91 happy_x_1-	 =  happyIn51-		 (BNFC.Abs.MNonempty-	)--happyReduce_92 = happySpecReduce_0  24# happyReduction_92-happyReduction_92  =  happyIn51-		 (BNFC.Abs.MEmpty-	)--happyReduce_93 = happySpecReduce_3  25# happyReduction_93-happyReduction_93 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut52 happy_x_1 of { (HappyWrap52 happy_var_1) -> -	case happyOut53 happy_x_3 of { (HappyWrap53 happy_var_3) -> -	happyIn52-		 (BNFC.Abs.RAlt happy_var_1 happy_var_3-	)}}--happyReduce_94 = happySpecReduce_1  25# happyReduction_94-happyReduction_94 happy_x_1-	 =  case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) -> -	happyIn52-		 (happy_var_1-	)}--happyReduce_95 = happySpecReduce_3  26# happyReduction_95-happyReduction_95 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) -> -	case happyOut54 happy_x_3 of { (HappyWrap54 happy_var_3) -> -	happyIn53-		 (BNFC.Abs.RMinus happy_var_1 happy_var_3-	)}}--happyReduce_96 = happySpecReduce_1  26# happyReduction_96-happyReduction_96 happy_x_1-	 =  case happyOut54 happy_x_1 of { (HappyWrap54 happy_var_1) -> -	happyIn53-		 (happy_var_1-	)}--happyReduce_97 = happySpecReduce_2  27# happyReduction_97-happyReduction_97 happy_x_2-	happy_x_1-	 =  case happyOut54 happy_x_1 of { (HappyWrap54 happy_var_1) -> -	case happyOut55 happy_x_2 of { (HappyWrap55 happy_var_2) -> -	happyIn54-		 (BNFC.Abs.RSeq happy_var_1 happy_var_2-	)}}--happyReduce_98 = happySpecReduce_1  27# happyReduction_98-happyReduction_98 happy_x_1-	 =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> -	happyIn54-		 (happy_var_1-	)}--happyReduce_99 = happySpecReduce_2  28# happyReduction_99-happyReduction_99 happy_x_2-	happy_x_1-	 =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> -	happyIn55-		 (BNFC.Abs.RStar happy_var_1-	)}--happyReduce_100 = happySpecReduce_2  28# happyReduction_100-happyReduction_100 happy_x_2-	happy_x_1-	 =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> -	happyIn55-		 (BNFC.Abs.RPlus happy_var_1-	)}--happyReduce_101 = happySpecReduce_2  28# happyReduction_101-happyReduction_101 happy_x_2-	happy_x_1-	 =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) -> -	happyIn55-		 (BNFC.Abs.ROpt happy_var_1-	)}--happyReduce_102 = happySpecReduce_1  28# happyReduction_102-happyReduction_102 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.REps-	)--happyReduce_103 = happySpecReduce_1  28# happyReduction_103-happyReduction_103 happy_x_1-	 =  case happyOut27 happy_x_1 of { (HappyWrap27 happy_var_1) -> -	happyIn55-		 (BNFC.Abs.RChar happy_var_1-	)}--happyReduce_104 = happySpecReduce_3  28# happyReduction_104-happyReduction_104 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	happyIn55-		 (BNFC.Abs.RAlts happy_var_2-	)}--happyReduce_105 = happySpecReduce_3  28# happyReduction_105-happyReduction_105 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) -> -	happyIn55-		 (BNFC.Abs.RSeqs happy_var_2-	)}--happyReduce_106 = happySpecReduce_1  28# happyReduction_106-happyReduction_106 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.RDigit-	)--happyReduce_107 = happySpecReduce_1  28# happyReduction_107-happyReduction_107 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.RLetter-	)--happyReduce_108 = happySpecReduce_1  28# happyReduction_108-happyReduction_108 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.RUpper-	)--happyReduce_109 = happySpecReduce_1  28# happyReduction_109-happyReduction_109 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.RLower-	)--happyReduce_110 = happySpecReduce_1  28# happyReduction_110-happyReduction_110 happy_x_1-	 =  happyIn55-		 (BNFC.Abs.RAny-	)--happyReduce_111 = happySpecReduce_3  28# happyReduction_111-happyReduction_111 happy_x_3-	happy_x_2-	happy_x_1-	 =  case happyOut52 happy_x_2 of { (HappyWrap52 happy_var_2) -> -	happyIn55-		 (happy_var_2-	)}--happyNewToken action sts stk [] =-	happyDoAction 45# notHappyAtAll action sts stk []--happyNewToken action sts stk (tk:tks) =-	let cont i = happyDoAction i tk action sts stk tks in-	case tk of {-	PT _ (TS _ 1) -> cont 1#;-	PT _ (TS _ 2) -> cont 2#;-	PT _ (TS _ 3) -> cont 3#;-	PT _ (TS _ 4) -> cont 4#;-	PT _ (TS _ 5) -> cont 5#;-	PT _ (TS _ 6) -> cont 6#;-	PT _ (TS _ 7) -> cont 7#;-	PT _ (TS _ 8) -> cont 8#;-	PT _ (TS _ 9) -> cont 9#;-	PT _ (TS _ 10) -> cont 10#;-	PT _ (TS _ 11) -> cont 11#;-	PT _ (TS _ 12) -> cont 12#;-	PT _ (TS _ 13) -> cont 13#;-	PT _ (TS _ 14) -> cont 14#;-	PT _ (TS _ 15) -> cont 15#;-	PT _ (TS _ 16) -> cont 16#;-	PT _ (TS _ 17) -> cont 17#;-	PT _ (TS _ 18) -> cont 18#;-	PT _ (TS _ 19) -> cont 19#;-	PT _ (TS _ 20) -> cont 20#;-	PT _ (TS _ 21) -> cont 21#;-	PT _ (TS _ 22) -> cont 22#;-	PT _ (TS _ 23) -> cont 23#;-	PT _ (TS _ 24) -> cont 24#;-	PT _ (TS _ 25) -> cont 25#;-	PT _ (TS _ 26) -> cont 26#;-	PT _ (TS _ 27) -> cont 27#;-	PT _ (TS _ 28) -> cont 28#;-	PT _ (TS _ 29) -> cont 29#;-	PT _ (TS _ 30) -> cont 30#;-	PT _ (TS _ 31) -> cont 31#;-	PT _ (TS _ 32) -> cont 32#;-	PT _ (TS _ 33) -> cont 33#;-	PT _ (TS _ 34) -> cont 34#;-	PT _ (TS _ 35) -> cont 35#;-	PT _ (TS _ 36) -> cont 36#;-	PT _ (TS _ 37) -> cont 37#;-	PT _ (TS _ 38) -> cont 38#;-	PT _ (TS _ 39) -> cont 39#;-	PT _ (TC happy_dollar_dollar) -> cont 40#;-	PT _ (TD happy_dollar_dollar) -> cont 41#;-	PT _ (TI happy_dollar_dollar) -> cont 42#;-	PT _ (TL happy_dollar_dollar) -> cont 43#;-	PT _ (T_Identifier _) -> cont 44#;-	_ -> happyError' ((tk:tks), [])-	}+        (24 , happyReduce_24),+        (25 , happyReduce_25),+        (26 , happyReduce_26),+        (27 , happyReduce_27),+        (28 , happyReduce_28),+        (29 , happyReduce_29),+        (30 , happyReduce_30),+        (31 , happyReduce_31),+        (32 , happyReduce_32),+        (33 , happyReduce_33),+        (34 , happyReduce_34),+        (35 , happyReduce_35),+        (36 , happyReduce_36),+        (37 , happyReduce_37),+        (38 , happyReduce_38),+        (39 , happyReduce_39),+        (40 , happyReduce_40),+        (41 , happyReduce_41),+        (42 , happyReduce_42),+        (43 , happyReduce_43),+        (44 , happyReduce_44),+        (45 , happyReduce_45),+        (46 , happyReduce_46),+        (47 , happyReduce_47),+        (48 , happyReduce_48),+        (49 , happyReduce_49),+        (50 , happyReduce_50),+        (51 , happyReduce_51),+        (52 , happyReduce_52),+        (53 , happyReduce_53),+        (54 , happyReduce_54),+        (55 , happyReduce_55),+        (56 , happyReduce_56),+        (57 , happyReduce_57),+        (58 , happyReduce_58),+        (59 , happyReduce_59),+        (60 , happyReduce_60),+        (61 , happyReduce_61),+        (62 , happyReduce_62),+        (63 , happyReduce_63),+        (64 , happyReduce_64),+        (65 , happyReduce_65),+        (66 , happyReduce_66),+        (67 , happyReduce_67),+        (68 , happyReduce_68),+        (69 , happyReduce_69),+        (70 , happyReduce_70),+        (71 , happyReduce_71),+        (72 , happyReduce_72),+        (73 , happyReduce_73),+        (74 , happyReduce_74),+        (75 , happyReduce_75),+        (76 , happyReduce_76),+        (77 , happyReduce_77),+        (78 , happyReduce_78),+        (79 , happyReduce_79),+        (80 , happyReduce_80),+        (81 , happyReduce_81),+        (82 , happyReduce_82),+        (83 , happyReduce_83),+        (84 , happyReduce_84),+        (85 , happyReduce_85),+        (86 , happyReduce_86),+        (87 , happyReduce_87),+        (88 , happyReduce_88),+        (89 , happyReduce_89),+        (90 , happyReduce_90),+        (91 , happyReduce_91),+        (92 , happyReduce_92),+        (93 , happyReduce_93),+        (94 , happyReduce_94),+        (95 , happyReduce_95),+        (96 , happyReduce_96),+        (97 , happyReduce_97),+        (98 , happyReduce_98),+        (99 , happyReduce_99),+        (100 , happyReduce_100),+        (101 , happyReduce_101),+        (102 , happyReduce_102),+        (103 , happyReduce_103),+        (104 , happyReduce_104),+        (105 , happyReduce_105),+        (106 , happyReduce_106),+        (107 , happyReduce_107),+        (108 , happyReduce_108),+        (109 , happyReduce_109),+        (110 , happyReduce_110),+        (111 , happyReduce_111)+        ]++happy_n_terms = 46 :: Prelude.Int+happy_n_nonterms = 29 :: Prelude.Int++happyReduce_24 = happySpecReduce_1  0# happyReduction_24+happyReduction_24 happy_x_1+         =  case happyOutTok happy_x_1 of { (PT _ (TC happy_var_1)) ->+        happyIn27+                 ((read happy_var_1) :: Char+        )}++happyReduce_25 = happySpecReduce_1  1# happyReduction_25+happyReduction_25 happy_x_1+         =  case happyOutTok happy_x_1 of { (PT _ (TD happy_var_1)) ->+        happyIn28+                 ((read happy_var_1) :: Double+        )}++happyReduce_26 = happySpecReduce_1  2# happyReduction_26+happyReduction_26 happy_x_1+         =  case happyOutTok happy_x_1 of { (PT _ (TI happy_var_1)) ->+        happyIn29+                 ((read happy_var_1) :: Integer+        )}++happyReduce_27 = happySpecReduce_1  3# happyReduction_27+happyReduction_27 happy_x_1+         =  case happyOutTok happy_x_1 of { (PT _ (TL happy_var_1)) ->+        happyIn30+                 (happy_var_1+        )}++happyReduce_28 = happySpecReduce_1  4# happyReduction_28+happyReduction_28 happy_x_1+         =  case happyOutTok happy_x_1 of { happy_var_1 ->+        happyIn31+                 (BNFC.Abs.Identifier (mkPosToken happy_var_1)+        )}++happyReduce_29 = happySpecReduce_1  5# happyReduction_29+happyReduction_29 happy_x_1+         =  case happyOut33 happy_x_1 of { (HappyWrap33 happy_var_1) ->+        happyIn32+                 (BNFC.Abs.Grammar happy_var_1+        )}++happyReduce_30 = happySpecReduce_0  6# happyReduction_30+happyReduction_30  =  happyIn33+                 ([]+        )++happyReduce_31 = happySpecReduce_1  6# happyReduction_31+happyReduction_31 happy_x_1+         =  case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) ->+        happyIn33+                 ((:[]) happy_var_1+        )}++happyReduce_32 = happySpecReduce_3  6# happyReduction_32+happyReduction_32 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut34 happy_x_1 of { (HappyWrap34 happy_var_1) ->+        case happyOut33 happy_x_3 of { (HappyWrap33 happy_var_3) ->+        happyIn33+                 ((:) happy_var_1 happy_var_3+        )}}++happyReduce_33 = happySpecReduce_2  6# happyReduction_33+happyReduction_33 happy_x_2+        happy_x_1+         =  case happyOut33 happy_x_2 of { (HappyWrap33 happy_var_2) ->+        happyIn33+                 (happy_var_2+        )}++happyReduce_34 = happyReduce 5# 7# happyReduction_34+happyReduction_34 (happy_x_5 `HappyStk`+        happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut39 happy_x_1 of { (HappyWrap39 happy_var_1) ->+        case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) ->+        case happyOut36 happy_x_5 of { (HappyWrap36 happy_var_5) ->+        happyIn34+                 (BNFC.Abs.Rule happy_var_1 happy_var_3 happy_var_5+        ) `HappyStk` happyRest}}}++happyReduce_35 = happySpecReduce_2  7# happyReduction_35+happyReduction_35 happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        happyIn34+                 (BNFC.Abs.Comment happy_var_2+        )}++happyReduce_36 = happySpecReduce_3  7# happyReduction_36+happyReduction_36 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        case happyOut30 happy_x_3 of { (HappyWrap30 happy_var_3) ->+        happyIn34+                 (BNFC.Abs.Comments happy_var_2 happy_var_3+        )}}++happyReduce_37 = happyReduce 6# 7# happyReduction_37+happyReduction_37 (happy_x_6 `HappyStk`+        happy_x_5 `HappyStk`+        happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut39 happy_x_2 of { (HappyWrap39 happy_var_2) ->+        case happyOut37 happy_x_4 of { (HappyWrap37 happy_var_4) ->+        case happyOut36 happy_x_6 of { (HappyWrap36 happy_var_6) ->+        happyIn34+                 (BNFC.Abs.Internal happy_var_2 happy_var_4 happy_var_6+        ) `HappyStk` happyRest}}}++happyReduce_38 = happySpecReduce_3  7# happyReduction_38+happyReduction_38 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) ->+        case happyOut52 happy_x_3 of { (HappyWrap52 happy_var_3) ->+        happyIn34+                 (BNFC.Abs.Token happy_var_2 happy_var_3+        )}}++happyReduce_39 = happyReduce 4# 7# happyReduction_39+happyReduction_39 (happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut31 happy_x_3 of { (HappyWrap31 happy_var_3) ->+        case happyOut52 happy_x_4 of { (HappyWrap52 happy_var_4) ->+        happyIn34+                 (BNFC.Abs.PosToken happy_var_3 happy_var_4+        ) `HappyStk` happyRest}}++happyReduce_40 = happySpecReduce_2  7# happyReduction_40+happyReduction_40 happy_x_2+        happy_x_1+         =  case happyOut38 happy_x_2 of { (HappyWrap38 happy_var_2) ->+        happyIn34+                 (BNFC.Abs.Entryp happy_var_2+        )}++happyReduce_41 = happyReduce 4# 7# happyReduction_41+happyReduction_41 (happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut51 happy_x_2 of { (HappyWrap51 happy_var_2) ->+        case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) ->+        case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) ->+        happyIn34+                 (BNFC.Abs.Separator happy_var_2 happy_var_3 happy_var_4+        ) `HappyStk` happyRest}}}++happyReduce_42 = happyReduce 4# 7# happyReduction_42+happyReduction_42 (happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut51 happy_x_2 of { (HappyWrap51 happy_var_2) ->+        case happyOut37 happy_x_3 of { (HappyWrap37 happy_var_3) ->+        case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) ->+        happyIn34+                 (BNFC.Abs.Terminator happy_var_2 happy_var_3 happy_var_4+        ) `HappyStk` happyRest}}}++happyReduce_43 = happyReduce 6# 7# happyReduction_43+happyReduction_43 (happy_x_6 `HappyStk`+        happy_x_5 `HappyStk`+        happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut37 happy_x_2 of { (HappyWrap37 happy_var_2) ->+        case happyOut30 happy_x_3 of { (HappyWrap30 happy_var_3) ->+        case happyOut30 happy_x_4 of { (HappyWrap30 happy_var_4) ->+        case happyOut42 happy_x_5 of { (HappyWrap42 happy_var_5) ->+        case happyOut51 happy_x_6 of { (HappyWrap51 happy_var_6) ->+        happyIn34+                 (BNFC.Abs.Delimiters happy_var_2 happy_var_3 happy_var_4 happy_var_5 happy_var_6+        ) `HappyStk` happyRest}}}}}++happyReduce_44 = happySpecReduce_3  7# happyReduction_44+happyReduction_44 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) ->+        case happyOut29 happy_x_3 of { (HappyWrap29 happy_var_3) ->+        happyIn34+                 (BNFC.Abs.Coercions happy_var_2 happy_var_3+        )}}++happyReduce_45 = happyReduce 4# 7# happyReduction_45+happyReduction_45 (happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) ->+        case happyOut50 happy_x_4 of { (HappyWrap50 happy_var_4) ->+        happyIn34+                 (BNFC.Abs.Rules happy_var_2 happy_var_4+        ) `HappyStk` happyRest}}++happyReduce_46 = happyReduce 5# 7# happyReduction_46+happyReduction_46 (happy_x_5 `HappyStk`+        happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = case happyOut31 happy_x_2 of { (HappyWrap31 happy_var_2) ->+        case happyOut41 happy_x_3 of { (HappyWrap41 happy_var_3) ->+        case happyOut44 happy_x_5 of { (HappyWrap44 happy_var_5) ->+        happyIn34+                 (BNFC.Abs.Function happy_var_2 happy_var_3 happy_var_5+        ) `HappyStk` happyRest}}}++happyReduce_47 = happySpecReduce_2  7# happyReduction_47+happyReduction_47 happy_x_2+        happy_x_1+         =  case happyOut43 happy_x_2 of { (HappyWrap43 happy_var_2) ->+        happyIn34+                 (BNFC.Abs.Layout happy_var_2+        )}++happyReduce_48 = happySpecReduce_3  7# happyReduction_48+happyReduction_48 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut43 happy_x_3 of { (HappyWrap43 happy_var_3) ->+        happyIn34+                 (BNFC.Abs.LayoutStop happy_var_3+        )}++happyReduce_49 = happySpecReduce_2  7# happyReduction_49+happyReduction_49 happy_x_2+        happy_x_1+         =  happyIn34+                 (BNFC.Abs.LayoutTop+        )++happyReduce_50 = happySpecReduce_1  8# happyReduction_50+happyReduction_50 happy_x_1+         =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) ->+        happyIn35+                 (BNFC.Abs.Terminal happy_var_1+        )}++happyReduce_51 = happySpecReduce_1  8# happyReduction_51+happyReduction_51 happy_x_1+         =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) ->+        happyIn35+                 (BNFC.Abs.NTerminal happy_var_1+        )}++happyReduce_52 = happySpecReduce_0  9# happyReduction_52+happyReduction_52  =  happyIn36+                 ([]+        )++happyReduce_53 = happySpecReduce_2  9# happyReduction_53+happyReduction_53 happy_x_2+        happy_x_1+         =  case happyOut35 happy_x_1 of { (HappyWrap35 happy_var_1) ->+        case happyOut36 happy_x_2 of { (HappyWrap36 happy_var_2) ->+        happyIn36+                 ((:) happy_var_1 happy_var_2+        )}}++happyReduce_54 = happySpecReduce_3  10# happyReduction_54+happyReduction_54 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut37 happy_x_2 of { (HappyWrap37 happy_var_2) ->+        happyIn37+                 (BNFC.Abs.ListCat happy_var_2+        )}++happyReduce_55 = happySpecReduce_1  10# happyReduction_55+happyReduction_55 happy_x_1+         =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) ->+        happyIn37+                 (BNFC.Abs.IdCat happy_var_1+        )}++happyReduce_56 = happySpecReduce_0  11# happyReduction_56+happyReduction_56  =  happyIn38+                 ([]+        )++happyReduce_57 = happySpecReduce_1  11# happyReduction_57+happyReduction_57 happy_x_1+         =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) ->+        happyIn38+                 ((:[]) happy_var_1+        )}++happyReduce_58 = happySpecReduce_3  11# happyReduction_58+happyReduction_58 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut37 happy_x_1 of { (HappyWrap37 happy_var_1) ->+        case happyOut38 happy_x_3 of { (HappyWrap38 happy_var_3) ->+        happyIn38+                 ((:) happy_var_1 happy_var_3+        )}}++happyReduce_59 = happySpecReduce_1  12# happyReduction_59+happyReduction_59 happy_x_1+         =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) ->+        happyIn39+                 (BNFC.Abs.Id happy_var_1+        )}++happyReduce_60 = happySpecReduce_1  12# happyReduction_60+happyReduction_60 happy_x_1+         =  happyIn39+                 (BNFC.Abs.Wild+        )++happyReduce_61 = happySpecReduce_2  12# happyReduction_61+happyReduction_61 happy_x_2+        happy_x_1+         =  happyIn39+                 (BNFC.Abs.ListE+        )++happyReduce_62 = happySpecReduce_3  12# happyReduction_62+happyReduction_62 happy_x_3+        happy_x_2+        happy_x_1+         =  happyIn39+                 (BNFC.Abs.ListCons+        )++happyReduce_63 = happyReduce 5# 12# happyReduction_63+happyReduction_63 (happy_x_5 `HappyStk`+        happy_x_4 `HappyStk`+        happy_x_3 `HappyStk`+        happy_x_2 `HappyStk`+        happy_x_1 `HappyStk`+        happyRest)+         = happyIn39+                 (BNFC.Abs.ListOne+        ) `HappyStk` happyRest++happyReduce_64 = happySpecReduce_1  13# happyReduction_64+happyReduction_64 happy_x_1+         =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) ->+        happyIn40+                 (BNFC.Abs.Arg happy_var_1+        )}++happyReduce_65 = happySpecReduce_0  14# happyReduction_65+happyReduction_65  =  happyIn41+                 ([]+        )++happyReduce_66 = happySpecReduce_2  14# happyReduction_66+happyReduction_66 happy_x_2+        happy_x_1+         =  case happyOut40 happy_x_1 of { (HappyWrap40 happy_var_1) ->+        case happyOut41 happy_x_2 of { (HappyWrap41 happy_var_2) ->+        happyIn41+                 ((:) happy_var_1 happy_var_2+        )}}++happyReduce_67 = happySpecReduce_0  15# happyReduction_67+happyReduction_67  =  happyIn42+                 (BNFC.Abs.SepNone+        )++happyReduce_68 = happySpecReduce_2  15# happyReduction_68+happyReduction_68 happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        happyIn42+                 (BNFC.Abs.SepTerm happy_var_2+        )}++happyReduce_69 = happySpecReduce_2  15# happyReduction_69+happyReduction_69 happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        happyIn42+                 (BNFC.Abs.SepSepar happy_var_2+        )}++happyReduce_70 = happySpecReduce_1  16# happyReduction_70+happyReduction_70 happy_x_1+         =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) ->+        happyIn43+                 ((:[]) happy_var_1+        )}++happyReduce_71 = happySpecReduce_3  16# happyReduction_71+happyReduction_71 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) ->+        case happyOut43 happy_x_3 of { (HappyWrap43 happy_var_3) ->+        happyIn43+                 ((:) happy_var_1 happy_var_3+        )}}++happyReduce_72 = happySpecReduce_3  17# happyReduction_72+happyReduction_72 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut45 happy_x_1 of { (HappyWrap45 happy_var_1) ->+        case happyOut44 happy_x_3 of { (HappyWrap44 happy_var_3) ->+        happyIn44+                 (BNFC.Abs.Cons happy_var_1 happy_var_3+        )}}++happyReduce_73 = happySpecReduce_1  17# happyReduction_73+happyReduction_73 happy_x_1+         =  case happyOut45 happy_x_1 of { (HappyWrap45 happy_var_1) ->+        happyIn44+                 (happy_var_1+        )}++happyReduce_74 = happySpecReduce_2  18# happyReduction_74+happyReduction_74 happy_x_2+        happy_x_1+         =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) ->+        case happyOut48 happy_x_2 of { (HappyWrap48 happy_var_2) ->+        happyIn45+                 (BNFC.Abs.App happy_var_1 happy_var_2+        )}}++happyReduce_75 = happySpecReduce_1  18# happyReduction_75+happyReduction_75 happy_x_1+         =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) ->+        happyIn45+                 (happy_var_1+        )}++happyReduce_76 = happySpecReduce_1  19# happyReduction_76+happyReduction_76 happy_x_1+         =  case happyOut31 happy_x_1 of { (HappyWrap31 happy_var_1) ->+        happyIn46+                 (BNFC.Abs.Var happy_var_1+        )}++happyReduce_77 = happySpecReduce_1  19# happyReduction_77+happyReduction_77 happy_x_1+         =  case happyOut29 happy_x_1 of { (HappyWrap29 happy_var_1) ->+        happyIn46+                 (BNFC.Abs.LitInt happy_var_1+        )}++happyReduce_78 = happySpecReduce_1  19# happyReduction_78+happyReduction_78 happy_x_1+         =  case happyOut27 happy_x_1 of { (HappyWrap27 happy_var_1) ->+        happyIn46+                 (BNFC.Abs.LitChar happy_var_1+        )}++happyReduce_79 = happySpecReduce_1  19# happyReduction_79+happyReduction_79 happy_x_1+         =  case happyOut30 happy_x_1 of { (HappyWrap30 happy_var_1) ->+        happyIn46+                 (BNFC.Abs.LitString happy_var_1+        )}++happyReduce_80 = happySpecReduce_1  19# happyReduction_80+happyReduction_80 happy_x_1+         =  case happyOut28 happy_x_1 of { (HappyWrap28 happy_var_1) ->+        happyIn46+                 (BNFC.Abs.LitDouble happy_var_1+        )}++happyReduce_81 = happySpecReduce_3  19# happyReduction_81+happyReduction_81 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut47 happy_x_2 of { (HappyWrap47 happy_var_2) ->+        happyIn46+                 (BNFC.Abs.List happy_var_2+        )}++happyReduce_82 = happySpecReduce_3  19# happyReduction_82+happyReduction_82 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut44 happy_x_2 of { (HappyWrap44 happy_var_2) ->+        happyIn46+                 (happy_var_2+        )}++happyReduce_83 = happySpecReduce_0  20# happyReduction_83+happyReduction_83  =  happyIn47+                 ([]+        )++happyReduce_84 = happySpecReduce_1  20# happyReduction_84+happyReduction_84 happy_x_1+         =  case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) ->+        happyIn47+                 ((:[]) happy_var_1+        )}++happyReduce_85 = happySpecReduce_3  20# happyReduction_85+happyReduction_85 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut44 happy_x_1 of { (HappyWrap44 happy_var_1) ->+        case happyOut47 happy_x_3 of { (HappyWrap47 happy_var_3) ->+        happyIn47+                 ((:) happy_var_1 happy_var_3+        )}}++happyReduce_86 = happySpecReduce_1  21# happyReduction_86+happyReduction_86 happy_x_1+         =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) ->+        happyIn48+                 ((:[]) happy_var_1+        )}++happyReduce_87 = happySpecReduce_2  21# happyReduction_87+happyReduction_87 happy_x_2+        happy_x_1+         =  case happyOut46 happy_x_1 of { (HappyWrap46 happy_var_1) ->+        case happyOut48 happy_x_2 of { (HappyWrap48 happy_var_2) ->+        happyIn48+                 ((:) happy_var_1 happy_var_2+        )}}++happyReduce_88 = happySpecReduce_1  22# happyReduction_88+happyReduction_88 happy_x_1+         =  case happyOut36 happy_x_1 of { (HappyWrap36 happy_var_1) ->+        happyIn49+                 (BNFC.Abs.RHS happy_var_1+        )}++happyReduce_89 = happySpecReduce_1  23# happyReduction_89+happyReduction_89 happy_x_1+         =  case happyOut49 happy_x_1 of { (HappyWrap49 happy_var_1) ->+        happyIn50+                 ((:[]) happy_var_1+        )}++happyReduce_90 = happySpecReduce_3  23# happyReduction_90+happyReduction_90 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut49 happy_x_1 of { (HappyWrap49 happy_var_1) ->+        case happyOut50 happy_x_3 of { (HappyWrap50 happy_var_3) ->+        happyIn50+                 ((:) happy_var_1 happy_var_3+        )}}++happyReduce_91 = happySpecReduce_1  24# happyReduction_91+happyReduction_91 happy_x_1+         =  happyIn51+                 (BNFC.Abs.MNonempty+        )++happyReduce_92 = happySpecReduce_0  24# happyReduction_92+happyReduction_92  =  happyIn51+                 (BNFC.Abs.MEmpty+        )++happyReduce_93 = happySpecReduce_3  25# happyReduction_93+happyReduction_93 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut52 happy_x_1 of { (HappyWrap52 happy_var_1) ->+        case happyOut53 happy_x_3 of { (HappyWrap53 happy_var_3) ->+        happyIn52+                 (BNFC.Abs.RAlt happy_var_1 happy_var_3+        )}}++happyReduce_94 = happySpecReduce_1  25# happyReduction_94+happyReduction_94 happy_x_1+         =  case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) ->+        happyIn52+                 (happy_var_1+        )}++happyReduce_95 = happySpecReduce_3  26# happyReduction_95+happyReduction_95 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut53 happy_x_1 of { (HappyWrap53 happy_var_1) ->+        case happyOut54 happy_x_3 of { (HappyWrap54 happy_var_3) ->+        happyIn53+                 (BNFC.Abs.RMinus happy_var_1 happy_var_3+        )}}++happyReduce_96 = happySpecReduce_1  26# happyReduction_96+happyReduction_96 happy_x_1+         =  case happyOut54 happy_x_1 of { (HappyWrap54 happy_var_1) ->+        happyIn53+                 (happy_var_1+        )}++happyReduce_97 = happySpecReduce_2  27# happyReduction_97+happyReduction_97 happy_x_2+        happy_x_1+         =  case happyOut54 happy_x_1 of { (HappyWrap54 happy_var_1) ->+        case happyOut55 happy_x_2 of { (HappyWrap55 happy_var_2) ->+        happyIn54+                 (BNFC.Abs.RSeq happy_var_1 happy_var_2+        )}}++happyReduce_98 = happySpecReduce_1  27# happyReduction_98+happyReduction_98 happy_x_1+         =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) ->+        happyIn54+                 (happy_var_1+        )}++happyReduce_99 = happySpecReduce_2  28# happyReduction_99+happyReduction_99 happy_x_2+        happy_x_1+         =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) ->+        happyIn55+                 (BNFC.Abs.RStar happy_var_1+        )}++happyReduce_100 = happySpecReduce_2  28# happyReduction_100+happyReduction_100 happy_x_2+        happy_x_1+         =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) ->+        happyIn55+                 (BNFC.Abs.RPlus happy_var_1+        )}++happyReduce_101 = happySpecReduce_2  28# happyReduction_101+happyReduction_101 happy_x_2+        happy_x_1+         =  case happyOut55 happy_x_1 of { (HappyWrap55 happy_var_1) ->+        happyIn55+                 (BNFC.Abs.ROpt happy_var_1+        )}++happyReduce_102 = happySpecReduce_1  28# happyReduction_102+happyReduction_102 happy_x_1+         =  happyIn55+                 (BNFC.Abs.REps+        )++happyReduce_103 = happySpecReduce_1  28# happyReduction_103+happyReduction_103 happy_x_1+         =  case happyOut27 happy_x_1 of { (HappyWrap27 happy_var_1) ->+        happyIn55+                 (BNFC.Abs.RChar happy_var_1+        )}++happyReduce_104 = happySpecReduce_3  28# happyReduction_104+happyReduction_104 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        happyIn55+                 (BNFC.Abs.RAlts happy_var_2+        )}++happyReduce_105 = happySpecReduce_3  28# happyReduction_105+happyReduction_105 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut30 happy_x_2 of { (HappyWrap30 happy_var_2) ->+        happyIn55+                 (BNFC.Abs.RSeqs happy_var_2+        )}++happyReduce_106 = happySpecReduce_1  28# happyReduction_106+happyReduction_106 happy_x_1+         =  happyIn55+                 (BNFC.Abs.RDigit+        )++happyReduce_107 = happySpecReduce_1  28# happyReduction_107+happyReduction_107 happy_x_1+         =  happyIn55+                 (BNFC.Abs.RLetter+        )++happyReduce_108 = happySpecReduce_1  28# happyReduction_108+happyReduction_108 happy_x_1+         =  happyIn55+                 (BNFC.Abs.RUpper+        )++happyReduce_109 = happySpecReduce_1  28# happyReduction_109+happyReduction_109 happy_x_1+         =  happyIn55+                 (BNFC.Abs.RLower+        )++happyReduce_110 = happySpecReduce_1  28# happyReduction_110+happyReduction_110 happy_x_1+         =  happyIn55+                 (BNFC.Abs.RAny+        )++happyReduce_111 = happySpecReduce_3  28# happyReduction_111+happyReduction_111 happy_x_3+        happy_x_2+        happy_x_1+         =  case happyOut52 happy_x_2 of { (HappyWrap52 happy_var_2) ->+        happyIn55+                 (happy_var_2+        )}++happyNewToken action sts stk [] =+        happyDoAction 45# notHappyAtAll action sts stk []++happyNewToken action sts stk (tk:tks) =+        let cont i = happyDoAction i tk action sts stk tks in+        case tk of {+        PT _ (TS _ 1) -> cont 1#;+        PT _ (TS _ 2) -> cont 2#;+        PT _ (TS _ 3) -> cont 3#;+        PT _ (TS _ 4) -> cont 4#;+        PT _ (TS _ 5) -> cont 5#;+        PT _ (TS _ 6) -> cont 6#;+        PT _ (TS _ 7) -> cont 7#;+        PT _ (TS _ 8) -> cont 8#;+        PT _ (TS _ 9) -> cont 9#;+        PT _ (TS _ 10) -> cont 10#;+        PT _ (TS _ 11) -> cont 11#;+        PT _ (TS _ 12) -> cont 12#;+        PT _ (TS _ 13) -> cont 13#;+        PT _ (TS _ 14) -> cont 14#;+        PT _ (TS _ 15) -> cont 15#;+        PT _ (TS _ 16) -> cont 16#;+        PT _ (TS _ 17) -> cont 17#;+        PT _ (TS _ 18) -> cont 18#;+        PT _ (TS _ 19) -> cont 19#;+        PT _ (TS _ 20) -> cont 20#;+        PT _ (TS _ 21) -> cont 21#;+        PT _ (TS _ 22) -> cont 22#;+        PT _ (TS _ 23) -> cont 23#;+        PT _ (TS _ 24) -> cont 24#;+        PT _ (TS _ 25) -> cont 25#;+        PT _ (TS _ 26) -> cont 26#;+        PT _ (TS _ 27) -> cont 27#;+        PT _ (TS _ 28) -> cont 28#;+        PT _ (TS _ 29) -> cont 29#;+        PT _ (TS _ 30) -> cont 30#;+        PT _ (TS _ 31) -> cont 31#;+        PT _ (TS _ 32) -> cont 32#;+        PT _ (TS _ 33) -> cont 33#;+        PT _ (TS _ 34) -> cont 34#;+        PT _ (TS _ 35) -> cont 35#;+        PT _ (TS _ 36) -> cont 36#;+        PT _ (TS _ 37) -> cont 37#;+        PT _ (TS _ 38) -> cont 38#;+        PT _ (TS _ 39) -> cont 39#;+        PT _ (TC happy_dollar_dollar) -> cont 40#;+        PT _ (TD happy_dollar_dollar) -> cont 41#;+        PT _ (TI happy_dollar_dollar) -> cont 42#;+        PT _ (TL happy_dollar_dollar) -> cont 43#;+        PT _ (T_Identifier _) -> cont 44#;+        _ -> happyError' ((tk:tks), [])+        }  happyError_ explist 45# tk tks = happyError' (tks, explist) happyError_ explist _ tk tks = happyError' ((tk:tks), explist)
− stack-7.10.3.yaml
@@ -1,1 +0,0 @@-resolver: lts-6.35
− stack-8.0.2.yaml
@@ -1,1 +0,0 @@-resolver: lts-9.21
− stack-8.10.2.yaml
@@ -1,3 +0,0 @@-resolver: nightly-2020-12-14-compiler: ghc-8.10.2-compiler-check: match-exact
− stack-8.10.3.yaml
@@ -1,3 +0,0 @@-resolver: lts-17.2-compiler: ghc-8.10.3-compiler-check: match-exact
− stack-8.10.4.yaml
@@ -1,3 +0,0 @@-resolver: lts-17.13-compiler: ghc-8.10.4-compiler-check: match-exact
stack-8.10.7.yaml view
@@ -1,3 +1,3 @@-resolver: lts-18.10+resolver: lts-18.28 compiler: ghc-8.10.7 compiler-check: match-exact
− stack-8.6.4.yaml
@@ -1,2 +0,0 @@-resolver: lts-13.19-
− stack-8.8.2.yaml
@@ -1,2 +0,0 @@-resolver: lts-15.3-
− stack-8.8.3.yaml
@@ -1,2 +0,0 @@-resolver: lts-15.8-
stack-8.8.4.yaml view
@@ -1,4 +1,3 @@-resolver: lts-16.2+resolver: lts-16.31 compiler: ghc-8.8.4 compiler-check: match-exact-
− stack-9.0.1.yaml
@@ -1,3 +0,0 @@-resolver: nightly-2022-01-04-compiler: ghc-9.0.1-# compiler-check: match-exact
stack-9.0.2.yaml view
@@ -1,33 +1,3 @@-resolver: nightly-2022-01-27+resolver: lts-19.33 compiler: ghc-9.0.2-# compiler-check: match-exact--# extra-deps:-# - alex-3.2.6-# - cabal-doctest-1.0.8-# - happy-1.20.0-# - string-qq-0.0.4--# # For --test:-# - HUnit-1.6.2.0-# - QuickCheck-2.14.2-# - ansi-terminal-0.11-# - base-compat-0.11.2-# - call-stack-0.4.0-# - clock-0.8.2-# - code-page-0.2.1-# - colour-2.3.5-# - doctest-0.18.1-# - ghc-paths-0.1.0.12@rev:2-# - hspec-2.8.2-# - hspec-core-2.8.2-# - hspec-discover-2.8.2-# - hspec-expectations-0.8.2-# - primitive-0.7.1.0-# - quickcheck-io-0.2.0-# - random-1.2.0-# - setenv-0.1.1.3-# - splitmix-0.1.0.3-# - syb-0.7.2.1-# - temporary-1.3-# - tf-random-0.5+compiler-check: match-exact
− stack-9.2.1.yaml
@@ -1,33 +0,0 @@-resolver: ghc-9.2.1-compiler: ghc-9.2.1-# compiler-check: match-exact--extra-deps:-- alex-3.2.6-- cabal-doctest-1.0.9-- happy-1.20.0-- string-qq-0.0.4--# For --test:-- HUnit-1.6.2.0-- QuickCheck-2.14.2-- ansi-terminal-0.11-- base-compat-0.12.1-- call-stack-0.4.0-- clock-0.8.2-- code-page-0.2.1-- colour-2.3.6-- doctest-0.20.0-- ghc-paths-0.1.0.12@rev:3-- hspec-2.9.4-- hspec-core-2.9.4-- hspec-discover-2.9.4-- hspec-expectations-0.8.2-- primitive-0.7.3.0-- quickcheck-io-0.2.0-- random-1.2.1-- setenv-0.1.1.3-- splitmix-0.1.0.4-- syb-0.7.2.1-- temporary-1.3-- tf-random-0.5
+ stack-9.2.5.yaml view
@@ -0,0 +1,3 @@+resolver: lts-20.4+compiler: ghc-9.2.5+compiler-check: match-exact
+ stack-9.4.3.yaml view
@@ -0,0 +1,3 @@+resolver: nightly-2022-12-12+compiler: ghc-9.4.3+compiler-check: match-exact
− test/doctests.hs
@@ -1,35 +0,0 @@--- | @doctest@ main, from https://hackage.haskell.org/package/cabal-doctest--import Build_doctests      ( flags, pkgs, module_sources )-import System.Environment  ( unsetEnv )-import Test.DocTest        ( doctest )--main :: IO ()-main = do-    -- optionally print arguments-    mapM_ putStrLn . concat $-      [ ["Arguments to doctest"]-      , args-      , [""]-      ]-    fixEnv-    doctest args-  where-    args = flags ++ pkgs ++ module_sources---- | From version 2, Stack sets the GHC_ENVRIONMENT variable, and GHC--- (as invoked by doctest) will pick that up. This is undesirable:--- cabal-doctest passes all the necessary information on the command--- line already, and can lead to ambiguous module errors as GHC will--- load the environment in addition to what cabal-doctest instructs it--- to.------ Hence, cabal-doctest tells GHC to ignore package environments--- altogether on the command line. However, this is only possible--- since GHC 8.2. If you are using cabal-doctest with Stack 2 and--- GHC 8.0 or earlier and seeing ambiguous module errors or other--- mysterious failures, try manually unsetting GHC_ENVIRONMENT before--- invoking doctest.----fixEnv :: IO ()-fixEnv = unsetEnv "GHC_ENVIRONMENT"